From ac23355576d94c2ccb8a7258c2365d1ea8540cf0 Mon Sep 17 00:00:00 2001 From: datlo Date: Sun, 10 Nov 2019 04:39:18 +0100 Subject: [PATCH] Prevent offstation roles from being converted (#12577) --- code/game/gamemodes/cult/cult.dm | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/code/game/gamemodes/cult/cult.dm b/code/game/gamemodes/cult/cult.dm index 1cc55d99f0c..99b70f03b28 100644 --- a/code/game/gamemodes/cult/cult.dm +++ b/code/game/gamemodes/cult/cult.dm @@ -9,24 +9,26 @@ var/global/list/all_cults = list() /proc/is_convertable_to_cult(datum/mind/mind) if(!mind) - return 0 + return FALSE if(!mind.current) - return 0 + return FALSE if(iscultist(mind.current)) - return 1 //If they're already in the cult, assume they are convertable + return TRUE //If they're already in the cult, assume they are convertable if(ishuman(mind.current) && (mind.assigned_role in list("Captain", "Chaplain"))) - return 0 + return FALSE if(ishuman(mind.current)) var/mob/living/carbon/human/H = mind.current - if(ismindshielded(H)) - return 0 + if(ismindshielded(H)) //mindshield protects against conversions unless removed + return FALSE + if(mind.offstation_role) //cant convert offstation roles such as ghost spawns + return FALSE if(issilicon(mind.current)) - return 0 //can't convert machines, that's ratvar's thing + return FALSE //can't convert machines, that's ratvar's thing if(isguardian(mind.current)) var/mob/living/simple_animal/hostile/guardian/G = mind.current if(!iscultist(G.summoner)) - return 0 //can't convert it unless the owner is converted - return 1 + return FALSE //can't convert it unless the owner is converted + return TRUE /proc/is_sacrifice_target(datum/mind/mind) if(SSticker.mode.name == "cult")