mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2026-01-20 21:43:06 +01:00
Move Vehicle::UpdateLandscapeDoorA function
This commit is contained in:
@@ -6371,6 +6371,25 @@ static void AnimateLandscapeDoor(const CoordsXYZ& doorLocation, TrackElement& tr
|
||||
}
|
||||
}
|
||||
|
||||
void Vehicle::UpdateLandscapeDoorA(const int32_t previousTrackHeight) const
|
||||
{
|
||||
const auto* currentRide = GetRide();
|
||||
if (currentRide == nullptr || !currentRide->getRideTypeDescriptor().HasFlag(RtdFlag::hasLandscapeDoors))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
const CoordsXYZ previousTrackLocation = CoordsXYZ(x, y, previousTrackHeight).ToTileStart();
|
||||
if (MapGetTrackElementAtBeforeSurfaceFromRide(previousTrackLocation, ride) != nullptr)
|
||||
return;
|
||||
|
||||
auto* const tileElement = MapGetTrackElementAtBeforeSurfaceFromRide(TrackLocation, ride);
|
||||
if (tileElement != nullptr)
|
||||
{
|
||||
AnimateLandscapeDoor<true>(TrackLocation, *tileElement->AsTrack(), next_vehicle_on_train.IsNull());
|
||||
}
|
||||
}
|
||||
|
||||
void Vehicle::UpdateLandscapeDoorB(const int32_t previousTrackHeight) const
|
||||
{
|
||||
const auto* currentRide = GetRide();
|
||||
@@ -6435,25 +6454,6 @@ void Vehicle::UpdateSceneryDoorBackwards() const
|
||||
AnimateSceneryDoor<true>({ wallCoords, static_cast<Direction>(direction) }, TrackLocation, next_vehicle_on_train.IsNull());
|
||||
}
|
||||
|
||||
void Vehicle::UpdateLandscapeDoorA(const int32_t previousTrackHeight) const
|
||||
{
|
||||
const auto* currentRide = GetRide();
|
||||
if (currentRide == nullptr || !currentRide->getRideTypeDescriptor().HasFlag(RtdFlag::hasLandscapeDoors))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
const CoordsXYZ previousTrackLocation = CoordsXYZ(x, y, previousTrackHeight).ToTileStart();
|
||||
if (MapGetTrackElementAtBeforeSurfaceFromRide(previousTrackLocation, ride) != nullptr)
|
||||
return;
|
||||
|
||||
auto* const tileElement = MapGetTrackElementAtBeforeSurfaceFromRide(TrackLocation, ride);
|
||||
if (tileElement != nullptr)
|
||||
{
|
||||
AnimateLandscapeDoor<true>(TrackLocation, *tileElement->AsTrack(), next_vehicle_on_train.IsNull());
|
||||
}
|
||||
}
|
||||
|
||||
static void vehicle_update_play_water_splash_sound()
|
||||
{
|
||||
if (_vehicleVelocityF64E08 <= kBlockBrakeBaseSpeed)
|
||||
|
||||
@@ -377,8 +377,8 @@ private:
|
||||
void UpdateGoKartAttemptSwitchLanes();
|
||||
void UpdateSceneryDoor() const;
|
||||
void UpdateSceneryDoorBackwards() const;
|
||||
void UpdateLandscapeDoorB(const int32_t previousTrackHeight) const;
|
||||
void UpdateLandscapeDoorA(const int32_t previousTrackHeight) const;
|
||||
void UpdateLandscapeDoorB(const int32_t previousTrackHeight) const;
|
||||
int32_t CalculateRiderBraking() const;
|
||||
uint8_t ChooseBrakeSpeed() const;
|
||||
void PopulateBrakeSpeed(const CoordsXYZ& vehicleTrackLocation, TrackElement& brake);
|
||||
|
||||
Reference in New Issue
Block a user