@@ -385,13 +385,22 @@ GLOBAL_LIST_INIT(special_radio_keys, list(
385385
386386/ mob / living/ proc / radio(message, list / message_mods = list (), list / spans, language)
387387 var /obj /item/implant/radio/imp = locate () in src
388+ var /obj /item/radio/radio = get_item_by_slot(ITEM_SLOT_EARS )
388389 if (imp && imp. radio. on)
389390 if (message_mods[MODE_HEADSET ])
390- imp. radio. talk_into(src , message, null , spans, language, message_mods)
391- return ITALICS | REDUCE_RANGE
391+ if (radio?. use_command)
392+ radio. radio. talk_into(src , message, null , spans, language, message_mods)
393+ return ITALICS | REDUCE_RANGE
394+ else
395+ imp. radio. talk_into(src , message, null , spans, language, message_mods)
396+ return ITALICS | REDUCE_RANGE
392397 if (message_mods[RADIO_EXTENSION ] == MODE_DEPARTMENT || (message_mods[RADIO_EXTENSION ] in imp. radio. channels))
393- imp. radio. talk_into(src , message, message_mods[RADIO_EXTENSION ], spans, language, message_mods)
394- return ITALICS | REDUCE_RANGE
398+ if (radio?. use_command)
399+ radio. radio. talk_into(src , message, message_mods[RADIO_EXTENSION ], spans, language, message_mods)
400+ return ITALICS | REDUCE_RANGE
401+ else
402+ imp. radio. talk_into(src , message, message_mods[RADIO_EXTENSION ], spans, language, message_mods)
403+ return ITALICS | REDUCE_RANGE
395404
396405 switch (message_mods[RADIO_EXTENSION ])
397406 if (MODE_RADIO )
0 commit comments