In-code key handling system

This commit is contained in:
ninjanomnom
2017-11-30 07:40:27 -05:00
parent c57cd6d6da
commit 7b7b67edd8
44 changed files with 421 additions and 1648 deletions

View File

@@ -17,6 +17,7 @@
/datum/proc/Destroy(force=FALSE, ...)
tag = null
weak_reference = null //ensure prompt GCing of weakref.
var/list/timers = active_timers
active_timers = null
for(var/thing in timers)
@@ -24,6 +25,7 @@
if (timer.spent)
continue
qdel(timer)
var/list/dc = datum_components
if(dc)
var/all_components = dc[/datum/component]
@@ -35,4 +37,11 @@
var/datum/component/C = all_components
qdel(C, FALSE, TRUE)
dc.Cut()
var/list/focusers = src.focusers
if(focusers)
for(var/i in 1 to focusers.len)
var/mob/M = focusers[i]
M.set_focus(M)
return QDEL_HINT_QUEUE