mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 10:21:11 +00:00
40 lines
620 B
Plaintext
40 lines
620 B
Plaintext
var/datum/subsystem/event/SSevent
|
|
|
|
var/list/events = list()
|
|
|
|
|
|
/datum/subsystem/event
|
|
name = "Event"
|
|
wait = 2 SECONDS
|
|
flags = SS_NO_INIT | SS_KEEP_TIMING
|
|
priority = SS_PRIORITY_EVENT
|
|
|
|
var/list/currentrun
|
|
|
|
|
|
/datum/subsystem/event/New()
|
|
NEW_SS_GLOBAL(SSevent)
|
|
|
|
|
|
/datum/subsystem/event/stat_entry()
|
|
..("E:[events.len]")
|
|
|
|
|
|
/datum/subsystem/event/fire(resumed = FALSE)
|
|
if (!resumed)
|
|
currentrun = events.Copy()
|
|
|
|
while (currentrun.len)
|
|
var/datum/event/E = currentrun[currentrun.len]
|
|
currentrun.len--
|
|
|
|
if (!E || E.gcDestroyed)
|
|
continue
|
|
|
|
E.process()
|
|
|
|
if (MC_TICK_CHECK)
|
|
return
|
|
|
|
checkEvent()
|