* Initial commit for backwards-facing trains
* Allow persistence for reversed cars across save/load
* Make log flume turntable compatible with new reversal implementation
* Style fixes + Better implementation of inverted bank angles
* Further Style Fixes
* Code cleanup from PR feedback
* Fix GetBankRotationForDrawing function declaration
* Use update flag for reversed state
* Replace modulo operation with bit mask
* Correct guest pathing destination when entering reversed cars
* More style fixes
* Add plugin support for reversed vehicles
* Fix formatting error
* Derive reversal from ride mode for car spawning
* Formatting
* Rename function to GetPaintBankRotation
* Add reversed trains modes to Multi Dimension Coaster
* Change name of isReversed plugin API parameter for consistency
* Replace reversal operating modes with separate ride setting
* Add ALLOW_REVERSED_TRAINS flag to more ride types
* Make clang-format happy
* More Formatting
* Fix ALLOW_REVERSED_TRAINS flag on a couple rides
* Exclude flat rides from Reverse Trains tickbox when cheats are enabled
* Formatting
* Use Disable Vehicle Limits cheat for checkbox appearance condition
* Use correct swinging sprites when cars are reversed
* Update changelog and Plugin/Network/Park version numbers
* Formatting
* Add separate error String ID for clarity
* Add name to contributors.md
* Fix ride vehicle preview window with reversed trains for RCT1 train types
* Bump version numbers again
---------
Co-authored-by: Trevor Finney <8711258+finneyt@users.noreply.github.com>
* add fields to track segment api
* add getTrackSegments to API
* change element to segment for continuity
* improve documentation
* continue tweaking documentation
* implement segment suggestions
* clarify purpose of isSteepUp flag
* add rest of track element flags
* remove extraneous information from comment
* continue tweaking API
* implement basssiiie suggestion
* rename angle to slope
* reorder items in the documentation
* bump plugin api
* Wrap custom game action arguments in event args object
* Update Typescript declaration, documentation and changelog
* Pass custom game action by value and remove log messages
When a marketing campaign is finished, it is likely the player wants to renew it.
This change allows the ‘Campaigns’ tab in the 'Finances' window to be opened from the news item of the finished campaign.
Refactor vehicle sprite groups
rename rotationType to spriteGroup
remove numframes getters from scobject
add sprite groups getters
add documentation to plugin
Co-authored-by: duncanspumpkin <duncans_pumpkin@hotmail.co.uk>