* Replace RIDE_ENTRY_INDEX_NULL with OBJECT_ENTRY_INDEX_NULL
Ride entries are objects like any other, so there is little point having separate constants.
* Use ride_id_t in many more places
* Change RIDE_ID_NULL to 0xFFFF
* Increment network version
* Update replays
Co-authored-by: duncanspumpkin <duncans_pumpkin@hotmail.co.uk>
* Split FileStream declarations and definitions
* Split JobPool declarations and definitions
* Split StringBuilder declarations and definitions
* Split StringReader declarations and definitions
* Split ZoomLevel declarations and definitions
* Fix missing include in FileClassifier.cpp
* Remove pragma once from source files
* Fix missing include in StringBuilder.h
* Update Xcode project
* Fix compilation of tests
Co-authored-by: Michael Steenbeek <m.o.steenbeek@gmail.com>
* Make UpdateFixing*() methods use const where possible
To make it clearer which steps actually modify the ride being fixed and which do not, pass const Ride* instead of Ride* where possible.
* Extract maximum litter search distance to a constant
* Make peep_update_*() methods return bool
* Use Direction type and helpers where applicable
* Const correctness and other cleanup
Make many functions take a const Peep* / const Staff* to clarify that they do not modify the peep being passed in. Also use the Direction type for some return values, and simplify staff_is_location_on_patrol_edge.
* Use clearer expression of constant value
Co-authored-by: Michael Steenbeek <m.o.steenbeek@gmail.com>
* Convert staff functions to members
* Remove AsStaff const overload
* Use As<Staff>() instead of static_cast
* Simplify direction selection code
* Clean up use of magic constants
Co-authored-by: Michael Steenbeek <m.o.steenbeek@gmail.com>
This moves some knowledge out of the window and into the main code and also cleans up the window a bit.
This also allows setting the "x guests by the end of year y" goal for no money scenarios, which was not the case previously.
Mistake made during implementation but issue only surfaces recently when the types were increased to 32bit. Removed #12210 as this was hiding the source issue and is no longer required.