fix ratings not being calculated?

This commit is contained in:
spacek531 2021-01-31 15:16:31 -08:00 committed by Gymnasiast
parent ea6fdc4708
commit 12697e9893
No known key found for this signature in database
GPG Key ID: DBFFF47AB2CA3EDD
2 changed files with 6 additions and 7 deletions

View File

@ -203,7 +203,7 @@ static void ride_ratings_update_state_2()
} }
auto loc = gRideRatingsCalcData.Proximity; auto loc = gRideRatingsCalcData.Proximity;
int32_t trackType = gRideRatingsCalcData.ProximityTrackType; track_type_t trackType = gRideRatingsCalcData.ProximityTrackType;
TileElement* tileElement = map_get_first_element_at(loc); TileElement* tileElement = map_get_first_element_at(loc);
if (tileElement == nullptr) if (tileElement == nullptr)
@ -226,7 +226,7 @@ static void ride_ratings_update_state_2()
continue; continue;
} }
if (trackType == 255 if (trackType == TrackElemType::None
|| (tileElement->AsTrack()->GetSequenceIndex() == 0 && trackType == tileElement->AsTrack()->GetTrackType())) || (tileElement->AsTrack()->GetSequenceIndex() == 0 && trackType == tileElement->AsTrack()->GetTrackType()))
{ {
if (trackType == TrackElemType::EndStation) if (trackType == TrackElemType::EndStation)
@ -309,7 +309,7 @@ static void ride_ratings_update_state_5()
} }
auto loc = gRideRatingsCalcData.Proximity; auto loc = gRideRatingsCalcData.Proximity;
int32_t trackType = gRideRatingsCalcData.ProximityTrackType; track_type_t trackType = gRideRatingsCalcData.ProximityTrackType;
TileElement* tileElement = map_get_first_element_at(loc); TileElement* tileElement = map_get_first_element_at(loc);
if (tileElement == nullptr) if (tileElement == nullptr)
@ -332,7 +332,7 @@ static void ride_ratings_update_state_5()
continue; continue;
} }
if (trackType == 255 || trackType == tileElement->AsTrack()->GetTrackType()) if (trackType == TrackElemType::None || trackType == tileElement->AsTrack()->GetTrackType())
{ {
ride_ratings_score_close_proximity(tileElement); ride_ratings_score_close_proximity(tileElement);
@ -390,9 +390,8 @@ static void ride_ratings_begin_proximity_loop()
} }
auto location = ride->stations[i].GetStart(); auto location = ride->stations[i].GetStart();
gRideRatingsCalcData.Proximity = location; gRideRatingsCalcData.Proximity = location;
gRideRatingsCalcData.ProximityTrackType = 255; gRideRatingsCalcData.ProximityTrackType = TrackElemType::None;
gRideRatingsCalcData.ProximityStart = location; gRideRatingsCalcData.ProximityStart = location;
return; return;
} }

View File

@ -44,7 +44,7 @@ struct RideRatingCalculationData
CoordsXYZ ProximityStart; CoordsXYZ ProximityStart;
ride_id_t CurrentRide; ride_id_t CurrentRide;
uint8_t State; uint8_t State;
uint8_t ProximityTrackType; uint16_t ProximityTrackType;
uint8_t ProximityBaseHeight; uint8_t ProximityBaseHeight;
uint16_t ProximityTotal; uint16_t ProximityTotal;
uint16_t ProximityScores[26]; uint16_t ProximityScores[26];