* Update includes in PlatformEnvironment.cpp
* Update includes in ParkImporter.h
* Update includes of OpenRCT2.h
* Update includes in Intro.h
* Remove unused include from Input.cpp
* Update includes of Imaging.h
* Update includes in Game.h
* Update includes in Editor.h
* Update includes of Context.cpp
* Update includes in Cheats.cpp, CmdlineSprite.cpp
* Update includes of some source files
* Update includes in some cpp files
* Update includes in some cpp files
* Update includes in TextureCache.h
* Fix tests
* Update includes in Font.cpp
* Update includes in LightFX files
* Update some includes
* Fix GCC builds
* Update some includes
* Update some includes
* Update includes in FontsFamilies.*
* Update includes of Console.h
* Improve includes in Window.h
* Improve headers in Viewport.h/Window.h
* Fix MSVC build
* Fix network-less builds
* Reduce inclusion of Map.h
`typedef struct/union/enum name { ... } name_again;` is not needed whe compiling C++, moving the name at the back to be in front of the object and removing `typedef` makes it usable the very same way.
This also replaces typedefs with the using keyword. They have better readability, especially for function pointer types, and would allow more flexibility when used with templates.
OpenRCT2 does not provide a simple function to pause a server
while no client is connected. This patch adds a so called
"pause_server_if_no_clients" flag within network section of
config.ini. By default this flag is set to false to be backward
compatible with running servers. After setting this flag to
true the game is paused on launch and gets unpaused on first
connection.
Signed-off-by: Tobias Kohlbau <tobias@kohlbau.de>
This removes most usages of the separate flag, instead relying on ride groups to do its job.
Research is more complicated and will follow in another commit.
Simplify UI scaling display quality options.
This removes three options:
* 'Use NN scaling at integer scales', as NN is decidedly preferable at integer scales.
* Anisotropic scaling, as it produces results very similar (if not equal) to linear scaling.
* NN as a selectable option in the dropdown - NN is forced on integer scales and unavailable for non-integer scales.
- Remove old code for getting user directory, redirect to IPlatformEnvironment.
- Fix config loading so that it uses path straight from IPlatformEnvironment.
- Add more special folder implementation in Platform2.
OpenRCT2 was reading a "guest_entered_left_park" value for the notification setting.
The value is saved as "guest_left_park" however. Mistake made during refactor.
This addresses the issue that tofu would not show up in Arial on macOS if the
threshold was set to 60. It being the fallback font, it is important that they
do, which requires lowering to at most 43.
However, it is even more important that the threshold is left at 60 for kanji
in e.g. Japanese to render properly.
Hence, for the moment, Arial is the only font now using a hinting threshold
of 40, for now.
Squash commit containing:
- 398d978 Setup server action logging for server admins in multiplayer
- 13330ae Added server action logging for using cheats in multiplayer
- b619019 Added server action logging for demolishing rides in multiplayer
- 93de752 Added server action logging for editing ride properties in multiplayer
- 8a3d932 Added server action logging for editing park properties in multiplayer
- c78b6e7 Moved duplicate chat and server logging code into new network methods
- c8f66bf Changed logging variable types to avoid deprecated conversion errors in CI builds
- 454e527 Added improved server action logging for using cheats in multiplayer
- 1194305 Moved server action logging code in game.c into a separate method to reduce clutter
- d59cd42 Added server action logging for add/edit/remove scenery in multiplayer
- c41ae0e Added server action logging for clients in multiplayer
- c383341 Removed unused variable to fix CI build error
- 2d1d8e3 Added server action logging for ride creation in multiplayer
When the hashing function finds a collision such as on play_intro and auto_staff_placement it has to do a string compare to find out if two map entries are different. Due to a mistype this comparison would always return true. This meant that the auto_staff_placement value would overwrite the play_intro value. Mistake caused when fixing previous bug