mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-29 16:10:02 +01:00
Iterative Explosions (#3838)
This PR replaces recursive explosions with a new spreading engine: iterative explosions. Should behave similarly, but also be more reliable, potentially faster. Iterative explosions also support simple-explosion-esque directional explosion sounds/shake, and will now traverse Z-levels if the explosion is strong enough. Also changes playsound() to transmit sounds across Z-levels. Uses BYOND's 3rd coordinate on /sound to make sound sound above/below the player if they're using headphones. Removed for now, can't get Z-falloff working right. Fixes #2199.
This commit is contained in:
@@ -17,6 +17,8 @@ var/datum/controller/subsystem/atlas/SSatlas
|
||||
var/map_override // If set, SSatlas will forcibly load this map. If the map does not exist, mapload will fail and SSatlas will panic.
|
||||
var/list/spawn_locations = list()
|
||||
|
||||
var/list/connected_z_cache = list()
|
||||
|
||||
/datum/controller/subsystem/atlas/New()
|
||||
NEW_SS_GLOBAL(SSatlas)
|
||||
|
||||
@@ -103,6 +105,8 @@ var/datum/controller/subsystem/atlas/SSatlas
|
||||
var/obj/effect/landmark/map_data/marker = thing
|
||||
marker.setup()
|
||||
|
||||
connected_z_cache.Cut()
|
||||
|
||||
/datum/controller/subsystem/atlas/proc/get_selected_map()
|
||||
if (config.override_map)
|
||||
if (known_maps[config.override_map])
|
||||
|
||||
Reference in New Issue
Block a user