datum
Vars | |
abstract_type | If set, a path at/above this one that expects not to be instantiated. |
---|---|
extensions | Lazylist (Type paths - Types of /datum/extension ). List of extensions currently set for this datum. |
gc_destroyed | Int. world.time when this datum was destroyed, or GC_CURRENTLY_BEING_QDELETED if currently being deleted. Controlled by qdel() . |
instance_configurator | If this datum is pooled, the last configurator applied (if any). |
instance_pool | If this datum is pooled, the pool it belongs to. |
is_processing | Whether or not this datum is currently being processed, and by which subsystem. Controlled by the various START_PROCESSING*() and STOP_PROCESSING*() defines. |
weakref | One-way reference to a /weakref instance that refers to this datum, if one exists. |
Procs | |
Destroy | Default implementation of clean-up code.
This should be overridden to remove all references pointing to the object being destroyed.
Return the appropriate QDEL_HINT ; in most cases this is QDEL_HINT_QUEUE . |
IsAbstract | If true, this datum is an instance of an abstract type. Oops. |
Process | The processing handler for this datum. Called regularly by the relevant subsystem defined by is_processing . |
apply_visual | Applies visual overlays relating to viewing through a specific datum, i.e. cameras. |
remove_visual | Removes visual overlays relating to viewing through a specific datum, i.e. cameras. |
ui_data | Data to be sent to the UI. This must be implemented for a UI to work. |
ui_interact | The ui_interact proc is used to open and update Nano UIs If ui_interact is not used then the UI will not update correctly ui_interact is currently defined for /atom/movable |
Var Details
abstract_type
If set, a path at/above this one that expects not to be instantiated.
extensions
Lazylist (Type paths - Types of /datum/extension
). List of extensions currently set for this datum.
Not recommended to set or reference directly. See the following procs instead:
/proc/set_extension()
/proc/get_or_create_extension()
/proc/get_extension()
/proc/has_extension()
/proc/construct_extension_instance()
/proc/remove_extension()
gc_destroyed
Int. world.time
when this datum was destroyed, or GC_CURRENTLY_BEING_QDELETED
if currently being deleted. Controlled by qdel()
.
instance_configurator
If this datum is pooled, the last configurator applied (if any).
instance_pool
If this datum is pooled, the pool it belongs to.
is_processing
Whether or not this datum is currently being processed, and by which subsystem. Controlled by the various START_PROCESSING*()
and STOP_PROCESSING*()
defines.
weakref
One-way reference to a /weakref
instance that refers to this datum, if one exists.
Proc Details
Destroy
Default implementation of clean-up code.
This should be overridden to remove all references pointing to the object being destroyed.
Return the appropriate QDEL_HINT
; in most cases this is QDEL_HINT_QUEUE
.
IsAbstract
If true, this datum is an instance of an abstract type. Oops.
Process
The processing handler for this datum. Called regularly by the relevant subsystem defined by is_processing
.
Return PROCESS_KILL
to tell the subsystem to stop processing this datum.
apply_visual
Applies visual overlays relating to viewing through a specific datum, i.e. cameras.
remove_visual
Removes visual overlays relating to viewing through a specific datum, i.e. cameras.
ui_data
Data to be sent to the UI. This must be implemented for a UI to work.
@param user /mob The mob who interacting with the UI @param ui_key string A string key to use for this UI. Allows for multiple unique UIs on one obj/mob (defaut value "main")
@return data /list Data to be sent to the UI
ui_interact
The ui_interact proc is used to open and update Nano UIs If ui_interact is not used then the UI will not update correctly ui_interact is currently defined for /atom/movable
@param user /mob The mob who is interacting with this UI @param ui_key string A string key to use for this UI. Allows for multiple unique UIs on one obj/mob (defaut value "main") @param ui /datum/nanoui This parameter is passed by the nanoui process() proc when updating an open UI @param force_open boolean Force the UI to (re)open, even if it's already open
@return nothing