mirror of https://github.com/OpenRCT2/OpenRCT2.git
Modify code using Location8 to use isNull()/setNull() (#10403)
This commit is contained in:
parent
19f9fef532
commit
a2b9598341
|
@ -315,7 +315,7 @@ int32_t viewport_interaction_get_item_right(ScreenCoordsXY screenCoords, viewpor
|
|||
stationIndex = tileElement->AsTrack()->GetStationIndex();
|
||||
|
||||
for (i = stationIndex; i >= 0; i--)
|
||||
if (ride->stations[i].Start.xy == RCT_XY8_UNDEFINED)
|
||||
if (ride->stations[i].Start.isNull())
|
||||
stationIndex--;
|
||||
stationIndex++;
|
||||
set_map_tooltip_format_arg(4 + nameArgLen + 2, uint16_t, stationIndex);
|
||||
|
|
|
@ -173,7 +173,7 @@ static void window_maze_construction_close(rct_window* w)
|
|||
auto ride = get_ride(_currentRideIndex);
|
||||
if (ride != nullptr)
|
||||
{
|
||||
if (ride->overall_view.xy == RCT_XY8_UNDEFINED)
|
||||
if (ride->overall_view.isNull())
|
||||
{
|
||||
int32_t savedPausedState = gGamePaused;
|
||||
gGamePaused = 0;
|
||||
|
|
|
@ -1639,7 +1639,7 @@ static rct_window* window_ride_open_station(Ride* ride, int32_t stationIndex)
|
|||
// View
|
||||
for (int32_t i = stationIndex; i >= 0; i--)
|
||||
{
|
||||
if (ride->stations[i].Start.xy == RCT_XY8_UNDEFINED)
|
||||
if (ride->stations[i].Start.isNull())
|
||||
{
|
||||
stationIndex--;
|
||||
}
|
||||
|
@ -1905,7 +1905,7 @@ static void window_ride_init_viewport(rct_window* w)
|
|||
do
|
||||
{
|
||||
stationIndex++;
|
||||
if (ride->stations[stationIndex].Start.xy != RCT_XY8_UNDEFINED)
|
||||
if (!ride->stations[stationIndex].Start.isNull())
|
||||
{
|
||||
count--;
|
||||
}
|
||||
|
@ -1970,7 +1970,7 @@ static void window_ride_init_viewport(rct_window* w)
|
|||
w->viewport_focus_coordinates.height = w->height;
|
||||
|
||||
// rct2: 0x006aec9c only used here so brought it into the function
|
||||
if (!w->viewport && ride->overall_view.xy != RCT_XY8_UNDEFINED)
|
||||
if (!w->viewport && !ride->overall_view.isNull())
|
||||
{
|
||||
rct_widget* view_widget = &w->widgets[WIDX_VIEWPORT];
|
||||
|
||||
|
@ -2823,7 +2823,7 @@ static rct_string_id window_ride_get_status_station(rct_window* w, void* argumen
|
|||
do
|
||||
{
|
||||
stationIndex++;
|
||||
if (ride->stations[stationIndex].Start.xy != RCT_XY8_UNDEFINED)
|
||||
if (!ride->stations[stationIndex].Start.isNull())
|
||||
count--;
|
||||
} while (count >= 0);
|
||||
|
||||
|
|
|
@ -194,7 +194,8 @@ public:
|
|||
|
||||
ride->maze_tiles++;
|
||||
ride->stations[0].Height = tileElement->base_height;
|
||||
ride->stations[0].Start.xy = 0;
|
||||
ride->stations[0].Start.x = 0;
|
||||
ride->stations[0].Start.y = 0;
|
||||
|
||||
if (ride->maze_tiles == 1)
|
||||
{
|
||||
|
|
|
@ -235,7 +235,8 @@ public:
|
|||
|
||||
ride->maze_tiles++;
|
||||
ride->stations[0].Height = tileElement->base_height;
|
||||
ride->stations[0].Start.xy = 0;
|
||||
ride->stations[0].Start.x = 0;
|
||||
ride->stations[0].Start.y = 0;
|
||||
|
||||
if (_initialPlacement && !(flags & GAME_COMMAND_FLAG_GHOST))
|
||||
{
|
||||
|
|
|
@ -137,12 +137,12 @@ public:
|
|||
ride->type = _rideType;
|
||||
ride->subtype = rideEntryIndex;
|
||||
ride->SetColourPreset(_colour1);
|
||||
ride->overall_view.xy = RCT_XY8_UNDEFINED;
|
||||
ride->overall_view.setNull();
|
||||
ride->SetNameToDefault();
|
||||
|
||||
for (int32_t i = 0; i < MAX_STATIONS; i++)
|
||||
{
|
||||
ride->stations[i].Start.xy = RCT_XY8_UNDEFINED;
|
||||
ride->stations[i].Start.setNull();
|
||||
ride_clear_entrance_location(ride, i);
|
||||
ride_clear_exit_location(ride, i);
|
||||
ride->stations[i].TrainAtStation = RideStation::NO_TRAIN;
|
||||
|
|
|
@ -239,7 +239,7 @@ private:
|
|||
res->ExpenditureType = RCT_EXPENDITURE_TYPE_RIDE_CONSTRUCTION;
|
||||
res->Cost = refundPrice;
|
||||
|
||||
if (ride->overall_view.xy != RCT_XY8_UNDEFINED)
|
||||
if (!ride->overall_view.isNull())
|
||||
{
|
||||
int32_t x = (ride->overall_view.x * 32) + 16;
|
||||
int32_t y = (ride->overall_view.y * 32) + 16;
|
||||
|
@ -367,7 +367,7 @@ private:
|
|||
|
||||
ride->window_invalidate_flags |= RIDE_INVALIDATE_RIDE_MAINTENANCE | RIDE_INVALIDATE_RIDE_CUSTOMER;
|
||||
|
||||
if (ride->overall_view.xy != RCT_XY8_UNDEFINED)
|
||||
if (!ride->overall_view.isNull())
|
||||
{
|
||||
int32_t x = (ride->overall_view.x * 32) + 16;
|
||||
int32_t y = (ride->overall_view.y * 32) + 16;
|
||||
|
|
|
@ -159,7 +159,7 @@ public:
|
|||
window_invalidate_by_number(WC_RIDE, _rideIndex);
|
||||
|
||||
auto res = std::make_unique<GameActionResult>();
|
||||
if (ride->overall_view.xy != RCT_XY8_UNDEFINED)
|
||||
if (!ride->overall_view.isNull())
|
||||
{
|
||||
res->Position.x = ride->overall_view.x * 32 + 16;
|
||||
res->Position.y = ride->overall_view.y * 32 + 16;
|
||||
|
|
|
@ -93,7 +93,7 @@ public:
|
|||
return MakeResult(GA_ERROR::INVALID_PARAMETERS, STR_NONE);
|
||||
}
|
||||
|
||||
if (ride->overall_view.xy != RCT_XY8_UNDEFINED)
|
||||
if (!ride->overall_view.isNull())
|
||||
{
|
||||
res->Position.x = ride->overall_view.x * 32 + 16;
|
||||
res->Position.y = ride->overall_view.y * 32 + 16;
|
||||
|
|
|
@ -243,7 +243,7 @@ public:
|
|||
}
|
||||
|
||||
auto res = std::make_unique<GameActionResult>();
|
||||
if (ride->overall_view.xy != RCT_XY8_UNDEFINED)
|
||||
if (!ride->overall_view.isNull())
|
||||
{
|
||||
res->Position.x = ride->overall_view.x * 32 + 16;
|
||||
res->Position.y = ride->overall_view.y * 32 + 16;
|
||||
|
|
|
@ -120,7 +120,7 @@ public:
|
|||
|
||||
res->ErrorTitle = _StatusErrorTitles[_status];
|
||||
ride->FormatNameTo(res->ErrorMessageArgs.data() + 6);
|
||||
if (ride->overall_view.xy != RCT_XY8_UNDEFINED)
|
||||
if (!ride->overall_view.isNull())
|
||||
{
|
||||
res->Position.x = ride->overall_view.x * 32 + 16;
|
||||
res->Position.y = ride->overall_view.y * 32 + 16;
|
||||
|
|
|
@ -201,7 +201,7 @@ public:
|
|||
ride->UpdateMaxVehicles();
|
||||
|
||||
auto res = std::make_unique<GameActionResult>();
|
||||
if (ride->overall_view.xy != RCT_XY8_UNDEFINED)
|
||||
if (!ride->overall_view.isNull())
|
||||
{
|
||||
res->Position.x = ride->overall_view.x * 32 + 16;
|
||||
res->Position.y = ride->overall_view.y * 32 + 16;
|
||||
|
|
|
@ -554,7 +554,7 @@ public:
|
|||
}
|
||||
|
||||
int32_t entranceDirections = 0;
|
||||
if (ride->overall_view.xy != RCT_XY8_UNDEFINED)
|
||||
if (!ride->overall_view.isNull())
|
||||
{
|
||||
if (!(GetFlags() & GAME_COMMAND_FLAG_NO_SPEND))
|
||||
{
|
||||
|
@ -569,7 +569,7 @@ public:
|
|||
}
|
||||
}
|
||||
|
||||
if (entranceDirections & TRACK_SEQUENCE_FLAG_ORIGIN || ride->overall_view.xy == RCT_XY8_UNDEFINED)
|
||||
if (entranceDirections & TRACK_SEQUENCE_FLAG_ORIGIN || ride->overall_view.isNull())
|
||||
{
|
||||
ride->overall_view.x = mapLoc.x / 32;
|
||||
ride->overall_view.y = mapLoc.y / 32;
|
||||
|
|
|
@ -217,7 +217,7 @@ void news_item_get_subject_location(int32_t type, int32_t subject, int32_t* x, i
|
|||
{
|
||||
case NEWS_ITEM_RIDE:
|
||||
ride = get_ride(subject);
|
||||
if (ride == nullptr || ride->overall_view.xy == RCT_XY8_UNDEFINED)
|
||||
if (ride == nullptr || ride->overall_view.isNull())
|
||||
{
|
||||
*x = LOCATION_NULL;
|
||||
break;
|
||||
|
|
|
@ -2334,7 +2334,7 @@ bool Staff::UpdateFixingMoveToStationEnd(bool firstRun, Ride* ride)
|
|||
}
|
||||
|
||||
LocationXY8 stationPosition = ride->stations[current_ride_station].Start;
|
||||
if (stationPosition.xy == RCT_XY8_UNDEFINED)
|
||||
if (stationPosition.isNull())
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
@ -2426,7 +2426,7 @@ bool Staff::UpdateFixingMoveToStationStart(bool firstRun, Ride* ride)
|
|||
}
|
||||
|
||||
LocationXY8 stationPosition = ride->stations[current_ride_station].Start;
|
||||
if (stationPosition.xy == RCT_XY8_UNDEFINED)
|
||||
if (stationPosition.isNull())
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -807,12 +807,12 @@ private:
|
|||
dst->stations[i].TrainAtStation = src->station_depart[i];
|
||||
|
||||
// Direction is fixed later.
|
||||
if (src->entrance[i].xy == RCT_XY8_UNDEFINED)
|
||||
if (src->entrance[i].isNull())
|
||||
ride_clear_entrance_location(dst, i);
|
||||
else
|
||||
ride_set_entrance_location(dst, i, { src->entrance[i].x, src->entrance[i].y, src->station_height[i] / 2, 0 });
|
||||
|
||||
if (src->exit[i].xy == RCT_XY8_UNDEFINED)
|
||||
if (src->exit[i].isNull())
|
||||
ride_clear_exit_location(dst, i);
|
||||
else
|
||||
ride_set_exit_location(dst, i, { src->exit[i].x, src->exit[i].y, src->station_height[i] / 2, 0 });
|
||||
|
@ -827,7 +827,7 @@ private:
|
|||
// All other values take 0 as their default. Since they're already memset to that, no need to do it again.
|
||||
for (int32_t i = RCT12_MAX_STATIONS_PER_RIDE; i < MAX_STATIONS; i++)
|
||||
{
|
||||
dst->stations[i].Start.xy = RCT_XY8_UNDEFINED;
|
||||
dst->stations[i].Start.setNull();
|
||||
dst->stations[i].TrainAtStation = RideStation::NO_TRAIN;
|
||||
ride_clear_entrance_location(dst, i);
|
||||
ride_clear_exit_location(dst, i);
|
||||
|
|
|
@ -534,13 +534,13 @@ void S6Exporter::ExportRide(rct2_ride* dst, const Ride* src)
|
|||
|
||||
TileCoordsXYZD entrance = ride_get_entrance_location(src, i);
|
||||
if (entrance.isNull())
|
||||
dst->entrances[i].xy = RCT_XY8_UNDEFINED;
|
||||
dst->entrances[i].setNull();
|
||||
else
|
||||
dst->entrances[i] = { (uint8_t)entrance.x, (uint8_t)entrance.y };
|
||||
|
||||
TileCoordsXYZD exit = ride_get_exit_location(src, i);
|
||||
if (exit.isNull())
|
||||
dst->exits[i].xy = RCT_XY8_UNDEFINED;
|
||||
dst->exits[i].setNull();
|
||||
else
|
||||
dst->exits[i] = { (uint8_t)exit.x, (uint8_t)exit.y };
|
||||
|
||||
|
|
|
@ -528,12 +528,12 @@ public:
|
|||
dst->stations[i].TrainAtStation = src->train_at_station[i];
|
||||
// Direction is fixed later.
|
||||
|
||||
if (src->entrances[i].xy == RCT_XY8_UNDEFINED)
|
||||
if (src->entrances[i].isNull())
|
||||
ride_clear_entrance_location(dst, i);
|
||||
else
|
||||
ride_set_entrance_location(dst, i, { src->entrances[i].x, src->entrances[i].y, src->station_heights[i], 0 });
|
||||
|
||||
if (src->exits[i].xy == RCT_XY8_UNDEFINED)
|
||||
if (src->exits[i].isNull())
|
||||
ride_clear_exit_location(dst, i);
|
||||
else
|
||||
ride_set_exit_location(dst, i, { src->exits[i].x, src->exits[i].y, src->station_heights[i], 0 });
|
||||
|
@ -550,7 +550,7 @@ public:
|
|||
// All other values take 0 as their default. Since they're already memset to that, no need to do it again.
|
||||
for (int32_t i = RCT12_MAX_STATIONS_PER_RIDE; i < MAX_STATIONS; i++)
|
||||
{
|
||||
dst->stations[i].Start.xy = RCT_XY8_UNDEFINED;
|
||||
dst->stations[i].Start.setNull();
|
||||
dst->stations[i].TrainAtStation = RideStation::NO_TRAIN;
|
||||
ride_clear_entrance_location(dst, i);
|
||||
ride_clear_exit_location(dst, i);
|
||||
|
|
|
@ -2229,7 +2229,7 @@ void Ride::UpdateSpiralSlide()
|
|||
// Invalidate something related to station start
|
||||
for (int32_t i = 0; i < MAX_STATIONS; i++)
|
||||
{
|
||||
if (stations[i].Start.xy == RCT_XY8_UNDEFINED)
|
||||
if (stations[i].Start.isNull())
|
||||
continue;
|
||||
|
||||
int32_t x = stations[i].Start.x;
|
||||
|
@ -3261,7 +3261,7 @@ static void ride_entrance_exit_connected(Ride* ride)
|
|||
auto entrance = ride_get_entrance_location(ride, i);
|
||||
auto exit = ride_get_exit_location(ride, i);
|
||||
|
||||
if (station_start.xy == RCT_XY8_UNDEFINED)
|
||||
if (station_start.isNull())
|
||||
continue;
|
||||
if (!entrance.isNull() && !ride_entrance_exit_is_reachable(entrance))
|
||||
{
|
||||
|
@ -3290,7 +3290,7 @@ static void ride_entrance_exit_connected(Ride* ride)
|
|||
static void ride_shop_connected(Ride* ride)
|
||||
{
|
||||
LocationXY8 coordinates = ride->stations[0].Start;
|
||||
if (coordinates.xy == RCT_XY8_UNDEFINED)
|
||||
if (coordinates.isNull())
|
||||
return;
|
||||
|
||||
TileCoordsXY loc = { coordinates.x, coordinates.y };
|
||||
|
@ -3399,7 +3399,7 @@ static void ride_station_set_map_tooltip(TileElement* tileElement)
|
|||
{
|
||||
auto stationIndex = tileElement->AsTrack()->GetStationIndex();
|
||||
for (int32_t i = stationIndex; i >= 0; i--)
|
||||
if (ride->stations[i].Start.xy == RCT_XY8_UNDEFINED)
|
||||
if (ride->stations[i].Start.isNull())
|
||||
stationIndex--;
|
||||
|
||||
size_t argPos = 0;
|
||||
|
@ -3426,7 +3426,7 @@ static void ride_entrance_set_map_tooltip(TileElement* tileElement)
|
|||
// Get the station
|
||||
auto stationIndex = tileElement->AsEntrance()->GetStationIndex();
|
||||
for (int32_t i = stationIndex; i >= 0; i--)
|
||||
if (ride->stations[i].Start.xy == RCT_XY8_UNDEFINED)
|
||||
if (ride->stations[i].Start.isNull())
|
||||
stationIndex--;
|
||||
|
||||
if (tileElement->AsEntrance()->GetEntranceType() == ENTRANCE_TYPE_RIDE_ENTRANCE)
|
||||
|
@ -3469,7 +3469,7 @@ static void ride_entrance_set_map_tooltip(TileElement* tileElement)
|
|||
// Get the station
|
||||
stationIndex = tileElement->AsEntrance()->GetStationIndex();
|
||||
for (int32_t i = stationIndex; i >= 0; i--)
|
||||
if (ride->stations[i].Start.xy == RCT_XY8_UNDEFINED)
|
||||
if (ride->stations[i].Start.isNull())
|
||||
stationIndex--;
|
||||
|
||||
size_t argPos = 0;
|
||||
|
@ -3824,7 +3824,7 @@ static int32_t ride_mode_check_valid_station_numbers(Ride* ride)
|
|||
uint8_t no_stations = 0;
|
||||
for (uint8_t station_index = 0; station_index < MAX_STATIONS; ++station_index)
|
||||
{
|
||||
if (ride->stations[station_index].Start.xy != RCT_XY8_UNDEFINED)
|
||||
if (!ride->stations[station_index].Start.isNull())
|
||||
{
|
||||
no_stations++;
|
||||
}
|
||||
|
@ -3900,7 +3900,7 @@ static int32_t ride_check_for_entrance_exit(ride_id_t rideIndex)
|
|||
uint8_t exit = 0;
|
||||
for (i = 0; i < MAX_STATIONS; i++)
|
||||
{
|
||||
if (ride->stations[i].Start.xy == RCT_XY8_UNDEFINED)
|
||||
if (ride->stations[i].Start.isNull())
|
||||
continue;
|
||||
|
||||
if (!ride_get_entrance_location(ride, i).isNull())
|
||||
|
@ -4929,7 +4929,7 @@ static bool ride_initialise_cable_lift_track(Ride* ride, bool isApplying)
|
|||
for (stationIndex = 0; stationIndex < MAX_STATIONS; stationIndex++)
|
||||
{
|
||||
location = ride->stations[stationIndex].Start;
|
||||
if (location.xy != RCT_XY8_UNDEFINED)
|
||||
if (!location.isNull())
|
||||
break;
|
||||
if (stationIndex == 3)
|
||||
{
|
||||
|
@ -5118,7 +5118,7 @@ static void loc_6B51C0(const Ride* ride)
|
|||
int32_t i;
|
||||
for (i = 0; i < MAX_STATIONS; i++)
|
||||
{
|
||||
if (ride->stations[i].Start.xy == RCT_XY8_UNDEFINED)
|
||||
if (ride->stations[i].Start.isNull())
|
||||
continue;
|
||||
|
||||
if (ride_get_entrance_location(ride, i).isNull())
|
||||
|
@ -6235,7 +6235,7 @@ CoordsXYZD ride_get_entrance_or_exit_position_from_screen_position(ScreenCoordsX
|
|||
}
|
||||
|
||||
LocationXY8 stationStart = ride->stations[gRideEntranceExitPlaceStationIndex].Start;
|
||||
if (stationStart.xy == RCT_XY8_UNDEFINED)
|
||||
if (stationStart.isNull())
|
||||
{
|
||||
entranceExitCoords.x = LOCATION_NULL;
|
||||
return entranceExitCoords;
|
||||
|
@ -6436,7 +6436,7 @@ bool ride_are_all_possible_entrances_and_exits_built(Ride* ride)
|
|||
|
||||
for (int32_t i = 0; i < MAX_STATIONS; i++)
|
||||
{
|
||||
if (ride->stations[i].Start.xy == RCT_XY8_UNDEFINED)
|
||||
if (ride->stations[i].Start.isNull())
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
@ -6631,7 +6631,7 @@ static opt::optional<int32_t> ride_get_smallest_station_length(Ride* ride)
|
|||
opt::optional<int32_t> result;
|
||||
for (const auto& station : ride->stations)
|
||||
{
|
||||
if (station.Start.xy != RCT_XY8_UNDEFINED)
|
||||
if (!station.Start.isNull())
|
||||
{
|
||||
if (!result.has_value() || station.Length < *result)
|
||||
{
|
||||
|
@ -6658,7 +6658,7 @@ static int32_t ride_get_track_length(Ride* ride)
|
|||
for (int32_t i = 0; i < MAX_STATIONS && !foundTrack; i++)
|
||||
{
|
||||
LocationXY8 location = ride->stations[i].Start;
|
||||
if (location.xy == RCT_XY8_UNDEFINED)
|
||||
if (location.isNull())
|
||||
continue;
|
||||
|
||||
x = location.x * 32;
|
||||
|
@ -6911,7 +6911,7 @@ void sub_6CB945(Ride* ride)
|
|||
{
|
||||
for (uint8_t stationId = 0; stationId < MAX_STATIONS; ++stationId)
|
||||
{
|
||||
if (ride->stations[stationId].Start.xy == RCT_XY8_UNDEFINED)
|
||||
if (ride->stations[stationId].Start.isNull())
|
||||
continue;
|
||||
|
||||
CoordsXYZ location = { ride->stations[stationId].Start.x * 32, ride->stations[stationId].Start.y * 32,
|
||||
|
@ -7377,7 +7377,7 @@ bool ride_has_adjacent_station(Ride* ride)
|
|||
* adjacent station on either side. */
|
||||
for (int32_t stationNum = 0; stationNum < MAX_STATIONS; stationNum++)
|
||||
{
|
||||
if (ride->stations[stationNum].Start.xy != RCT_XY8_UNDEFINED)
|
||||
if (!ride->stations[stationNum].Start.isNull())
|
||||
{
|
||||
/* Get the map element for the station start. */
|
||||
uint16_t stationX = ride->stations[stationNum].Start.x * 32;
|
||||
|
|
|
@ -386,7 +386,7 @@ static void ride_ratings_begin_proximity_loop()
|
|||
|
||||
for (int32_t i = 0; i < MAX_STATIONS; i++)
|
||||
{
|
||||
if (ride->stations[i].Start.xy != RCT_XY8_UNDEFINED)
|
||||
if (!ride->stations[i].Start.isNull())
|
||||
{
|
||||
gRideRatingsCalcData.station_flags &= ~RIDE_RATING_STATION_FLAG_NO_ENTRANCE;
|
||||
if (ride_get_entrance_location(ride, i).isNull())
|
||||
|
|
|
@ -27,7 +27,7 @@ static void ride_invalidate_station_start(Ride* ride, int32_t stationIndex, bool
|
|||
*/
|
||||
void ride_update_station(Ride* ride, int32_t stationIndex)
|
||||
{
|
||||
if (ride->stations[stationIndex].Start.xy == RCT_XY8_UNDEFINED)
|
||||
if (ride->stations[stationIndex].Start.isNull())
|
||||
return;
|
||||
|
||||
switch (ride->mode)
|
||||
|
@ -385,7 +385,7 @@ int8_t ride_get_first_valid_station_start(const Ride* ride)
|
|||
{
|
||||
for (int8_t i = 0; i < MAX_STATIONS; i++)
|
||||
{
|
||||
if (ride->stations[i].Start.xy != RCT_XY8_UNDEFINED)
|
||||
if (!ride->stations[i].Start.isNull())
|
||||
{
|
||||
return i;
|
||||
}
|
||||
|
@ -397,7 +397,7 @@ int8_t ride_get_first_empty_station_start(const Ride* ride)
|
|||
{
|
||||
for (int8_t i = 0; i < MAX_STATIONS; i++)
|
||||
{
|
||||
if (ride->stations[i].Start.xy == RCT_XY8_UNDEFINED)
|
||||
if (ride->stations[i].Start.isNull())
|
||||
{
|
||||
return i;
|
||||
}
|
||||
|
|
|
@ -625,7 +625,7 @@ static void ride_remove_station(Ride* ride, int32_t x, int32_t y, int32_t z)
|
|||
{
|
||||
if (ride->stations[i].Start.x == (x >> 5) && ride->stations[i].Start.y == (y >> 5) && ride->stations[i].Height == z)
|
||||
{
|
||||
ride->stations[i].Start.xy = RCT_XY8_UNDEFINED;
|
||||
ride->stations[i].Start.setNull();
|
||||
ride->num_stations--;
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -3074,7 +3074,7 @@ void vehicle_test_reset(rct_vehicle* vehicle)
|
|||
ride->previous_vertical_g = 0;
|
||||
ride->previous_lateral_g = 0;
|
||||
ride->testing_flags = 0;
|
||||
ride->cur_test_track_location.xy = 0xFFFF;
|
||||
ride->cur_test_track_location.setNull();
|
||||
ride->cur_test_track_z = 0xFF;
|
||||
ride->turn_count_default = 0;
|
||||
ride->turn_count_banked = 0;
|
||||
|
|
|
@ -232,7 +232,7 @@ uint8_t banner_get_closest_ride_index(int32_t x, int32_t y, int32_t z)
|
|||
continue;
|
||||
|
||||
LocationXY8 location = ride.overall_view;
|
||||
if (location.xy == RCT_XY8_UNDEFINED)
|
||||
if (location.isNull())
|
||||
continue;
|
||||
|
||||
int32_t rideX = location.x * 32;
|
||||
|
|
|
@ -31,6 +31,16 @@ struct LocationXY8
|
|||
};
|
||||
uint16_t xy;
|
||||
};
|
||||
|
||||
bool isNull() const
|
||||
{
|
||||
return xy == RCT_XY8_UNDEFINED;
|
||||
}
|
||||
|
||||
void setNull()
|
||||
{
|
||||
xy = RCT_XY8_UNDEFINED;
|
||||
}
|
||||
};
|
||||
assert_struct_size(LocationXY8, 2);
|
||||
|
||||
|
|
Loading…
Reference in New Issue