mirror of https://github.com/OpenRCT2/OpenRCT2.git
Prepare cur_test_track_location for type change
This commit is contained in:
parent
a5ad2f9a87
commit
c08958a705
|
@ -961,8 +961,17 @@ private:
|
|||
dst->ChairliftBullwheelLocation[i] = { src->chairlift_bullwheel_location[i].x,
|
||||
src->chairlift_bullwheel_location[i].y, src->chairlift_bullwheel_z[i] / 2 };
|
||||
}
|
||||
dst->cur_test_track_z = src->cur_test_track_z / 2;
|
||||
dst->cur_test_track_location = src->cur_test_track_location;
|
||||
|
||||
if (src->cur_test_track_location.isNull())
|
||||
{
|
||||
dst->cur_test_track_location.setNull();
|
||||
dst->cur_test_track_z = 0xFF;
|
||||
}
|
||||
else
|
||||
{
|
||||
dst->cur_test_track_location = { src->cur_test_track_location.x, src->cur_test_track_location.y };
|
||||
dst->cur_test_track_z = src->cur_test_track_z / 2;
|
||||
}
|
||||
dst->testing_flags = src->testing_flags;
|
||||
dst->current_test_segment = src->current_test_segment;
|
||||
dst->current_test_station = 0xFF;
|
||||
|
|
|
@ -609,7 +609,19 @@ void S6Exporter::ExportRide(rct2_ride* dst, const Ride* src)
|
|||
dst->previous_lateral_g = src->previous_lateral_g;
|
||||
// pad_106[0x2];
|
||||
dst->testing_flags = src->testing_flags;
|
||||
dst->cur_test_track_location = src->cur_test_track_location;
|
||||
|
||||
if (src->cur_test_track_location.isNull())
|
||||
{
|
||||
dst->cur_test_track_location.setNull();
|
||||
dst->cur_test_track_z = 0xFF;
|
||||
}
|
||||
else
|
||||
{
|
||||
dst->cur_test_track_location = { static_cast<uint8_t>(src->cur_test_track_location.x),
|
||||
static_cast<uint8_t>(src->cur_test_track_location.y) };
|
||||
dst->cur_test_track_z = src->cur_test_track_z;
|
||||
}
|
||||
|
||||
dst->turn_count_default = src->turn_count_default;
|
||||
dst->turn_count_banked = src->turn_count_banked;
|
||||
dst->turn_count_sloped = src->turn_count_sloped;
|
||||
|
@ -624,7 +636,6 @@ void S6Exporter::ExportRide(rct2_ride* dst, const Ride* src)
|
|||
dst->sheltered_length = src->sheltered_length;
|
||||
dst->var_11C = src->var_11C;
|
||||
dst->num_sheltered_sections = src->num_sheltered_sections;
|
||||
dst->cur_test_track_z = src->cur_test_track_z;
|
||||
|
||||
dst->cur_num_customers = src->cur_num_customers;
|
||||
dst->num_customers_timeout = src->num_customers_timeout;
|
||||
|
|
|
@ -614,7 +614,18 @@ public:
|
|||
dst->previous_lateral_g = src->previous_lateral_g;
|
||||
// pad_106[0x2];
|
||||
dst->testing_flags = src->testing_flags;
|
||||
dst->cur_test_track_location = src->cur_test_track_location;
|
||||
|
||||
if (src->cur_test_track_location.isNull())
|
||||
{
|
||||
dst->cur_test_track_location.setNull();
|
||||
dst->cur_test_track_z = 0xFF;
|
||||
}
|
||||
else
|
||||
{
|
||||
dst->cur_test_track_location = { src->cur_test_track_location.x, src->cur_test_track_location.y };
|
||||
dst->cur_test_track_z = src->cur_test_track_z;
|
||||
}
|
||||
|
||||
dst->turn_count_default = src->turn_count_default;
|
||||
dst->turn_count_banked = src->turn_count_banked;
|
||||
dst->turn_count_sloped = src->turn_count_sloped;
|
||||
|
@ -629,7 +640,6 @@ public:
|
|||
dst->sheltered_length = src->sheltered_length;
|
||||
dst->var_11C = src->var_11C;
|
||||
dst->num_sheltered_sections = src->num_sheltered_sections;
|
||||
dst->cur_test_track_z = src->cur_test_track_z;
|
||||
|
||||
dst->cur_num_customers = src->cur_num_customers;
|
||||
dst->num_customers_timeout = src->num_customers_timeout;
|
||||
|
|
|
@ -1595,9 +1595,10 @@ static void vehicle_update_measurements(rct_vehicle* vehicle)
|
|||
|
||||
// If we have already evaluated this track piece skip to next section
|
||||
uint16_t map_location = (vehicle->track_x / 32) | ((vehicle->track_y / 32) << 8);
|
||||
if (vehicle->track_z / 8 != ride->cur_test_track_z || map_location != ride->cur_test_track_location.xy)
|
||||
TileCoordsXYZ curTrackLoc{ CoordsXYZ{ vehicle->track_x, vehicle->track_y, vehicle->track_z } };
|
||||
if (curTrackLoc.z != ride->cur_test_track_z || map_location != ride->cur_test_track_location.xy)
|
||||
{
|
||||
ride->cur_test_track_z = vehicle->track_z / 8;
|
||||
ride->cur_test_track_z = curTrackLoc.z;
|
||||
ride->cur_test_track_location.xy = map_location;
|
||||
|
||||
if (ride_get_entrance_location(ride, ride->current_test_station).isNull())
|
||||
|
|
Loading…
Reference in New Issue