mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 18:32:03 +00:00
29 lines
896 B
Plaintext
29 lines
896 B
Plaintext
/datum/controller/process/lighting
|
|
schedule_interval = 5 // every .5 second
|
|
|
|
/datum/controller/process/lighting/setup()
|
|
name = "lighting"
|
|
lighting_controller.Initialize()
|
|
|
|
/datum/controller/process/lighting/doWork()
|
|
lighting_controller.lights_workload_max = \
|
|
max(lighting_controller.lights_workload_max, lighting_controller.lights.len)
|
|
|
|
for(var/datum/light_source/L in lighting_controller.lights)
|
|
if(L && L.check())
|
|
lighting_controller.lights.Remove(L)
|
|
|
|
scheck()
|
|
|
|
lighting_controller.changed_turfs_workload_max = \
|
|
max(lighting_controller.changed_turfs_workload_max, lighting_controller.changed_turfs.len)
|
|
|
|
for(var/turf/T in lighting_controller.changed_turfs)
|
|
if(T && T.lighting_changed)
|
|
T.shift_to_subarea()
|
|
|
|
scheck()
|
|
|
|
if(lighting_controller.changed_turfs && lighting_controller.changed_turfs.len)
|
|
lighting_controller.changed_turfs.len = 0 // reset the changed list
|