diff --git a/src/openrct2/ride/RideData.h b/src/openrct2/ride/RideData.h index e53f17c685..42cf4ad0a2 100644 --- a/src/openrct2/ride/RideData.h +++ b/src/openrct2/ride/RideData.h @@ -167,6 +167,7 @@ using RideUpdateMeasurementsSpecialElementsFunc = void (*)(Ride* ride, const tra using MusicTrackOffsetLengthFunc = std::pair (*)(const Ride& ride); using SpecialElementRatingAdjustmentFunc = void (*)(const Ride* ride, int32_t& excitement, int32_t& intensity, int32_t& nausea); +using UpdateRotatingFunction = void (*)(Vehicle& vehicle); enum class RideConstructionWindowContext : uint8_t { Default, @@ -221,6 +222,8 @@ struct RideTypeDescriptor // json name lookup std::string_view Name; + UpdateRotatingFunction UpdateRotating = UpdateRotatingDefault; + LightFXAddLightsMagicVehicleFunction LightFXAddLightsMagicVehicle = nullptr; StartRideMusicFunction StartRideMusic = OpenRCT2::RideAudio::DefaultStartRideMusicChannel; @@ -436,6 +439,7 @@ constexpr const RideTypeDescriptor DummyRTD = SET_FIELD(ColourPreview, { static_cast(SPR_NONE), static_cast(SPR_NONE) }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "invalid"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, nullptr), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/Vehicle.cpp b/src/openrct2/ride/Vehicle.cpp index 926cc4a8ae..fd12a4397d 100644 --- a/src/openrct2/ride/Vehicle.cpp +++ b/src/openrct2/ride/Vehicle.cpp @@ -4830,6 +4830,24 @@ void Vehicle::UpdateSimulatorOperating() var_C0 = 0; } +void UpdateRotatingDefault(Vehicle& vehicle) +{ + vehicle.sub_state = 1; + vehicle.UpdateRotating(); +} + +void UpdateRotatingEnterprise(Vehicle& vehicle) +{ + if (vehicle.sub_state == 2) + { + vehicle.SetState(Vehicle::Status::Arriving); + vehicle.var_C0 = 0; + return; + } + + UpdateRotatingDefault(vehicle); +} + /** * * rct2: 0x006D92FF @@ -4910,15 +4928,8 @@ void Vehicle::UpdateRotating() } } - if (curRide->type == RIDE_TYPE_ENTERPRISE && sub_state == 2) - { - SetState(Vehicle::Status::Arriving); - var_C0 = 0; - return; - } - - sub_state = 1; - UpdateRotating(); + const auto& rtd = GetRideTypeDescriptor(curRide->type); + rtd.UpdateRotating(*this); } /** diff --git a/src/openrct2/ride/Vehicle.h b/src/openrct2/ride/Vehicle.h index 91bdf5fed2..9f375850a1 100644 --- a/src/openrct2/ride/Vehicle.h +++ b/src/openrct2/ride/Vehicle.h @@ -272,6 +272,9 @@ struct Vehicle : EntityBase void Serialise(DataSerialiser& stream); void Paint(paint_session& session, int32_t imageDirection) const; + friend void UpdateRotatingDefault(Vehicle& vehicle); + friend void UpdateRotatingEnterprise(Vehicle& vehicle); + private: bool SoundCanPlay() const; uint16_t GetSoundPriority() const; @@ -373,6 +376,9 @@ private: }; static_assert(sizeof(Vehicle) <= 512); +void UpdateRotatingDefault(Vehicle& vehicle); +void UpdateRotatingEnterprise(Vehicle& vehicle); + struct train_ref { Vehicle* head; diff --git a/src/openrct2/ride/coaster/meta/MineTrainCoaster.h b/src/openrct2/ride/coaster/meta/MineTrainCoaster.h index f4c951de28..2981fc7703 100644 --- a/src/openrct2/ride/coaster/meta/MineTrainCoaster.h +++ b/src/openrct2/ride/coaster/meta/MineTrainCoaster.h @@ -53,6 +53,7 @@ constexpr const RideTypeDescriptor MineTrainCoasterRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_MINE_TRAIN_COASTER_TRACK, SPR_RIDE_DESIGN_PREVIEW_MINE_TRAIN_COASTER_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "mine_train_rc"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, LightFxAddLightsMagicVehicle_MineTrainCoaster), }; // clang-format on diff --git a/src/openrct2/ride/coaster/meta/WaterCoaster.h b/src/openrct2/ride/coaster/meta/WaterCoaster.h index 8a1b9ad579..105c3f14df 100644 --- a/src/openrct2/ride/coaster/meta/WaterCoaster.h +++ b/src/openrct2/ride/coaster/meta/WaterCoaster.h @@ -54,6 +54,7 @@ constexpr const RideTypeDescriptor WaterCoasterRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_WATER_COASTER_TRACK, SPR_RIDE_DESIGN_PREVIEW_WATER_COASTER_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "water_coaster"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, LightFxAddLightsMagicVehicle_BoatHire), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/gentle/meta/CarRide.h b/src/openrct2/ride/gentle/meta/CarRide.h index 84333d8f5e..c6deaa64a8 100644 --- a/src/openrct2/ride/gentle/meta/CarRide.h +++ b/src/openrct2/ride/gentle/meta/CarRide.h @@ -58,6 +58,7 @@ constexpr const RideTypeDescriptor CarRideRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_CAR_RIDE_TRACK, SPR_RIDE_DESIGN_PREVIEW_CAR_RIDE_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "car_ride"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, LightFxAddLightsMagicVehicle_BoatHire), }; // clang-format on diff --git a/src/openrct2/ride/gentle/meta/Circus.h b/src/openrct2/ride/gentle/meta/Circus.h index ecfbeee270..5e69624ab8 100644 --- a/src/openrct2/ride/gentle/meta/Circus.h +++ b/src/openrct2/ride/gentle/meta/Circus.h @@ -50,6 +50,7 @@ constexpr const RideTypeDescriptor CircusRTD = SET_FIELD(ColourPreview, { 0, 0 }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "circus"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, nullptr), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::CircusStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/gentle/meta/Dodgems.h b/src/openrct2/ride/gentle/meta/Dodgems.h index 0120108d02..b4457d9772 100644 --- a/src/openrct2/ride/gentle/meta/Dodgems.h +++ b/src/openrct2/ride/gentle/meta/Dodgems.h @@ -55,6 +55,7 @@ constexpr const RideTypeDescriptor DodgemsRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_DODGEMS_TRACK, SPR_RIDE_DESIGN_PREVIEW_DODGEMS_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "dodgems"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, LightFxAddLightsMagicVehicle_BoatHire), }; // clang-format on diff --git a/src/openrct2/ride/gentle/meta/GhostTrain.h b/src/openrct2/ride/gentle/meta/GhostTrain.h index ef49e6ab35..2bbc2c10e4 100644 --- a/src/openrct2/ride/gentle/meta/GhostTrain.h +++ b/src/openrct2/ride/gentle/meta/GhostTrain.h @@ -59,6 +59,7 @@ constexpr const RideTypeDescriptor GhostTrainRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_GHOST_TRAIN_TRACK, SPR_RIDE_DESIGN_PREVIEW_GHOST_TRAIN_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "ghost_train"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, LightFxAddLightsMagicVehicle_MineTrainCoaster), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/gentle/meta/Maze.h b/src/openrct2/ride/gentle/meta/Maze.h index 1810acc1c0..5ecc06d315 100644 --- a/src/openrct2/ride/gentle/meta/Maze.h +++ b/src/openrct2/ride/gentle/meta/Maze.h @@ -52,6 +52,7 @@ constexpr const RideTypeDescriptor MazeRTD = SET_FIELD(ColourPreview, { 0, 0 }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "maze"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, nullptr), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Maze), diff --git a/src/openrct2/ride/gentle/meta/MiniGolf.h b/src/openrct2/ride/gentle/meta/MiniGolf.h index 6e35f10903..96a6737628 100644 --- a/src/openrct2/ride/gentle/meta/MiniGolf.h +++ b/src/openrct2/ride/gentle/meta/MiniGolf.h @@ -52,6 +52,7 @@ constexpr const RideTypeDescriptor MiniGolfRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_MINI_GOLF_TRACK, SPR_RIDE_DESIGN_PREVIEW_MINI_GOLF_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "mini_golf"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, nullptr), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/gentle/meta/MiniHelicopters.h b/src/openrct2/ride/gentle/meta/MiniHelicopters.h index c022b6cd06..be58d7914d 100644 --- a/src/openrct2/ride/gentle/meta/MiniHelicopters.h +++ b/src/openrct2/ride/gentle/meta/MiniHelicopters.h @@ -59,6 +59,7 @@ constexpr const RideTypeDescriptor MiniHelicoptersRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_MINI_HELICOPTERS_TRACK, SPR_RIDE_DESIGN_PREVIEW_MINI_HELICOPTERS_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "mini_helicopters"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, LightFxAddLightsMagicVehicle_BoatHire), }; // clang-format on diff --git a/src/openrct2/ride/gentle/meta/MonorailCycles.h b/src/openrct2/ride/gentle/meta/MonorailCycles.h index 9ea6ea2d74..306ff1e7fa 100644 --- a/src/openrct2/ride/gentle/meta/MonorailCycles.h +++ b/src/openrct2/ride/gentle/meta/MonorailCycles.h @@ -55,6 +55,7 @@ constexpr const RideTypeDescriptor MonorailCyclesRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_MONORAIL_CYCLES_TRACK, SPR_RIDE_DESIGN_PREVIEW_MONORAIL_CYCLES_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "monorail_cycles"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, LightFxAddLightsMagicVehicle_BoatHire), }; // clang-format on diff --git a/src/openrct2/ride/gentle/meta/MonsterTrucks.h b/src/openrct2/ride/gentle/meta/MonsterTrucks.h index c93a92591a..d4020f0a94 100644 --- a/src/openrct2/ride/gentle/meta/MonsterTrucks.h +++ b/src/openrct2/ride/gentle/meta/MonsterTrucks.h @@ -57,6 +57,7 @@ constexpr const RideTypeDescriptor MonsterTrucksRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_CAR_RIDE_TRACK, SPR_RIDE_DESIGN_PREVIEW_CAR_RIDE_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "monster_trucks"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, LightFxAddLightsMagicVehicle_BoatHire), }; // clang-format on diff --git a/src/openrct2/ride/gentle/meta/ObservationTower.h b/src/openrct2/ride/gentle/meta/ObservationTower.h index f1567cbb64..d08c8dd965 100644 --- a/src/openrct2/ride/gentle/meta/ObservationTower.h +++ b/src/openrct2/ride/gentle/meta/ObservationTower.h @@ -54,6 +54,7 @@ constexpr const RideTypeDescriptor ObservationTowerRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_OBSERVATION_TOWER_TRACK, SPR_RIDE_DESIGN_PREVIEW_OBSERVATION_TOWER_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "observation_tower"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, LightFxAddLightsMagicVehicle_ObservationTower), }; // clang-format on diff --git a/src/openrct2/ride/gentle/meta/SpiralSlide.h b/src/openrct2/ride/gentle/meta/SpiralSlide.h index 63f283aff8..2552fb6662 100644 --- a/src/openrct2/ride/gentle/meta/SpiralSlide.h +++ b/src/openrct2/ride/gentle/meta/SpiralSlide.h @@ -53,6 +53,7 @@ constexpr const RideTypeDescriptor SpiralSlideRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_SPIRAL_SLIDE_TRACK, 0 }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "spiral_slide"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, nullptr), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/shops/meta/CashMachine.h b/src/openrct2/ride/shops/meta/CashMachine.h index fe6cfcdf60..0ba365551c 100644 --- a/src/openrct2/ride/shops/meta/CashMachine.h +++ b/src/openrct2/ride/shops/meta/CashMachine.h @@ -47,6 +47,7 @@ constexpr const RideTypeDescriptor CashMachineRTD = SET_FIELD(ColourPreview, { 0, 0 }), SET_FIELD(ColourKey, RideColourKey::CashMachine), SET_FIELD(Name, "cash_machine"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, nullptr), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/shops/meta/DrinkStall.h b/src/openrct2/ride/shops/meta/DrinkStall.h index 60b90e2fef..28776a2ed7 100644 --- a/src/openrct2/ride/shops/meta/DrinkStall.h +++ b/src/openrct2/ride/shops/meta/DrinkStall.h @@ -48,6 +48,7 @@ constexpr const RideTypeDescriptor DrinkStallRTD = SET_FIELD(ColourPreview, { 0, 0 }), SET_FIELD(ColourKey, RideColourKey::Drink), SET_FIELD(Name, "drink_stall"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, nullptr), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/shops/meta/FirstAid.h b/src/openrct2/ride/shops/meta/FirstAid.h index d13a9475a5..39ca301d05 100644 --- a/src/openrct2/ride/shops/meta/FirstAid.h +++ b/src/openrct2/ride/shops/meta/FirstAid.h @@ -48,6 +48,7 @@ constexpr const RideTypeDescriptor FirstAidRTD = SET_FIELD(ColourPreview, { 0, 0 }), SET_FIELD(ColourKey, RideColourKey::FirstAid), SET_FIELD(Name, "first_aid"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, nullptr), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/shops/meta/FoodStall.h b/src/openrct2/ride/shops/meta/FoodStall.h index 1cce82175c..e4a4c4ede4 100644 --- a/src/openrct2/ride/shops/meta/FoodStall.h +++ b/src/openrct2/ride/shops/meta/FoodStall.h @@ -48,6 +48,7 @@ constexpr const RideTypeDescriptor FoodStallRTD = SET_FIELD(ColourPreview, { 0, 0 }), SET_FIELD(ColourKey, RideColourKey::Food), SET_FIELD(Name, "food_stall"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, nullptr), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/shops/meta/InformationKiosk.h b/src/openrct2/ride/shops/meta/InformationKiosk.h index befaed7d58..cbd0ea5786 100644 --- a/src/openrct2/ride/shops/meta/InformationKiosk.h +++ b/src/openrct2/ride/shops/meta/InformationKiosk.h @@ -48,6 +48,7 @@ constexpr const RideTypeDescriptor InformationKioskRTD = SET_FIELD(ColourPreview, { 0, 0 }), SET_FIELD(ColourKey, RideColourKey::InfoKiosk), SET_FIELD(Name, "information_kiosk"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, nullptr), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/shops/meta/Shop.h b/src/openrct2/ride/shops/meta/Shop.h index 315a7a25b2..a169cf116c 100644 --- a/src/openrct2/ride/shops/meta/Shop.h +++ b/src/openrct2/ride/shops/meta/Shop.h @@ -48,6 +48,7 @@ constexpr const RideTypeDescriptor ShopRTD = SET_FIELD(ColourPreview, { 0, 0 }), SET_FIELD(ColourKey, RideColourKey::Shop), SET_FIELD(Name, "shop"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, nullptr), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/shops/meta/Toilets.h b/src/openrct2/ride/shops/meta/Toilets.h index 3e8d65ab48..e79090b211 100644 --- a/src/openrct2/ride/shops/meta/Toilets.h +++ b/src/openrct2/ride/shops/meta/Toilets.h @@ -48,6 +48,7 @@ constexpr const RideTypeDescriptor ToiletsRTD = SET_FIELD(ColourPreview, { 0, 0 }), SET_FIELD(ColourKey, RideColourKey::Toilets), SET_FIELD(Name, "toilets"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, nullptr), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/thrill/meta/Enterprise.h b/src/openrct2/ride/thrill/meta/Enterprise.h index 202c0dc885..0ef5e3cb79 100644 --- a/src/openrct2/ride/thrill/meta/Enterprise.h +++ b/src/openrct2/ride/thrill/meta/Enterprise.h @@ -50,6 +50,7 @@ constexpr const RideTypeDescriptor EnterpriseRTD = SET_FIELD(ColourPreview, { 0, 0 }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "enterprise"), + SET_FIELD(UpdateRotating, UpdateRotatingEnterprise), SET_FIELD(LightFXAddLightsMagicVehicle, nullptr), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/thrill/meta/GoKarts.h b/src/openrct2/ride/thrill/meta/GoKarts.h index f37ad21494..110a6d4c7a 100644 --- a/src/openrct2/ride/thrill/meta/GoKarts.h +++ b/src/openrct2/ride/thrill/meta/GoKarts.h @@ -55,6 +55,7 @@ constexpr const RideTypeDescriptor GoKartsRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_GO_KARTS_TRACK, SPR_RIDE_DESIGN_PREVIEW_GO_KARTS_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "go_karts"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, LightFxAddLightsMagicVehicle_BoatHire), }; // clang-format on diff --git a/src/openrct2/ride/transport/meta/Chairlift.h b/src/openrct2/ride/transport/meta/Chairlift.h index 60a794af1c..3772d456ed 100644 --- a/src/openrct2/ride/transport/meta/Chairlift.h +++ b/src/openrct2/ride/transport/meta/Chairlift.h @@ -56,6 +56,7 @@ constexpr const RideTypeDescriptor ChairliftRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_CHAIRLIFT_TRACK, SPR_RIDE_DESIGN_PREVIEW_CHAIRLIFT_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "chairlift"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, LightFxAddLightsMagicVehicle_ChairLift), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/transport/meta/MiniatureRailway.h b/src/openrct2/ride/transport/meta/MiniatureRailway.h index e64d384da6..adbdb72f4a 100644 --- a/src/openrct2/ride/transport/meta/MiniatureRailway.h +++ b/src/openrct2/ride/transport/meta/MiniatureRailway.h @@ -56,6 +56,7 @@ constexpr const RideTypeDescriptor MiniatureRailwayRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_MINIATURE_RAILWAY_TRACK, SPR_RIDE_DESIGN_PREVIEW_MINIATURE_RAILWAY_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "miniature_railway"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, LightFxAddLightsMagicVehicle_MiniatureRailway), }; // clang-format on diff --git a/src/openrct2/ride/transport/meta/Monorail.h b/src/openrct2/ride/transport/meta/Monorail.h index d85ab9ae6b..46c29dd73d 100644 --- a/src/openrct2/ride/transport/meta/Monorail.h +++ b/src/openrct2/ride/transport/meta/Monorail.h @@ -59,6 +59,7 @@ constexpr const RideTypeDescriptor MonorailRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_MONORAIL_TRACK, SPR_RIDE_DESIGN_PREVIEW_MONORAIL_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "monorail"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, LightFxAddLightsMagicVehicle_Monorail), }; // clang-format on diff --git a/src/openrct2/ride/water/meta/BoatHire.h b/src/openrct2/ride/water/meta/BoatHire.h index 919262d144..4cb5401b7f 100644 --- a/src/openrct2/ride/water/meta/BoatHire.h +++ b/src/openrct2/ride/water/meta/BoatHire.h @@ -55,6 +55,7 @@ constexpr const RideTypeDescriptor BoatHireRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_BOAT_HIRE_TRACK, SPR_RIDE_DESIGN_PREVIEW_BOAT_HIRE_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "boat_hire"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, LightFxAddLightsMagicVehicle_BoatHire), }; // clang-format on diff --git a/src/openrct2/ride/water/meta/LogFlume.h b/src/openrct2/ride/water/meta/LogFlume.h index ec89517808..b9f407ecae 100644 --- a/src/openrct2/ride/water/meta/LogFlume.h +++ b/src/openrct2/ride/water/meta/LogFlume.h @@ -55,6 +55,7 @@ constexpr const RideTypeDescriptor LogFlumeRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_LOG_FLUME_TRACK, SPR_RIDE_DESIGN_PREVIEW_LOG_FLUME_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "log_flume"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, nullptr), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/water/meta/RiverRapids.h b/src/openrct2/ride/water/meta/RiverRapids.h index 37447b78f5..71e9ab4d82 100644 --- a/src/openrct2/ride/water/meta/RiverRapids.h +++ b/src/openrct2/ride/water/meta/RiverRapids.h @@ -55,6 +55,7 @@ constexpr const RideTypeDescriptor RiverRapidsRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_RIVER_RAPIDS_TRACK, SPR_RIDE_DESIGN_PREVIEW_RIVER_RAPIDS_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "river_rapids"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, nullptr), SET_FIELD(StartRideMusic, OpenRCT2::RideAudio::DefaultStartRideMusicChannel), SET_FIELD(DesignCreateMode, TrackDesignCreateMode::Default), diff --git a/src/openrct2/ride/water/meta/SplashBoats.h b/src/openrct2/ride/water/meta/SplashBoats.h index 479fc49963..c6773157b6 100644 --- a/src/openrct2/ride/water/meta/SplashBoats.h +++ b/src/openrct2/ride/water/meta/SplashBoats.h @@ -56,6 +56,7 @@ constexpr const RideTypeDescriptor SplashBoatsRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_SPLASH_BOATS_TRACK, SPR_RIDE_DESIGN_PREVIEW_SPLASH_BOATS_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "splash_boats"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, LightFxAddLightsMagicVehicle_BoatHire), }; // clang-format on diff --git a/src/openrct2/ride/water/meta/SubmarineRide.h b/src/openrct2/ride/water/meta/SubmarineRide.h index a80f36d971..a4a5e0f7d3 100644 --- a/src/openrct2/ride/water/meta/SubmarineRide.h +++ b/src/openrct2/ride/water/meta/SubmarineRide.h @@ -54,6 +54,7 @@ constexpr const RideTypeDescriptor SubmarineRideRTD = SET_FIELD(ColourPreview, { SPR_RIDE_DESIGN_PREVIEW_SUBMARINE_RIDE_TRACK, SPR_RIDE_DESIGN_PREVIEW_SUBMARINE_RIDE_SUPPORTS }), SET_FIELD(ColourKey, RideColourKey::Ride), SET_FIELD(Name, "submarine_ride"), + SET_FIELD(UpdateRotating, UpdateRotatingDefault), SET_FIELD(LightFXAddLightsMagicVehicle, LightFxAddLightsMagicVehicle_BoatHire), }; // clang-format on