mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2025-12-27 02:32:20 +00:00
Renames most processing SS' to the convention of SS[SS name here] (#25302)
* Renames most processing SS' * Contra review
This commit is contained in:
42
code/controllers/subsystem/processing/SSprocessing.dm
Normal file
42
code/controllers/subsystem/processing/SSprocessing.dm
Normal file
@@ -0,0 +1,42 @@
|
||||
//Used to process objects. Fires once every second.
|
||||
|
||||
SUBSYSTEM_DEF(processing)
|
||||
name = "Processing"
|
||||
priority = FIRE_PRIORITY_PROCESS
|
||||
flags = SS_BACKGROUND|SS_POST_FIRE_TIMING|SS_NO_INIT
|
||||
wait = 10
|
||||
|
||||
var/stat_tag = "P" //Used for logging
|
||||
var/list/processing = list()
|
||||
var/list/currentrun = list()
|
||||
offline_implications = "Objects using the default processor will no longer process. Shuttle call recommended."
|
||||
|
||||
/datum/controller/subsystem/processing/get_stat_details()
|
||||
return "[stat_tag]:[length(processing)]"
|
||||
|
||||
/datum/controller/subsystem/processing/get_metrics()
|
||||
. = ..()
|
||||
var/list/cust = list()
|
||||
cust["processing"] = length(processing)
|
||||
.["custom"] = cust
|
||||
|
||||
/datum/controller/subsystem/processing/fire(resumed = 0)
|
||||
if(!resumed)
|
||||
currentrun = processing.Copy()
|
||||
//cache for sanic speed (lists are references anyways)
|
||||
var/list/current_run = currentrun
|
||||
|
||||
while(length(current_run))
|
||||
var/datum/thing = current_run[length(current_run)]
|
||||
current_run.len--
|
||||
if(QDELETED(thing))
|
||||
processing -= thing
|
||||
else if(thing.process(wait) == PROCESS_KILL)
|
||||
// fully stop so that a future START_PROCESSING will work
|
||||
STOP_PROCESSING(src, thing)
|
||||
if(MC_TICK_CHECK)
|
||||
return
|
||||
|
||||
/datum/proc/process()
|
||||
set waitfor = 0
|
||||
return PROCESS_KILL
|
||||
Reference in New Issue
Block a user