diff --git a/code/modules/mob/living/carbon/alien/humanoid/emote.dm b/code/modules/mob/living/carbon/alien/humanoid/emote.dm index 83a8576f397..b5a34511527 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/emote.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/emote.dm @@ -1,4 +1,4 @@ -/mob/living/carbon/alien/humanoid/emote(var/act) +/mob/living/carbon/alien/humanoid/emote(var/act,var/m_type=1,var/message = null) var/param = null if (findtext(act, "-", 1, null)) @@ -6,8 +6,6 @@ param = copytext(act, t1 + 1, length(act) + 1) act = copytext(act, 1, t1) var/muzzled = istype(src.wear_mask, /obj/item/clothing/mask/muzzle) - var/m_type = 1 - var/message switch(act) if("sign") @@ -92,6 +90,25 @@ if (!src.paralysis) src.paralysis += 2 message = text("[] collapses!", src) m_type = 2 + if ("me") + if(silent) + return + if (src.client && (client.muted || client.muted_complete)) + src << "You are muted." + return + if (stat) + return + if(!(message)) + return + else + if(cmptext(copytext(message, 1, 3), "v ")) + message = "[src] [copytext(message, 3)]" + m_type = 1 + else if(cmptext(copytext(message, 1, 3), "h ")) + message = "[src] [copytext(message, 3)]" + m_type = 2 + else + message = "[src] [message]" if("help") src << "burp, deathgasp, choke, collapse, dance, drool, gasp, shiver, gnarl, jump, moan, nod, roar, roll, scratch,\nscretch, shake, sign-#, sit, sulk, sway, tail, twitch, whimper" else diff --git a/code/modules/mob/living/carbon/alien/larva/emote.dm b/code/modules/mob/living/carbon/alien/larva/emote.dm index a01cadc361d..34a0911f77e 100644 --- a/code/modules/mob/living/carbon/alien/larva/emote.dm +++ b/code/modules/mob/living/carbon/alien/larva/emote.dm @@ -1,4 +1,4 @@ -/mob/living/carbon/alien/larva/emote(var/act) +/mob/living/carbon/alien/larva/emote(var/act,var/m_type=1,var/message = null) var/param = null if (findtext(act, "-", 1, null)) @@ -6,8 +6,6 @@ param = copytext(act, t1 + 1, length(act) + 1) act = copytext(act, 1, t1) var/muzzled = istype(src.wear_mask, /obj/item/clothing/mask/muzzle) - var/m_type = 1 - var/message switch(act) if("sign") @@ -89,6 +87,25 @@ if (!src.paralysis) src.paralysis += 2 message = text("[] collapses!", src) m_type = 2 + if ("me") + if(silent) + return + if (src.client && (client.muted || client.muted_complete)) + src << "You are muted." + return + if (stat) + return + if(!(message)) + return + else + if(cmptext(copytext(message, 1, 3), "v ")) + message = "[src] [copytext(message, 3)]" + m_type = 1 + else if(cmptext(copytext(message, 1, 3), "h ")) + message = "[src] [copytext(message, 3)]" + m_type = 2 + else + message = "[src] [message]" if("help") src << "burp, choke, collapse, dance, drool, gasp, shiver, gnarl, jump, moan, nod, roll, scratch,\nscretch, shake, sign-#, sulk, sway, tail, twitch, whimper" else diff --git a/code/modules/mob/living/carbon/metroid/emote.dm b/code/modules/mob/living/carbon/metroid/emote.dm index 8fb37d48a62..65ce5189597 100644 --- a/code/modules/mob/living/carbon/metroid/emote.dm +++ b/code/modules/mob/living/carbon/metroid/emote.dm @@ -1,4 +1,4 @@ -/mob/living/carbon/metroid/emote(var/act) +/mob/living/carbon/metroid/emote(var/act,var/m_type=1,var/message = null) if (findtext(act, "-", 1, null)) @@ -6,9 +6,6 @@ //param = copytext(act, t1 + 1, length(act) + 1) act = copytext(act, 1, t1) - var/m_type = 1 - var/message - switch(act) if("moan") message = "The [src.name] moans." @@ -45,6 +42,25 @@ if("shriek") message = "The [src.name] makes a high-pitched shriek!" m_type = 1 + if ("me") + if(silent) + return + if (src.client && (client.muted || client.muted_complete)) + src << "You are muted." + return + if (stat) + return + if(!(message)) + return + else + if(cmptext(copytext(message, 1, 3), "v ")) + message = "[src] [copytext(message, 3)]" + m_type = 1 + else if(cmptext(copytext(message, 1, 3), "h ")) + message = "[src] [copytext(message, 3)]" + m_type = 2 + else + message = "[src] [message]" else src << text("Invalid Emote: []", act) if ((message && src.stat == 0)) diff --git a/code/modules/mob/living/carbon/monkey/emote.dm b/code/modules/mob/living/carbon/monkey/emote.dm index 37d64603352..b555982764b 100644 --- a/code/modules/mob/living/carbon/monkey/emote.dm +++ b/code/modules/mob/living/carbon/monkey/emote.dm @@ -1,4 +1,4 @@ -/mob/living/carbon/monkey/emote(var/act) +/mob/living/carbon/monkey/emote(var/act,var/m_type=1,var/message = null) var/param = null if (findtext(act, "-", 1, null)) @@ -6,8 +6,6 @@ param = copytext(act, t1 + 1, length(act) + 1) act = copytext(act, 1, t1) var/muzzled = istype(src.wear_mask, /obj/item/clothing/mask/muzzle) - var/m_type = 1 - var/message switch(act) if("sign") @@ -92,6 +90,25 @@ if("deathgasp") message = "The [src.name] lets out a faint chimper as it collapses and stops moving..." m_type = 1 + if ("me") + if(silent) + return + if (src.client && (client.muted || client.muted_complete)) + src << "You are muted." + return + if (stat) + return + if(!(message)) + return + else + if(cmptext(copytext(message, 1, 3), "v ")) + message = "[src] [copytext(message, 3)]" + m_type = 1 + else if(cmptext(copytext(message, 1, 3), "h ")) + message = "[src] [copytext(message, 3)]" + m_type = 2 + else + message = "[src] [message]" if("help") src << "choke, collapse, dance, deathgasp, drool, gasp, shiver, gnarl, jump, paw, moan, nod, roar, roll, scratch,\nscretch, shake, sign-#, sit, sulk, sway, tail, twitch, whimper" else diff --git a/code/modules/mob/living/silicon/robot/emote.dm b/code/modules/mob/living/silicon/robot/emote.dm index 7d6740e9136..d5e7b4514e8 100644 --- a/code/modules/mob/living/silicon/robot/emote.dm +++ b/code/modules/mob/living/silicon/robot/emote.dm @@ -1,11 +1,9 @@ -/mob/living/silicon/robot/emote(var/act) +/mob/living/silicon/robot/emote(var/act,var/m_type=1,var/message = null) var/param = null if (findtext(act, "-", 1, null)) var/t1 = findtext(act, "-", 1, null) param = copytext(act, t1 + 1, length(act) + 1) act = copytext(act, 1, t1) - var/m_type = 1 - var/message switch(act) if ("salute") @@ -186,8 +184,34 @@ playsound(src.loc, 'buzz-sigh.ogg', 50, 0) m_type = 2 + if("law") + message = "[src] shows its legal authorization barcode." + + playsound(src.loc, 'biamthelaw.ogg', 50, 0) + m_type = 2 + + if ("me") + if(silent) + return + if (src.client && (client.muted || client.muted_complete)) + src << "You are muted." + return + if (stat) + return + if(!(message)) + return + else + if(cmptext(copytext(message, 1, 3), "v ")) + message = "[src] [copytext(message, 3)]" + m_type = 1 + else if(cmptext(copytext(message, 1, 3), "h ")) + message = "[src] [copytext(message, 3)]" + m_type = 2 + else + message = "[src] [message]" + if("help") - src << "beep-(none)/mob, ping-(none)/mob, buzz-(none)/mob, look-(none)/mob, stare-(none)/mob, glare-(none)/mob, twitch, twitch_s" + src << "beep-(none)/mob, ping-(none)/mob, buzz-(none)/mob, look-(none)/mob, stare-(none)/mob, glare-(none)/mob, twitch, twitch_s, law" else src << text("Invalid Emote: []", act) diff --git a/code/modules/mob/say.dm b/code/modules/mob/say.dm index 6c741402696..f584b312272 100644 --- a/code/modules/mob/say.dm +++ b/code/modules/mob/say.dm @@ -17,10 +17,7 @@ message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN)) - if(ishuman(src)) - usr.emote("me",1,message) - else - usr.emote(message) + usr.emote("me",1,message) /mob/proc/say_dead(var/message) var/name = src.real_name