* 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>
* Setup for extended palette
* Define order for color picker cells
* Init G2 Palettes in ColoursInitMaps
* Add Glass Palettes
* Use special sprite for Invisible color
* Set up new cheat for special colors
* Add glass palettes to palette_to_g1_offset
* Add entries for new colors in TranslucentWindowPalettes
* Finish implementation of special colors cheat
* Some cleanup
* New colors almost work
* Correct g2 palette loading indices
* Invisible color sprite displays properly
* Repaint works with large scenery and walls
* Prevent random shop items from overflowing to junk palettes
* More cleanup
* Fix glass palettes
* Add mapping of new colors to original colors for UI themes
* Fix junk palettes for random shop items
* Fix missing highlight color in software renderer
* Convert small scenery support flag to allow use of new colors
* Progress on displaying new colors in software renderer
* Fix invisible color scheme sprite
* Formatting cleanup
* Resolve comparison of integer expressions of different signedness
* Index g2 palette maps to fix visible chain lift
* Progress on fixing new colors in software renderer
* Fix station and support colors
* Fix dropdown selected index
* Get invisible color (mostly) working in software renderer
* Use forceBmp for palette resources
* Remove test function definition left in by mistake
* Remove some obsolete range checks for original color values
* Add changelog entry
* Reorder color dropdown based on NE user feedback
* Some cleanup
* Further cleanup
* Formatting
* Add include for GetPaletteMapIndexForColour
* Fix a couple things I broke
* Fix function placement
* Revert "Add include for GetPaletteMapIndexForColour"
This reverts commit 0af9611e6656d792adb7a36efe7dbf3387a4a759.
* Use color constants for color order list
* Make remappable colors contiguous
* turn off clang format for ordered color list
* Appease clang
* Use all colors for random shop item animation
* Improvements to palette map resources
* Fix chain lifts again + adjustments to a few colors
* Update changelog and contributors.md
* Revert changes to S4 and S6 importers which are no longer needed
* Bump network, plugin, and minimum park versions
* Revert "Progress on displaying new colors in software renderer"
This reverts commit 337602e4a7.
* Remove unnecessary comment
---------
Co-authored-by: Trevor Finney <8711258+finneyt@users.noreply.github.com>
* Refactor and clean up date handling
* Remove gDate, remove direct access to days_in_month
* Adjust the MultiLaunch test
* Bump network version
---------
Co-authored-by: ζeh Matt <5415177+ZehMatt@users.noreply.github.com>
* Add speed and frame properties
* add steam position modifier
* copy code from OpenLoco
* update sin and cos
* add computation function
* finalize locomotion code
* fix formatting
* refine code
* refactor things slightly
* manually fix formatting
* use PascalCase and rename
* fix copyright notice
* fix name again
* rename function, move outt of namespace
* fix rebase issues
* remove pitch table derived from physics
* rename some stuff
* flip vertical component sign to make sense
* change json structure
* create steam particles based on number of animation frames
* fix formatting
* add slope for spiral lift hill down
* fix formatting again
* parens around bitwise and
* make animations separate functions
* rename MultiDimCoaster to MultiDimension
* use EnumValue method
* rework multidim frame count
* bump network to be safe
* fix formatting
* move array out of function
* make table const
* move struct into RideObject.cpp
* try new method to fix numbers in multidim
* implement ZehMatt modulo
* add documentation to new function
* include Yaw.hpp
* rename src/ride/SteamPosition.hpp to src/math/Trigonometry.hpp
* actually add src/math/Trigonometry.hpp
* move ComputeSteamOffset to Vehicle.cpp
* use static asserts on arrays
* fix changelog grammar
* add more static asserts
* Use money64 for ride prices and shop items
* Use money64 for park entrance fee
* Use money64 for gGuestInitialCash
* Use money64 for upkeep costs
* Use money64 for ride value
* Use money64 for marketing campaign cost
* Use money64 for object prices
* Use money64 for land prices
* Use money64 for guest expenditure
* Replace remaining occurrences of money32 with money64
* Update replays
* Bump network version
---------
Co-authored-by: duncanspumpkin <duncans_pumpkin@hotmail.co.uk>
* 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