diff --git a/code/modules/surgery/organs/augments_internal.dm b/code/modules/surgery/organs/augments_internal.dm index 53090e761cb..ba186aaa272 100644 --- a/code/modules/surgery/organs/augments_internal.dm +++ b/code/modules/surgery/organs/augments_internal.dm @@ -235,12 +235,22 @@ /obj/item/organ/internal/cyberimp/brain/speech_translator/emp_act(severity) if(emp_proof) return - if(owner && active) - to_chat(owner, "Your translator's safeties trigger, it is now turned off.") + if(owner && active && !crit_fail) + to_chat(owner, "Your translator implant shuts down with a harsh buzz.") + addtimer(CALLBACK(src, .proc/reboot), 60 SECONDS) + crit_fail = TRUE active = FALSE +/obj/item/organ/internal/cyberimp/brain/speech_translator/proc/reboot() + crit_fail = FALSE + if(owner) + to_chat(owner, "Your translator implant beeps.") + SEND_SOUND(owner, 'sound/machines/twobeep.ogg') + /obj/item/organ/internal/cyberimp/brain/speech_translator/ui_action_click() - if(owner && !active) + if(owner && crit_fail) + to_chat(owner, "The implant is still rebooting.") + else if(owner && !active) to_chat(owner, "You turn on your translator implant.") active = TRUE else if(owner && active)