mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 18:53:06 +00:00
Re-implements admin fun events as datums.
This commit is contained in:
31
code/controllers/Processes/initialize.dm
Normal file
31
code/controllers/Processes/initialize.dm
Normal file
@@ -0,0 +1,31 @@
|
||||
var/list/pending_init_objects
|
||||
|
||||
/datum/controller/process/initialize
|
||||
var/list/objects_to_initialize
|
||||
|
||||
/datum/controller/process/initialize/setup()
|
||||
name = "init"
|
||||
schedule_interval = 1 // Every tick, scary
|
||||
objects_to_initialize = pending_init_objects
|
||||
|
||||
/datum/controller/process/initialize/doWork()
|
||||
for(var/atom/movable/A in objects_to_initialize)
|
||||
A.initialize()
|
||||
scheck()
|
||||
objects_to_initialize.Remove(A)
|
||||
|
||||
if(!objects_to_initialize.len)
|
||||
disable()
|
||||
|
||||
/proc/initialize_object(var/atom/movable/obj_to_init)
|
||||
if(processScheduler.hasProcess("init"))
|
||||
var/datum/controller/process/initialize/init = processScheduler.getProcess("init")
|
||||
init.objects_to_initialize += obj_to_init
|
||||
init.enable()
|
||||
else
|
||||
world.log << "Not yet"
|
||||
if(!pending_init_objects) pending_init_objects = list()
|
||||
pending_init_objects += obj_to_init
|
||||
|
||||
/datum/controller/process/initialize/getStatName()
|
||||
return ..()+"([objects_to_initialize.len])"
|
||||
Reference in New Issue
Block a user