The linked list index is only meant to be used for accessing the linked lists. Using the wrong variable is unlikely to cause issues for this exact case but it makes things cleaner.
* Change the spatial insert to make it ordered
This is so that the spatial index can be rebuilt and gauranteed to be in the correct order
* Increment Network Version
* Make review changes
* Remove the gSpriteSpatialIndex from the network
* Use safer get function
* Final little tweak
A single car on a coaster can comprise of multiple vehicles. One of those vehicles will be the car head vehicle. The train can comprise of multiple cars. Therefore not all vehicle->IsHead 's will be in SPRITE_LIST_TRAIN_HEAD. This rename makes that slightly more clear
The warnings reported were:
```
../src/openrct2/peep/GuestPathfinding.cpp: In function ‘Direction peep_pathfind_choose_direction(TileCoordsXYZ, Peep*)’:
../src/openrct2/peep/GuestPathfinding.cpp:1371:81: error: ‘void* memset(void*, int, size_t)’ writing to an object of non-trivial type ‘struct<unnamed>’; use assignment instead [-Werror=class-memaccess]
1371 | std::memset(_peepPathFindHistory, 0xFF, sizeof(_peepPathFindHistory));
| ^
../src/openrct2/peep/GuestPathfinding.cpp:35:1: note: ‘struct<unnamed>’ declared here
35 | {
| ^
../src/openrct2/world/Sprite.cpp: In function ‘void reset_sprite_list()’:
../src/openrct2/world/Sprite.cpp:152:52: error: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘union rct_sprite’; use assignment or value-initialization instead [-Werror=class-memaccess]
152 | std::memset(_spriteList, 0, sizeof(_spriteList));
| ^
In file included from ../src/openrct2/world/Sprite.cpp:10:
../src/openrct2/world/Sprite.h:117:7: note: ‘union rct_sprite’ declared here
117 | union rct_sprite
| ^~~~~~~~~~
```
* Make Map::map_get_first_element_at() use CoordsXY
* Fix clang-format on ClearAction.hpp
* Prefer TileDIrectionDelta over hardcoded delta on RideConstruction
* Use named Direction constants
* Make Compat::map_get_first_element_at() use CoordsXY
* Refactor jumping_fountain_update to Update
* Refactor jumping_fountain_get_type to GetType
* Refactor jumping_fountain_continue to Continue
Fix typos and misc refactoring
* Refactor begin and create functions into static member functions
Move jumping_fountain_begin and jumping_fountain_create into the rct_jumping_fountain struct and make them static
* Refactor remaining fountain functionality into member functions
* Rename JumpingFountain struct and move to proper header file
JumpingFountain code was refactored to conform to variable naming conventions and moved into the Fountain.h file.
rct_sprite_generic struct was moved to SpriteBase.h - this was done to get around a circular header dependency between Fountain.h and Sprite.h
* Set access modifier for private functions
* Change JumpingFountain variable names to TitleCase
* Refactor #9474: Clarify where auto is being used with pointers
* Refactor #9474: Change function names for clarity
* Refactor #9474: Fix incorrect function names