From 611c8506394e97cb846bd9cb20495cbe8c88d12e Mon Sep 17 00:00:00 2001 From: Putnam Date: Sat, 8 Feb 2020 00:31:46 -0800 Subject: [PATCH] all you need to understand is everything you know is wrong --- code/modules/antagonists/_common/antag_datum.dm | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/code/modules/antagonists/_common/antag_datum.dm b/code/modules/antagonists/_common/antag_datum.dm index 0c05afb155..187ca66705 100644 --- a/code/modules/antagonists/_common/antag_datum.dm +++ b/code/modules/antagonists/_common/antag_datum.dm @@ -120,15 +120,16 @@ GLOBAL_LIST_EMPTY(antagonists) SEND_SIGNAL(owner.current, COMSIG_CLEAR_MOOD_EVENT, "antag_moodlet") /datum/antagonist/proc/remove_blacklisted_quirks() - var/mob/living/L = owner + var/mob/living/L = owner.current if(istype(L)) - var/list/cut = list() - cut = SSquirks.filter_quirks(L.roundstart_quirks,blacklisted_quirks) - for(var/q in cut) + var/list/my_quirks = L.client?.prefs.all_quirks.Copy() + SSquirks.filter_quirks(my_quirks,blacklisted_quirks) + for(var/q in L.roundstart_quirks) var/datum/quirk/Q = q - if(Q.antag_removal_text) - to_chat(L, "[Q.antag_removal_text]") - L.remove_quirk(Q.type) + if(!(SSquirks.quirk_name_by_path(Q.type) in my_quirks)) + if(initial(Q.antag_removal_text)) + to_chat(L, "[initial(Q.antag_removal_text)]") + L.remove_quirk(Q.type) //Returns the team antagonist belongs to if any. /datum/antagonist/proc/get_team()