* Actually fixes announcements the right way
* Flips the SOUND_ANNOUNCEMENTS bitflag so that having it means you hear announcements
* Updates the save file version
* "I'm not sure what shadowlight was thinking"
PRing this for shaps because their shit is broke.
Announcement sounds will now be on by default instead of being muted for everybody.
* Does what Phil says
* woops
On sybil, during a round, lag happened and this was at the top of the profile (no idea if this is the actual cause, but the profile i took on sybil 10 minute before didn't have it at the top), the avg run time was ~2ds per run, meaning each astar call leads to about 4 byond ticks getting lost. I suspect that most calls to AStar are much less and that this was certain extreme edge cases taking a long amount.
* Wrote a /reachableAdjacentAtmosTurfs proc that checks if a turf can be accessed via atmos
* Made airborne disease spreading only via atmos
* A* generic turfs checking proc can now take into account unsimulated turfs using an argument
* Fixes ling stings not working in space and floorbot not repairing hull breaches
* Added a generic (array based) heap data structure
* Changed A* to use a heap open set instead of a priority queue
* Fixed A* not checking for already processed turfs
* Fixed A* number of traversed nodes not being updated on new route
* Changed the heuristic proc for every A* calls to /turf/proc/Distance_cardinal, since A* now only progress in cardinal directions
* Moves PriorityQueue data structure out of the AStar file, and into it's own file in /__DATSTRUCTURES
* Adds Stacks, a data structure, to /__DATASTRUCTURES
* Adds Linked Lists, a data structure, to /__DATASTRUCTURES
Fixes poly from smashing herself constantly against windows trying to reach unreacheable items.
Changed the way AStar selects the adjacent turfs from each turf, taking in count the capabilities of the object or mob who will move. For example, being able to pass over tables.
The new system will use the bitflag atmos_adjacent_turfs to reach for adjacent turfs and CanPass().
Fixes#436