Files
GS13NG/code/controllers/subsystem/disease.dm
CitadelStationBot 4463646952 [MIRROR] MC Runlevels (#988)
* MC Runlevels

* Update ticker.dm

* Delete ticker.dm.rej
2017-05-18 12:42:43 -05:00

42 lines
1.0 KiB
Plaintext

SUBSYSTEM_DEF(disease)
name = "Disease"
flags = SS_KEEP_TIMING|SS_NO_INIT
runlevels = RUNLEVEL_GAME | RUNLEVEL_POSTGAME
var/list/currentrun = list()
var/list/processing = list()
var/list/diseases
var/list/archive_diseases = list()
var/static/list/list_symptoms = subtypesof(/datum/symptom)
/datum/controller/subsystem/disease/PreInit()
if(!diseases)
diseases = subtypesof(/datum/disease)
/datum/controller/subsystem/disease/Recover()
currentrun = SSdisease.currentrun
processing = SSdisease.processing
diseases = SSdisease.diseases
archive_diseases = SSdisease.archive_diseases
/datum/controller/subsystem/disease/stat_entry(msg)
..("P:[processing.len]")
/datum/controller/subsystem/disease/fire(resumed = 0)
if(!resumed)
src.currentrun = processing.Copy()
//cache for sanic speed (lists are references anyways)
var/list/currentrun = src.currentrun
while(currentrun.len)
var/datum/thing = currentrun[currentrun.len]
currentrun.len--
if(thing)
thing.process()
else
processing.Remove(thing)
if (MC_TICK_CHECK)
return