diff --git a/code/datums/emotes.dm b/code/datums/emotes.dm index 9f2753dfee..47f3ccbe4f 100644 --- a/code/datums/emotes.dm +++ b/code/datums/emotes.dm @@ -61,6 +61,15 @@ user.visible_message(msg) log_emote("[key_name(user)] : [msg]") +/datum/emote/proc/replace_pronoun(mob/user, message) + if(findtext(message, "their")) + message = replacetext(message, "their", user.p_their()) + if(findtext(message, "them")) + message = replacetext(message, "them", user.p_them()) + if(findtext(message, "%s")) + message = replacetext(message, "%s", user.p_s()) + return message + /datum/emote/proc/select_message_type(mob/user) . = message if(!muzzle_ignore && user.is_muzzled() && emote_type == EMOTE_AUDIBLE) diff --git a/code/datums/emotes.dm.rej b/code/datums/emotes.dm.rej new file mode 100644 index 0000000000..b0f0f50adc --- /dev/null +++ b/code/datums/emotes.dm.rej @@ -0,0 +1,10 @@ +diff a/code/datums/emotes.dm b/code/datums/emotes.dm (rejected hunks) +@@ -35,6 +35,8 @@ + if(params && message_param) + msg = select_param(user, params) + ++ msg = replace_pronoun(user, msg) ++ + var/mob/living/L = user + for(var/obj/item/weapon/implant/I in L.implants) + I.trigger(key, L) diff --git a/code/modules/mob/living/emote.dm b/code/modules/mob/living/emote.dm index cacd433fec..a0aa88779b 100644 --- a/code/modules/mob/living/emote.dm +++ b/code/modules/mob/living/emote.dm @@ -420,6 +420,9 @@ message = null emote_type = EMOTE_VISIBLE +/datum/emote/living/custom/replace_pronoun(mob/user, message) + return message + /datum/emote/living/help key = "help"