By using a union instead of a struct var_494 and var_496 where ontop of the same location this meant var_496 when written to would overwrite ride_colour that was also in a union with var_494/496. This in turn would cause the wrong ride_colour to be overwritten when using the colour picker.
This makes 64 bit build finally render properly, previously part of the pointer was getting overwritten by store to RCT2_ADDRESS_VIEWPORT_PAINT_X, which didn't make it invalid, but caused it to point wrong offset.
This adds a checkbox to the interface settings panel to enable zooming around the cursor.
If disabled, which it is by default, vanilla RCT2 behaviour is retained.
- With this change screenshot file names have the following pattern:
save file name + + YYYY-MM-DD hh-mm-ss + .png
- To get the correct date and time the method platform_get_time and platform_get_date are rewritten and to a version for UTC and a version for local time. This change gave the opportunity to simplify the code generating file names for autosaves.
- SOUND_WINDOW_OPEN is now the new "shutter" sound when taking screenshot.
This provides an option to set a limit on the number of windows that can
be open. Originally, the game had somewhere around 12, but was bumped up
to 64 for OpenRCT2. While this provides some value, this is for people who
prefer less windows at a time, and also for people with older computers.
The limit can be set anywhere between 8 and 64, (8 being chosen to still
preserve in-game toolbars that are counted as windows, and 64 to not
overshoot the maximum hard-coded value). This can be set in both options
and the in-game-console.
Refactor and improve the object system:
- Objects are now exported to user directory under 'object'.
- Object directories are scanned recursively.
- Improves reliability of object loading and handling of bad objects.
- Improve performance of object scanning.
- Only load new objects when loading a new game.
- Improve changing language experience.