All of the pages share some common widgets (title, close button, background, tabs). To
reduce code duplication here, I've moved those values to a define that then gets used
for each of the pages.
The same thing applies to enabled widgets. One additional change is that left bitshifts
from `1` have been changed to `1ULL`.
This commit corrects some misused defines, and gave them clearer names.
For example, the slope mask was only useful for surface elements, so now
"SURFACE" is in its name. I also replaced any hard coded values that I
could find and knew their purpose off.
Adding a server via "Add Server" should handle them
as favorites as otherwise the list is not saved locally and
each server is lost after game restart.
Signed-off-by: Tobias Kohlbau <tobias@kohlbau.de>
The game will now check for the number of entries in CSG1.DAT. If it's too few, it will now no longer try using its sprites, but print out a warning instead.
Stop previewing sequence now unfollows the current sprite.
Using the arrow keys in-game cancels following.
Resizing the window no longer cancels following.
Added new smart follow variable to window to more intuitively follow
sprites that may not be directly followable at all times.
Follow sprite is now canceled when dragging the screen but not
scrolling. This is only relevant when testing title sequences in game.
Select sprite button is now disabled in the title menu.
Sprites are now identified based on their name. Excess identification
information is not given as it'd clutter up the screen and is not
necissary with the viewbox in the command editor.
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>