diff --git a/src/openrct2-ui/windows/RideConstruction.cpp b/src/openrct2-ui/windows/RideConstruction.cpp index 541cff32382f..ea33c3e88094 100644 --- a/src/openrct2-ui/windows/RideConstruction.cpp +++ b/src/openrct2-ui/windows/RideConstruction.cpp @@ -47,8 +47,8 @@ #include #include -constexpr int8_t kDefaultSpeedIncrement = 2; -constexpr int8_t kDefaultMinimumSpeed = 2; +constexpr int8_t kDefaultSpeedIncrement = 1; +constexpr int8_t kDefaultMinimumSpeed = 1; using namespace OpenRCT2::TrackMetaData; namespace OpenRCT2::Ui::Windows diff --git a/src/openrct2/park/ParkFile.cpp b/src/openrct2/park/ParkFile.cpp index 4e610b5536f0..f63d334d1ce0 100644 --- a/src/openrct2/park/ParkFile.cpp +++ b/src/openrct2/park/ParkFile.cpp @@ -2123,14 +2123,14 @@ namespace OpenRCT2 auto rtd = entity.GetRide()->GetRideTypeDescriptor(); if (trackType == TrackElemType::Booster) { - entity.BoosterAcceleration = rtd.OperatingSettings.BoosterAcceleration; + entity.BoosterAcceleration = rtd.LegacyBoosterSettings.BoosterAcceleration; brakeSpeed = rtd.GetAbsoluteBoosterSpeed(brakeSpeed); } else if ( (trackType == TrackElemType::PoweredLift) - || (trackType == TrackElemType::Flat && entity.GetRide()->type == RIDE_TYPE_REVERSE_FREEFALL_COASTER)) + || (trackType == TrackElemType::Flat && rtd.HasFlag(RIDE_TYPE_FLAG_LSM_BEHAVIOUR_ON_FLAT))) { - entity.BoosterAcceleration = rtd.OperatingSettings.PoweredLiftAcceleration; + entity.BoosterAcceleration = rtd.BoosterSettings.PoweredLiftAcceleration; entity.SetFlag(VehicleFlags::OnPoweredLift); } entity.brake_speed = brakeSpeed * kLegacyBrakeSpeedMultiplier; @@ -2166,7 +2166,6 @@ namespace OpenRCT2 entity.SetFlag(VehicleFlags::Crashed); } } - if (cs.GetMode() == OrcaStream::Mode::READING && os.GetHeader().TargetVersion < BlockBrakeImprovementsVersion) { entity.BlockBrakeSpeed = kRCT2DefaultBlockBrakeSpeed; diff --git a/src/openrct2/rct1/S4Importer.cpp b/src/openrct2/rct1/S4Importer.cpp index 18f61a642e43..d0eb75010838 100644 --- a/src/openrct2/rct1/S4Importer.cpp +++ b/src/openrct2/rct1/S4Importer.cpp @@ -2925,17 +2925,18 @@ namespace RCT1 dst->BlockBrakeSpeed = kRCT2DefaultBlockBrakeSpeed; dst->Flags = src->UpdateFlags; + auto rtd = dst->GetRide()->GetRideTypeDescriptor(); dst->SetFlag(VehicleFlags::LegacyBoosterSpeed); if ((dst->GetTrackType() == TrackElemType::PoweredLift) - || (dst->GetTrackType() == TrackElemType::Flat && ride->type == RIDE_TYPE_REVERSE_FREEFALL_COASTER)) + || (dst->GetTrackType() == TrackElemType::Flat && rtd.HasFlag(RIDE_TYPE_FLAG_LSM_BEHAVIOUR_ON_FLAT))) { - dst->BoosterAcceleration = ride->GetRideTypeDescriptor().OperatingSettings.PoweredLiftAcceleration; + dst->BoosterAcceleration = ride->GetRideTypeDescriptor().BoosterSettings.PoweredLiftAcceleration; dst->SetFlag(VehicleFlags::OnPoweredLift); } else if (dst->GetTrackType() == TrackElemType::Booster) { dst->brake_speed = ride->GetRideTypeDescriptor().GetAbsoluteBoosterSpeed(dst->brake_speed); - dst->BoosterAcceleration = ride->GetRideTypeDescriptor().OperatingSettings.BoosterAcceleration; + dst->BoosterAcceleration = ride->GetRideTypeDescriptor().LegacyBoosterSettings.BoosterAcceleration; } dst->track_progress = src->TrackProgress; dst->vertical_drop_countdown = src->VerticalDropCountdown; diff --git a/src/openrct2/rct2/S6Importer.cpp b/src/openrct2/rct2/S6Importer.cpp index 8e42f2ddc049..26e384b22aef 100644 --- a/src/openrct2/rct2/S6Importer.cpp +++ b/src/openrct2/rct2/S6Importer.cpp @@ -2595,17 +2595,18 @@ namespace RCT2 dst->brake_speed = src->BrakeSpeed * kLegacyBrakeSpeedMultiplier; + auto rtd = GetRideTypeDescriptor(ride.Type); dst->SetFlag(VehicleFlags::LegacyBoosterSpeed); if ((dst->GetTrackType() == TrackElemType::PoweredLift) - || (dst->GetTrackType() == TrackElemType::Flat && ride.Type == RIDE_TYPE_REVERSE_FREEFALL_COASTER)) + || (dst->GetTrackType() == TrackElemType::Flat && rtd.HasFlag(RIDE_TYPE_FLAG_LSM_BEHAVIOUR_ON_FLAT))) { - dst->BoosterAcceleration = GetRideTypeDescriptor(ride.Type).OperatingSettings.PoweredLiftAcceleration; + dst->BoosterAcceleration = GetRideTypeDescriptor(ride.Type).BoosterSettings.PoweredLiftAcceleration; dst->SetFlag(VehicleFlags::OnPoweredLift); } else if (dst->GetTrackType() == TrackElemType::Booster) { dst->brake_speed = GetRideTypeDescriptor(ride.Type).GetAbsoluteBoosterSpeed(dst->brake_speed); - dst->BoosterAcceleration = GetRideTypeDescriptor(ride.Type).OperatingSettings.BoosterAcceleration; + dst->BoosterAcceleration = GetRideTypeDescriptor(ride.Type).LegacyBoosterSettings.BoosterAcceleration; } dst->lost_time_out = src->LostTimeOut;