diff --git a/code/game/objects/items/devices/translator.dm b/code/game/objects/items/devices/translator.dm
index 49128a6fca..0bb26b32bc 100644
--- a/code/game/objects/items/devices/translator.dm
+++ b/code/game/objects/items/devices/translator.dm
@@ -16,11 +16,15 @@
if(!listening) //Turning ON
langset = input(user,"Translate to which of your languages?","Language Selection") as null|anything in user.languages
if(langset)
- listening = 1
- listening_objects |= src
- if(mult_icons)
- icon_state = "[initial(icon_state)]1"
- to_chat(user, "You enable \the [src], translating into [langset.name].")
+ if(langset && ((langset.flags & NONVERBAL) || (langset.flags & HIVEMIND)))
+ to_chat(user, "\The [src] cannot output that language.")
+ return
+ else
+ listening = 1
+ listening_objects |= src
+ if(mult_icons)
+ icon_state = "[initial(icon_state)]1"
+ to_chat(user, "You enable \the [src], translating into [langset.name].")
else //Turning OFF
listening = 0
listening_objects -= src