* Use precompiled headers for libopenrct2 with MSVC
* Exclude PCH from duktape
duktape needs all the warnings turned off and forcing PCH also enables
warnings. As there is nothing duktape would consume from our header,
remove forcing inclusion of that header into duktape.
* Provide msbuild parameter for using PCH only in CI
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
* Fix initial scroll size of server list and change cast to int32_t
* set actual width for server list too
* add indentation
* fix pixel size of other scroll
* revert unnecessary changes
* add changelog entry
The mtime is volatile in macOS jobs, causing cache misses.
As compiler binary is the same, use compiler's binary hash instead of its mtime.
See https://github.com/hendrikmuhs/ccache-action/issues/146
When upstream action is updated, this can be adapted
* Add ratings modifier for reversed trains
* Add test save file and ratings for this
* Changelog entry
* Bump network version
* Modify changelog
* Changelog edit
---------
Co-authored-by: Trevor Finney <8711258+finneyt@users.noreply.github.com>
* Refactor window to class: Research (#13794)
- Update Research window to new window class
- Refactor dependant windows (Finances and NewRides)
* Refactor window to class: Research (#13794)
- Refactor all shared logic for both pages in research window. Reused by Finances and NewRides windows.
* Refactor window to class: Research (#13794)
- Fix style issues
* Refactor window to class: Research
- Fix style issues, again
* Refactor window to class: Research
- Override Window class methods
* Refactor window to class: Research
- Remove old method comments
* Refactor window to class: Research
- Addresses code review comments
* Refactor window to class: Research
- Adds ResearchWindow ctor
* Refactor window to class: Research
- Hide funding dropdown in no money scenarios
- Addresses code review comments
* spiral lifthill down paintcode
* rename string anyway
* add some stuff I forgot and add documentation
* use static assert on SpriteGroupMultiplier
* add slope to list of opposite slopes
* bump scripting version
* update openrct2.d.ts
* improve documentation
* Fix#19800. Crash when more than 62 stations on a ride
This is a bit of a temporary fix. The crash happens due to exhausting the space in the formatter but the format string only ever handled 4 stations so it was still not going to work for 5 <=> 62 stations. So for the time being capped the output at 4 stations.
* Add changelog entry
* Apply review comment
* Use new enum in MiniatureRailway.cpp
* Add new paint functions for Wooden B supports
* Update and consolidate Wooden B supports calls for Minetrain RC
* Consolidate Wooden A supports calls for Minetrain RC
* Replace some unnecessary calls to PaintAddImageAsParentRotated()
* Always use carEntry 0 for friction sound
* Use front car entry for sound index
* Add note for carEntry sound properties
* Bump network version
---------
Co-authored-by: Trevor Finney <8711258+finneyt@users.noreply.github.com>