Merge pull request #10057 from kodmord/ISSUE-10052

Fix #10052: Create a TrackDesignEntranceElement struct to replace rct_td6_entrance_element
This commit is contained in:
Duncan 2019-10-08 07:17:18 +01:00 committed by GitHub
commit 2afead2f60
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 19 additions and 4 deletions

View File

@ -135,6 +135,7 @@ The following people are not part of the development team, but have been contrib
* Kenny Castro-Monroy (kennycastro007)
* Joseph Atkins-Turkish (Spacerat)
* Tulio Paschoalin Leao (tupaschoal)
* Denis Khabenkov (kodmord)
## Toolchain
* (Balletie) - macOS

View File

@ -159,11 +159,16 @@ public:
td->track_elements.push_back(trackElement);
}
rct_td6_entrance_element entranceElement{};
rct_td6_entrance_element t6EntranceElement{};
for (uint8_t endFlag = _stream.ReadValue<uint8_t>(); endFlag != 0xFF; endFlag = _stream.ReadValue<uint8_t>())
{
_stream.SetPosition(_stream.GetPosition() - 1);
_stream.Read(&entranceElement, sizeof(rct_td6_entrance_element));
_stream.Read(&t6EntranceElement, sizeof(rct_td6_entrance_element));
TrackDesignEntranceElement entranceElement{};
entranceElement.z = t6EntranceElement.z;
entranceElement.direction = t6EntranceElement.direction;
entranceElement.x = t6EntranceElement.x;
entranceElement.y = t6EntranceElement.y;
td->entrance_elements.push_back(entranceElement);
}
}

View File

@ -300,7 +300,7 @@ rct_string_id TrackDesign::CreateTrackDesignTrack(const Ride& ride)
entranceDirection -= _saveDirection;
entranceDirection &= TILE_ELEMENT_DIRECTION_MASK;
rct_td6_entrance_element entrance{};
TrackDesignEntranceElement entrance{};
entrance.direction = entranceDirection;
x -= gTrackPreviewOrigin.x;

View File

@ -21,6 +21,15 @@ struct Ride;
#define TRACK_PREVIEW_IMAGE_SIZE (370 * 217)
/* Track Entrance entry */
struct TrackDesignEntranceElement
{
int8_t z;
uint8_t direction;
int16_t x;
int16_t y;
};
/**
* Track design structure.
*/
@ -69,7 +78,7 @@ struct TrackDesign
std::vector<rct_td46_maze_element> maze_elements;
std::vector<rct_td46_track_element> track_elements;
std::vector<rct_td6_entrance_element> entrance_elements;
std::vector<TrackDesignEntranceElement> entrance_elements;
std::vector<rct_td6_scenery_element> scenery_elements;
std::string name;