mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 18:22:39 +00:00
33 lines
856 B
Plaintext
33 lines
856 B
Plaintext
/turf
|
|
var/list/affecting_lights
|
|
var/atom/movable/lighting_overlay/lighting_overlay
|
|
|
|
/turf/proc/reconsider_lights()
|
|
for(var/datum/light_source/L in affecting_lights)
|
|
L.vis_update()
|
|
|
|
/turf/proc/lighting_clear_overlays()
|
|
if(lighting_overlay)
|
|
qdel(lighting_overlay)
|
|
|
|
/turf/proc/lighting_build_overlays()
|
|
if(!lighting_overlay)
|
|
var/area/A = loc
|
|
if(A.lighting_use_dynamic)
|
|
var/atom/movable/lighting_overlay/O = PoolOrNew(/atom/movable/lighting_overlay, src)
|
|
lighting_overlay = O
|
|
|
|
//Make the light sources recalculate us so the lighting overlay updates immediately
|
|
for(var/datum/light_source/L in affecting_lights)
|
|
L.calc_turf(src)
|
|
|
|
/turf/Entered(atom/movable/obj)
|
|
. = ..()
|
|
if(obj && obj.opacity)
|
|
reconsider_lights()
|
|
|
|
/turf/Exited(atom/movable/obj)
|
|
. = ..()
|
|
if(obj && obj.opacity)
|
|
reconsider_lights()
|