mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-30 03:22:41 +00:00
21 lines
556 B
Plaintext
21 lines
556 B
Plaintext
/datum/element/empprotection
|
|
element_flags = ELEMENT_DETACH | ELEMENT_BESPOKE
|
|
id_arg_index = 2
|
|
var/flags = NONE
|
|
|
|
/datum/element/empprotection/Attach(datum/target, _flags)
|
|
. = ..()
|
|
if(. == ELEMENT_INCOMPATIBLE || !isatom(target))
|
|
return ELEMENT_INCOMPATIBLE
|
|
flags = _flags
|
|
RegisterSignal(target, COMSIG_ATOM_EMP_ACT, .proc/getEmpFlags)
|
|
|
|
/datum/element/empprotection/Detach(atom/target)
|
|
UnregisterSignal(target, COMSIG_ATOM_EMP_ACT)
|
|
return ..()
|
|
|
|
/datum/element/empprotection/proc/getEmpFlags(datum/source, severity)
|
|
SIGNAL_HANDLER
|
|
|
|
return flags
|