fixes deleted cultists still being considered cultists (#24336)

This commit is contained in:
GDN
2024-03-06 14:28:18 +00:00
committed by GitHub
parent 980af06a6b
commit 00c0f22788
3 changed files with 9 additions and 4 deletions
+2
View File
@@ -164,6 +164,7 @@
cult_objs.study(cult_mind.current)
to_chat(cult_mind.current, "<span class='motd'>For more information, check the wiki page: ([GLOB.configuration.url.wiki_url]/index.php/Cultist)</span>")
RegisterSignal(cult_mind.current, COMSIG_MOB_STATCHANGE, PROC_REF(cultist_stat_change))
RegisterSignal(cult_mind.current, COMSIG_PARENT_QDELETING, PROC_REF(remove_cultist))
return TRUE
/datum/game_mode/proc/remove_cultist(datum/mind/cult_mind, show_message = TRUE, remove_gear = FALSE, mob/target_mob)
@@ -204,6 +205,7 @@
cultist.visible_message("<span class='cult'>[cultist] looks like [cultist.p_they()] just reverted to [cultist.p_their()] old faith!</span>",
"<span class='userdanger'>An unfamiliar white light flashes through your mind, cleansing the taint of [SSticker.cultdat ? SSticker.cultdat.entity_title1 : "Nar'Sie"] and the memories of your time as their servant with it.</span>")
UnregisterSignal(cult_mind.current, COMSIG_MOB_STATCHANGE)
UnregisterSignal(cult_mind.current, COMSIG_PARENT_QDELETING)
/datum/game_mode/proc/add_cult_immunity(mob/living/target)
ADD_TRAIT(target, TRAIT_CULT_IMMUNITY, CULT_TRAIT)
@@ -57,7 +57,6 @@
return ..()
/mob/living/simple_animal/hostile/construct/death(gibbed)
SSticker.mode.remove_cultist(show_message = FALSE, target_mob = src)
if(held_body) // Null check for empty bodies
held_body.forceMove(get_turf(src))
SSticker.mode.add_cult_immunity(held_body)
@@ -71,7 +70,11 @@
held_body.cancel_camera()
new /obj/effect/temp_visual/cult/sparks(get_turf(src))
playsound(src, 'sound/effects/pylon_shatter.ogg', 40, TRUE)
. = ..()
return ..()
/mob/living/simple_animal/hostile/construct/Destroy()
SSticker.mode.remove_cultist(show_message = FALSE, target_mob = src)
return ..()
/mob/living/simple_animal/hostile/construct/proc/add_held_body(atom/movable/body)
held_body = body
@@ -38,9 +38,9 @@
. = ..()
icon_state = SSticker.cultdat?.shade_icon_state
/mob/living/simple_animal/shade/death(gibbed)
. = ..()
/mob/living/simple_animal/shade/Destroy()
SSticker.mode.remove_cultist(show_message = FALSE, target_mob = src)
return ..()
/mob/living/simple_animal/shade/attackby(obj/item/O, mob/user) //Marker -Agouri
if(istype(O, /obj/item/soulstone))