diff --git a/code/modules/mob/emote.dm b/code/modules/mob/emote.dm index e2125ada66c..c33732ed133 100644 --- a/code/modules/mob/emote.dm +++ b/code/modules/mob/emote.dm @@ -38,13 +38,15 @@ // Type 1 (Visual) emotes are sent to anyone in view of the item if (m_type & 1) - for (var/mob/O in viewers(src, null)) + var/list/can_see = get_mobs_in_view(1,src) //Allows silicon & mmi mobs carried around to see the emotes of the person carrying them around. + can_see |= viewers(src,null) + for (var/mob/O in can_see) O.show_message(message, m_type) // Type 2 (Audible) emotes are sent to anyone in hear range // of the *LOCATION* -- this is important for pAIs to be heard else if (m_type & 2) - for (var/mob/O in hearers(get_turf(src), null)) + for (var/mob/O in get_mobs_in_view(7,src)) O.show_message(message, m_type) /mob/proc/emote_dead(var/message)