From 60fe91a62254df3aaf0ccaf4274af7ff877b43c2 Mon Sep 17 00:00:00 2001 From: "johnsonmt88@gmail.com" Date: Sat, 8 Sep 2012 19:50:10 +0000 Subject: [PATCH] I ticked the wrong file in... mob.dm in the last commit did nothing. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4658 316c924e-a436-60f5-8080-3fe189b3f50e --- code/modules/mob/living/say.dm | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index 7aebd6ef676..347b0d11774 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -280,8 +280,7 @@ var/list/department_radio_keys = list( listening|=M var/turf/T = get_turf(src) - var/list/V = view(message_range, T) - var/list/W = V + var/list/W = view(message_range, T) for (var/obj/O in ((W | contents)-used_radios)) W |= O @@ -289,10 +288,21 @@ var/list/department_radio_keys = list( for (var/mob/M in W) W |= M.contents - for (var/obj/O in W) //radio in pocket could work, radio in backpack wouldn't --rastaf0 - spawn (0) - if(O && !istype(O.loc, /obj/item/weapon/storage)) - O.hear_talk(src, message) + for (var/atom/A in W) + if(istype(A, /mob/living/simple_animal/parrot)) //Parrot speech mimickry + if(A == src) + continue //Dont imitate ourselves + + var/mob/living/simple_animal/parrot/P = A + if(P.speech_buffer.len >= 10) + P.speech_buffer.Remove(pick(P.speech_buffer)) + P.speech_buffer.Add(message) + + if(istype(A, /obj/)) //radio in pocket could work, radio in backpack wouldn't --rastaf0 + var/obj/O = A + spawn (0) + if(O && !istype(O.loc, /obj/item/weapon/storage)) + O.hear_talk(src, message) /* Commented out as replaced by code above from BS12