diff --git a/src/openrct2/ride/Ride.cpp b/src/openrct2/ride/Ride.cpp index 72e301d234..0280f6a545 100644 --- a/src/openrct2/ride/Ride.cpp +++ b/src/openrct2/ride/Ride.cpp @@ -2138,12 +2138,12 @@ static void RideFreeOldMeasurements() numRideMeasurements++; } } - if (numRideMeasurements > MAX_RIDE_MEASUREMENTS && lruRide != nullptr) + if (numRideMeasurements > kMaxRideMeasurements && lruRide != nullptr) { lruRide->measurement = {}; numRideMeasurements--; } - } while (numRideMeasurements > MAX_RIDE_MEASUREMENTS); + } while (numRideMeasurements > kMaxRideMeasurements); } std::pair Ride::GetMeasurement() @@ -4396,11 +4396,11 @@ void IncrementTurnCount1Element(Ride& ride, uint8_t type) default: return; } - uint16_t value = (*turn_count & TURN_MASK_1_ELEMENT) + 1; - *turn_count &= ~TURN_MASK_1_ELEMENT; + uint16_t value = (*turn_count & kTurnMask1Element) + 1; + *turn_count &= ~kTurnMask1Element; - if (value > TURN_MASK_1_ELEMENT) - value = TURN_MASK_1_ELEMENT; + if (value > kTurnMask1Element) + value = kTurnMask1Element; *turn_count |= value; } @@ -4421,11 +4421,11 @@ void IncrementTurnCount2Elements(Ride& ride, uint8_t type) default: return; } - uint16_t value = (*turn_count & TURN_MASK_2_ELEMENTS) + 0x20; - *turn_count &= ~TURN_MASK_2_ELEMENTS; + uint16_t value = (*turn_count & kTurnMask2Elements) + 0x20; + *turn_count &= ~kTurnMask2Elements; - if (value > TURN_MASK_2_ELEMENTS) - value = TURN_MASK_2_ELEMENTS; + if (value > kTurnMask2Elements) + value = kTurnMask2Elements; *turn_count |= value; } @@ -4446,11 +4446,11 @@ void IncrementTurnCount3Elements(Ride& ride, uint8_t type) default: return; } - uint16_t value = (*turn_count & TURN_MASK_3_ELEMENTS) + 0x100; - *turn_count &= ~TURN_MASK_3_ELEMENTS; + uint16_t value = (*turn_count & kTurnMask3Elements) + 0x100; + *turn_count &= ~kTurnMask3Elements; - if (value > TURN_MASK_3_ELEMENTS) - value = TURN_MASK_3_ELEMENTS; + if (value > kTurnMask3Elements) + value = kTurnMask3Elements; *turn_count |= value; } @@ -4470,11 +4470,11 @@ void IncrementTurnCount4PlusElements(Ride& ride, uint8_t type) default: return; } - uint16_t value = (*turn_count & TURN_MASK_4_PLUS_ELEMENTS) + 0x800; - *turn_count &= ~TURN_MASK_4_PLUS_ELEMENTS; + uint16_t value = (*turn_count & kTurnMask4PlusElements) + 0x800; + *turn_count &= ~kTurnMask4PlusElements; - if (value > TURN_MASK_4_PLUS_ELEMENTS) - value = TURN_MASK_4_PLUS_ELEMENTS; + if (value > kTurnMask4PlusElements) + value = kTurnMask4PlusElements; *turn_count |= value; } @@ -4496,7 +4496,7 @@ int32_t GetTurnCount1Element(const Ride& ride, uint8_t type) return 0; } - return (*turn_count) & TURN_MASK_1_ELEMENT; + return (*turn_count) & kTurnMask1Element; } int32_t GetTurnCount2Elements(const Ride& ride, uint8_t type) @@ -4517,7 +4517,7 @@ int32_t GetTurnCount2Elements(const Ride& ride, uint8_t type) return 0; } - return ((*turn_count) & TURN_MASK_2_ELEMENTS) >> 5; + return ((*turn_count) & kTurnMask2Elements) >> 5; } int32_t GetTurnCount3Elements(const Ride& ride, uint8_t type) @@ -4538,7 +4538,7 @@ int32_t GetTurnCount3Elements(const Ride& ride, uint8_t type) return 0; } - return ((*turn_count) & TURN_MASK_3_ELEMENTS) >> 8; + return ((*turn_count) & kTurnMask3Elements) >> 8; } int32_t GetTurnCount4PlusElements(const Ride& ride, uint8_t type) @@ -4556,7 +4556,7 @@ int32_t GetTurnCount4PlusElements(const Ride& ride, uint8_t type) return 0; } - return ((*turn_count) & TURN_MASK_4_PLUS_ELEMENTS) >> 11; + return ((*turn_count) & kTurnMask4PlusElements) >> 11; } bool Ride::HasSpinningTunnel() const @@ -5372,7 +5372,7 @@ static bool CheckForAdjacentStation(const CoordsXYZ& stationCoords, uint8_t dire bool found = false; int32_t adjX = stationCoords.x; int32_t adjY = stationCoords.y; - for (uint32_t i = 0; i <= RIDE_ADJACENCY_CHECK_DISTANCE; i++) + for (uint32_t i = 0; i <= kRideAdjacencyCheckDistance; i++) { adjX += CoordsDirectionDelta[direction].x; adjY += CoordsDirectionDelta[direction].y; diff --git a/src/openrct2/ride/Ride.h b/src/openrct2/ride/Ride.h index 902fce5e98..417754f84c 100644 --- a/src/openrct2/ride/Ride.h +++ b/src/openrct2/ride/Ride.h @@ -40,7 +40,8 @@ struct Vehicle; struct RideObjectEntry; struct ResultWithMessage; -#define RIDE_ADJACENCY_CHECK_DISTANCE 5 +constexpr uint8_t kRideAdjacencyCheckDistance = 5; + constexpr uint8_t TUNE_ID_NULL = 0xFF; constexpr uint16_t const MAX_STATION_LOCATIONS = OpenRCT2::Limits::MaxStationsPerRide * 2; // Entrance and exit per station @@ -902,18 +903,18 @@ enum TRACK_ELEMENT_SET_BRAKE_BOOSTER_SPEED = (1 << 7) }; -#define MAX_RIDE_MEASUREMENTS 8 +constexpr uint8_t kMaxRideMeasurements = 8; constexpr money64 RIDE_VALUE_UNDEFINED = kMoney64Undefined; #define RIDE_INITIAL_RELIABILITY ((100 << 8) | 0xFF) // Upper byte is percentage, lower byte is "decimal". #define STATION_DEPART_FLAG (1 << 7) #define STATION_DEPART_MASK (~STATION_DEPART_FLAG) -#define CURRENT_TURN_COUNT_MASK 0xF800 -#define TURN_MASK_1_ELEMENT 0x001F -#define TURN_MASK_2_ELEMENTS 0x00E0 -#define TURN_MASK_3_ELEMENTS 0x0700 -#define TURN_MASK_4_PLUS_ELEMENTS 0xF800 +constexpr uint16_t kCurrentTurnCountMask = 0xF800; +constexpr uint16_t kTurnMask1Element = 0x001F; +constexpr uint16_t kTurnMask2Elements = 0x00E0; +constexpr uint16_t kTurnMask3Elements = 0x0700; +constexpr uint16_t kTurnMask4PlusElements = 0xF800; constexpr uint32_t CONSTRUCTION_LIFT_HILL_SELECTED = 1 << 0; constexpr uint32_t CONSTRUCTION_INVERTED_TRACK_SELECTED = 1 << 1; diff --git a/src/openrct2/ride/Vehicle.cpp b/src/openrct2/ride/Vehicle.cpp index 4b319427b9..06a6a5442b 100644 --- a/src/openrct2/ride/Vehicle.cpp +++ b/src/openrct2/ride/Vehicle.cpp @@ -1521,12 +1521,12 @@ void Vehicle::UpdateMeasurements() uint32_t testingFlags = curRide->testing_flags; if (testingFlags & RIDE_TESTING_TURN_LEFT && trackFlags & TRACK_ELEM_FLAG_TURN_LEFT) { - // 0x800 as this is masked to CURRENT_TURN_COUNT_MASK + // 0x800 as this is masked to kCurrentTurnCountMask curRide->turn_count_default += 0x800; } else if (testingFlags & RIDE_TESTING_TURN_RIGHT && trackFlags & TRACK_ELEM_FLAG_TURN_RIGHT) { - // 0x800 as this is masked to CURRENT_TURN_COUNT_MASK + // 0x800 as this is masked to kCurrentTurnCountMask curRide->turn_count_default += 0x800; } else if (testingFlags & RIDE_TESTING_TURN_RIGHT || testingFlags & RIDE_TESTING_TURN_LEFT) @@ -1564,7 +1564,7 @@ void Vehicle::UpdateMeasurements() if (trackFlags & TRACK_ELEM_FLAG_TURN_LEFT) { curRide->testing_flags |= RIDE_TESTING_TURN_LEFT; - curRide->turn_count_default &= ~CURRENT_TURN_COUNT_MASK; + curRide->turn_count_default &= ~kCurrentTurnCountMask; if (trackFlags & TRACK_ELEM_FLAG_TURN_BANKED) { @@ -1579,7 +1579,7 @@ void Vehicle::UpdateMeasurements() if (trackFlags & TRACK_ELEM_FLAG_TURN_RIGHT) { curRide->testing_flags |= RIDE_TESTING_TURN_RIGHT; - curRide->turn_count_default &= ~CURRENT_TURN_COUNT_MASK; + curRide->turn_count_default &= ~kCurrentTurnCountMask; if (trackFlags & TRACK_ELEM_FLAG_TURN_BANKED) { @@ -2671,8 +2671,8 @@ static bool ride_station_can_depart_synchronised(const Ride& ride, StationIndex */ int32_t direction = tileElement->GetDirectionWithOffset(1); - int32_t maxCheckDistance = RIDE_ADJACENCY_CHECK_DISTANCE; - int32_t spaceBetween = maxCheckDistance; + constexpr uint8_t maxCheckDistance = kRideAdjacencyCheckDistance; + uint8_t spaceBetween = maxCheckDistance; while (_lastSynchronisedVehicle < &_synchronisedVehicles[SYNCHRONISED_VEHICLE_COUNT - 1]) {