* Rename large half loops in TrackElemType namespace
* Fix large half loop positions in DropdownOrder
* Fix comments for medium loops
* Fix medium half loop order in gTrackCurveChain
Wrong piece was auto-suggested when building backwards.
* Swap names of painting functions
* Rename TrackElemType for Flying Coaster
* Swap names of Flying Coaster painting functions
* Swap Flying Coaster VehicleSubpositionData names
* Swap FlyingCoaster TrackBlock names
* Fix Flying Coaster track elem flags and comments
* Fix ZeroGRoll comments in TrackData.cpp
* Update changelog.txt
* Bump network version
Part 2 of #19922Fixes#19964
There are a lot of files changed, so this PR is structured to be easy to follow by looking at individual commits.
This PR refactors how the special track element list is created. The refactors include:
Divorces creating the list from RideConstructionWindow for modularity, including potential plugin API
Adds list of special track elements which can be re-ordered for more sensible organization
Same-named track elements will collapse into as few entries as possible
Separates up helixes from down helixes in track flags
Track flag separation was done to remove special code related to alpine coaster. Refactors to ride construction window were tested against and confirmed working with:
alpine coaster
suspended swinging coaster
hybrid coaster
inverted coaster