From 9d24655056368e948a7593e6ce43ccf620dcef1b Mon Sep 17 00:00:00 2001 From: Gymnasiast Date: Mon, 10 Aug 2020 21:15:48 +0200 Subject: [PATCH] Convert track_element_is_block_start() to member function --- src/openrct2/ride/Track.cpp | 6 +++--- src/openrct2/ride/Track.h | 1 - src/openrct2/ride/Vehicle.cpp | 4 ++-- src/openrct2/world/TileElement.h | 1 + 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/openrct2/ride/Track.cpp b/src/openrct2/ride/Track.cpp index cbc1ae7b14..85ad8070f7 100644 --- a/src/openrct2/ride/Track.cpp +++ b/src/openrct2/ride/Track.cpp @@ -1085,9 +1085,9 @@ void TrackElement::SetHasChain(bool on) * A beginning of a block can be the end of a station, the end of a lift hill, * or a block brake. */ -bool track_element_is_block_start(TileElement* trackElement) +bool TrackElement::IsBlockStart() const { - switch (trackElement->AsTrack()->GetTrackType()) + switch (GetTrackType()) { case TRACK_ELEM_END_STATION: case TRACK_ELEM_CABLE_LIFT_HILL: @@ -1097,7 +1097,7 @@ bool track_element_is_block_start(TileElement* trackElement) case TRACK_ELEM_60_DEG_UP_TO_FLAT: case TRACK_ELEM_DIAG_25_DEG_UP_TO_FLAT: case TRACK_ELEM_DIAG_60_DEG_UP_TO_FLAT: - if (trackElement->AsTrack()->HasChain()) + if (HasChain()) { return true; } diff --git a/src/openrct2/ride/Track.h b/src/openrct2/ride/Track.h index 0646213ed0..74d11c543f 100644 --- a/src/openrct2/ride/Track.h +++ b/src/openrct2/ride/Track.h @@ -571,7 +571,6 @@ bool track_circuit_iterators_match(const track_circuit_iterator* firstIt, const void track_get_back(CoordsXYE* input, CoordsXYE* output); void track_get_front(CoordsXYE* input, CoordsXYE* output); -bool track_element_is_block_start(TileElement* trackElement); bool track_element_is_covered(int32_t trackElementType); bool track_type_is_station(track_type_t trackType); diff --git a/src/openrct2/ride/Vehicle.cpp b/src/openrct2/ride/Vehicle.cpp index 67b6e06233..b2fdc89606 100644 --- a/src/openrct2/ride/Vehicle.cpp +++ b/src/openrct2/ride/Vehicle.cpp @@ -6750,7 +6750,7 @@ static void block_brakes_open_previous_section(Ride& ride, const CoordsXYZ& vehi return; } } - } while (!track_element_is_block_start(trackBeginEnd.begin_element)); + } while (!(trackBeginEnd.begin_element->AsTrack()->IsBlockStart())); // Get the start of the track block instead of the end location = { trackBeginEnd.begin_x, trackBeginEnd.begin_y, trackBeginEnd.begin_z }; @@ -7917,7 +7917,7 @@ bool Vehicle::UpdateTrackMotionForwardsGetNewTrack(uint16_t trackType, Ride* cur _vehicleMotionTrackFlags |= VEHICLE_UPDATE_MOTION_TRACK_FLAG_11; } - if (track_element_is_block_start(tileElement)) + if (tileElement->AsTrack()->IsBlockStart()) { if (next_vehicle_on_train == SPRITE_INDEX_NULL) { diff --git a/src/openrct2/world/TileElement.h b/src/openrct2/world/TileElement.h index 8c0766a16c..e307bad97a 100644 --- a/src/openrct2/world/TileElement.h +++ b/src/openrct2/world/TileElement.h @@ -376,6 +376,7 @@ public: void SetDoorBState(uint8_t newState); bool IsStation() const; + bool IsBlockStart() const; }; assert_struct_size(TrackElement, 16);