well that works
This commit is contained in:
25
code/datums/elements/dusts_on_catatonia.dm
Normal file
25
code/datums/elements/dusts_on_catatonia.dm
Normal file
@@ -0,0 +1,25 @@
|
||||
/datum/element/dusts_on_catatonia
|
||||
element_flags = ELEMENT_DETACH
|
||||
var/list/mob/attached_mobs = list()
|
||||
|
||||
/datum/element/dusts_on_catatonia/Attach(datum/target,penalize = FALSE)
|
||||
. = ..()
|
||||
if(!ismob(target))
|
||||
return ELEMENT_INCOMPATIBLE
|
||||
var/mob/M = target
|
||||
if(!(M in attached_mobs))
|
||||
attached_mobs += M
|
||||
START_PROCESSING(SSprocessing,src)
|
||||
|
||||
/datum/element/dusts_on_catatonia/Detach(mob/M)
|
||||
. = ..()
|
||||
if(M in attached_mobs)
|
||||
attached_mobs -= M
|
||||
if(!attached_mobs.len)
|
||||
STOP_PROCESSING(SSprocessing,src)
|
||||
|
||||
/datum/element/dusts_on_catatonia/process()
|
||||
for(var/mob/M in attached_mobs)
|
||||
if(!M.key && !M.get_ghost())
|
||||
M.dust(force = TRUE)
|
||||
Detach(M)
|
||||
@@ -627,6 +627,7 @@
|
||||
SSjob.equip_loadout(null, new_spawn, FALSE)
|
||||
SSquirks.AssignQuirks(new_spawn, new_spawn.client, TRUE, TRUE, null, FALSE, new_spawn)
|
||||
new_spawn.AddElement(/datum/element/ghost_role_eligibility)
|
||||
new_spawn.AddElement(/datum/element/dusts_on_catatonia)
|
||||
ADD_TRAIT(new_spawn, TRAIT_SIXTHSENSE, GHOSTROLE_TRAIT)
|
||||
ADD_TRAIT(new_spawn,TRAIT_EXEMPT_HEALTH_EVENTS,GHOSTROLE_TRAIT)
|
||||
to_chat(new_spawn,"<span class='boldwarning'>You maybe sharing your cafe with some ninja-captured individuals, so make sure to only interact with the ghosts you hear as a ghost!</span>")
|
||||
|
||||
@@ -469,6 +469,7 @@
|
||||
#include "code\datums\diseases\advance\symptoms\youth.dm"
|
||||
#include "code\datums\elements\_element.dm"
|
||||
#include "code\datums\elements\cleaning.dm"
|
||||
#include "code\datums\elements\dusts_on_catatonia.dm"
|
||||
#include "code\datums\elements\earhealing.dm"
|
||||
#include "code\datums\elements\ghost_role_eligibility.dm"
|
||||
#include "code\datums\helper_datums\events.dm"
|
||||
|
||||
Reference in New Issue
Block a user