Turns events into vars instead of a list, to greatly simplify qdel() cleanup.

This commit is contained in:
PsiOmegaDelta
2015-12-14 13:44:05 +01:00
parent 3996c2a57a
commit 7d7aa4b50b
8 changed files with 69 additions and 57 deletions
+2 -2
View File
@@ -48,13 +48,13 @@
unregister_buffer(buffer_object)
buffer_object = buffer
if(buffer_object)
buffer_object.register(OBSERVER_EVENT_DESTROY, src, /obj/item/device/multitool/proc/unregister_buffer)
buffer_object.destruction.register(src, /obj/item/device/multitool/proc/unregister_buffer)
/obj/item/device/multitool/proc/unregister_buffer(var/atom/buffer_to_unregister)
// Only remove the buffered object, don't reset the name
// This means one cannot know if the buffer has been destroyed until one attempts to use it.
if(buffer_to_unregister == buffer_object && buffer_object)
buffer_object.unregister(OBSERVER_EVENT_DESTROY, src)
buffer_object.destruction.unregister(src)
buffer_object = null
/obj/item/device/multitool/resolve_attackby(atom/A, mob/user)