diff --git a/code/modules/mob/say_vr.dm b/code/modules/mob/say_vr.dm
index e4ffaec1e66..703aac2813f 100644
--- a/code/modules/mob/say_vr.dm
+++ b/code/modules/mob/say_vr.dm
@@ -184,10 +184,9 @@
for (var/mob/G in player_list)
if (istype(G, /mob/new_player))
continue
- else if(G.stat == DEAD && G.is_preference_enabled(/datum/client_preference/ghost_ears))
- if(!(src.is_preference_enabled(/datum/client_preference/whisubtle_vis)) && isobserver(G))
- continue
- to_chat(G, "\The [M] thinks, \"[message]\"")
+ else if(isobserver(G) && G.is_preference_enabled(/datum/client_preference/ghost_ears))
+ if(is_preference_enabled(/datum/client_preference/whisubtle_vis) || G.client.holder)
+ to_chat(G, "\The [M] thinks, \"[message]\"")
log_say(message,M)
else //There wasn't anyone to send the message to, pred or prey, so let's just say it instead and correct our psay just in case.
M.forced_psay = FALSE
@@ -266,10 +265,9 @@
for (var/mob/G in player_list)
if (istype(G, /mob/new_player))
continue
- else if(G.stat == DEAD && G.is_preference_enabled(/datum/client_preference/ghost_sight))
- if(!(src.is_preference_enabled(/datum/client_preference/whisubtle_vis)) && isobserver(G))
- continue
- to_chat(G, "\The [M] [message]")
+ else if(isobserver(G) && G.is_preference_enabled(/datum/client_preference/ghost_ears))
+ if(is_preference_enabled(/datum/client_preference/whisubtle_vis) || G.client.holder)
+ to_chat(G, "\The [M] [message]")
log_say(message,M)
else //There wasn't anyone to send the message to, pred or prey, so let's just emote it instead and correct our psay just in case.
M.forced_psay = FALSE