|
|
|
@@ -20,7 +20,7 @@
|
|
|
|
|
if (src.stat == 2)
|
|
|
|
|
return src.say_dead(message)
|
|
|
|
|
|
|
|
|
|
if (src.stat && said_last_words) // TIME TO WHISPER WHILE IN CRIT
|
|
|
|
|
if (src.stat)
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
var/alt_name = ""
|
|
|
|
@@ -31,9 +31,6 @@
|
|
|
|
|
if (src.sdisabilities & MUTE)
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
if(M_WHISPER in src.mutations)
|
|
|
|
|
src.say(message)
|
|
|
|
|
|
|
|
|
|
if (istype(src.wear_mask, /obj/item/clothing/mask/muzzle))
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
@@ -52,12 +49,12 @@
|
|
|
|
|
temp_message[H] = ninjaspeak(temp_message[H])
|
|
|
|
|
pick_list -= H
|
|
|
|
|
message = list2text(temp_message, " ")
|
|
|
|
|
message = replacetext(message, "o", "¤")
|
|
|
|
|
message = replacetext(message, "p", "þ")
|
|
|
|
|
message = replacetext(message, "l", "£")
|
|
|
|
|
message = replacetext(message, "s", "§")
|
|
|
|
|
message = replacetext(message, "u", "µ")
|
|
|
|
|
message = replacetext(message, "b", "ß")
|
|
|
|
|
message = replacetext(message, "o", "?")
|
|
|
|
|
message = replacetext(message, "p", "?")
|
|
|
|
|
message = replacetext(message, "l", "?")
|
|
|
|
|
message = replacetext(message, "s", "?")
|
|
|
|
|
message = replacetext(message, "u", "?")
|
|
|
|
|
message = replacetext(message, "b", "?")
|
|
|
|
|
|
|
|
|
|
if (src.stuttering)
|
|
|
|
|
message = stutter(message)
|
|
|
|
@@ -87,11 +84,6 @@
|
|
|
|
|
|
|
|
|
|
var/list/heard_a = list() // understood us
|
|
|
|
|
var/list/heard_b = list() // didn't understand us
|
|
|
|
|
var/and_passes_on=""
|
|
|
|
|
if(!said_last_words && src.isInCrit())
|
|
|
|
|
and_passes_on=" - and passes on"
|
|
|
|
|
said_last_words=src.stat
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for (var/mob/M in listening)
|
|
|
|
|
if (M.say_understands(src))
|
|
|
|
@@ -103,9 +95,9 @@
|
|
|
|
|
|
|
|
|
|
for (var/mob/M in watching)
|
|
|
|
|
if (M.say_understands(src))
|
|
|
|
|
rendered = "<span class='game say'><span class='name'>[src.name]</span> whispers something[and_passes_on].</span>"
|
|
|
|
|
rendered = "<span class='game say'><span class='name'>[src.name]</span> whispers something.</span>"
|
|
|
|
|
else
|
|
|
|
|
rendered = "<span class='game say'><span class='name'>[src.voice_name]</span> whispers something[and_passes_on].</span>"
|
|
|
|
|
rendered = "<span class='game say'><span class='name'>[src.voice_name]</span> whispers something.</span>"
|
|
|
|
|
M.show_message(rendered, 2)
|
|
|
|
|
|
|
|
|
|
if (length(heard_a))
|
|
|
|
@@ -114,7 +106,8 @@
|
|
|
|
|
if (italics)
|
|
|
|
|
message_a = "<i>[message_a]</i>"
|
|
|
|
|
//This appears copied from carbon/living say.dm so the istype check for mob is probably not needed. Appending for src is also not needed as the game will check that automatically.
|
|
|
|
|
rendered = "<span class='game say'><span class='name'>[GetVoice()]</span>[alt_name] whispers, <span class='message'>\"[message_a]\"</span>[and_passes_on]</span>"
|
|
|
|
|
rendered = "<span class='game say'><span class='name'>[GetVoice()]</span>[alt_name] whispers, <span class='message'>\"[message_a]\"</span></span>"
|
|
|
|
|
|
|
|
|
|
for (var/mob/M in heard_a)
|
|
|
|
|
M.show_message(rendered, 2)
|
|
|
|
|
|
|
|
|
@@ -126,7 +119,7 @@
|
|
|
|
|
if (italics)
|
|
|
|
|
message_b = "<i>[message_b]</i>"
|
|
|
|
|
|
|
|
|
|
rendered = "<span class='game say'><span class='name'>[src.voice_name]</span> whispers, <span class='message'>\"[message_b]\"</span>[and_passes_on]</span>"
|
|
|
|
|
rendered = "<span class='game say'><span class='name'>[src.voice_name]</span> whispers, <span class='message'>\"[message_b]\"</span></span>"
|
|
|
|
|
|
|
|
|
|
for (var/mob/M in heard_b)
|
|
|
|
|
M.show_message(rendered, 2)
|
|
|
|
@@ -135,23 +128,18 @@
|
|
|
|
|
if (M.say_understands(src))
|
|
|
|
|
var/message_c
|
|
|
|
|
message_c = stars(message)
|
|
|
|
|
rendered = "<span class='game say'><span class='name'>[GetVoice()]</span>[alt_name] whispers, <span class='message'>\"[message_c]\"</span>[and_passes_on]</span>"
|
|
|
|
|
rendered = "<span class='game say'><span class='name'>[GetVoice()]</span>[alt_name] whispers, <span class='message'>\"[message_c]\"</span></span>"
|
|
|
|
|
M.show_message(rendered, 2)
|
|
|
|
|
else
|
|
|
|
|
rendered = "<span class='game say'><span class='name'>[src.voice_name]</span> whispers something[and_passes_on].</span>"
|
|
|
|
|
rendered = "<span class='game say'><span class='name'>[src.voice_name]</span> whispers something.</span>"
|
|
|
|
|
M.show_message(rendered, 2)
|
|
|
|
|
|
|
|
|
|
if (italics)
|
|
|
|
|
message = "<i>[message]</i>"
|
|
|
|
|
rendered = "<span class='game say'><span class='name'>[GetVoice()]</span>[alt_name] whispers, <span class='message'>\"[message]\"</span>[and_passes_on]</span>"
|
|
|
|
|
rendered = "<span class='game say'><span class='name'>[GetVoice()]</span>[alt_name] whispers, <span class='message'>\"[message]\"</span></span>"
|
|
|
|
|
|
|
|
|
|
for (var/mob/M in dead_mob_list)
|
|
|
|
|
if (!(M.client))
|
|
|
|
|
continue
|
|
|
|
|
if (M.stat > 1 && !(M in heard_a) && (M.client.prefs.toggles & CHAT_GHOSTEARS))
|
|
|
|
|
M.show_message(rendered, 2)
|
|
|
|
|
if(said_last_words)
|
|
|
|
|
src.stat = 2
|
|
|
|
|
src.death(0)
|
|
|
|
|
src.regenerate_icons()
|
|
|
|
|
|
|
|
|
|