Files
Cameron LennoxandGitHub 5d95b50db9 Component Traits. (#17665)
* Drippy component

* Converts disabilities to components.

* Makes weaver a component

* living

* Update vorestation.dme

* Update weaver.dm

* yeah tis

* no spawn

* yes

* signals hell yeah

* Teaching

* yeaaah

* makes gargoyle follow the law

* whoops

* return properly

* wah

* Update station.dm
2025-05-15 00:59:47 -07:00

33 lines
889 B
Plaintext

/datum/component/epilepsy_disability
var/mob/living/owner
/datum/component/epilepsy_disability/Initialize()
if (!isliving(parent))
return COMPONENT_INCOMPATIBLE
owner = parent
RegisterSignal(owner, COMSIG_HANDLE_DISABILITIES, PROC_REF(process_component))
/datum/component/epilepsy_disability/proc/process_component()
if (QDELETED(parent))
return
if(isbelly(owner.loc))
return
if(owner.stat != CONSCIOUS)
return
if(owner.transforming)
return
if((prob(1) && prob(1) && owner.paralysis < 1))
to_chat(owner, span_red("You have a seizure!"))
for(var/mob/O in viewers(owner, null))
if(O == owner)
continue
O.show_message(span_danger("[owner] starts having a seizure!"), 1)
owner.Paralyse(10)
owner.make_jittery(1000)
/datum/component/epilepsy_disability/Destroy(force = FALSE)
UnregisterSignal(owner, COMSIG_HANDLE_DISABILITIES)
owner = null
. = ..()