diff --git a/modular_bluemoon/sound/radio/radio_broadband.ogg b/modular_bluemoon/sound/radio/radio_broadband.ogg new file mode 100644 index 0000000000000..684d60d9769ed Binary files /dev/null and b/modular_bluemoon/sound/radio/radio_broadband.ogg differ diff --git a/modular_bluemoon/sound/radio/radio_other.ogg b/modular_bluemoon/sound/radio/radio_other.ogg new file mode 100644 index 0000000000000..815d49eab52f1 Binary files /dev/null and b/modular_bluemoon/sound/radio/radio_other.ogg differ diff --git a/modular_bluemoon/sound/radio/radio_shortband.ogg b/modular_bluemoon/sound/radio/radio_shortband.ogg new file mode 100644 index 0000000000000..00c779360eef4 Binary files /dev/null and b/modular_bluemoon/sound/radio/radio_shortband.ogg differ diff --git a/modular_sand/code/game/objects/items/devices/radio/headset.dm b/modular_sand/code/game/objects/items/devices/radio/headset.dm index 8eca9a10c07f7..3be4e38593ae0 100644 --- a/modular_sand/code/game/objects/items/devices/radio/headset.dm +++ b/modular_sand/code/game/objects/items/devices/radio/headset.dm @@ -1,7 +1,12 @@ /obj/item/radio/headset - var/radiosound = 'modular_sand/sound/radio/common.ogg' + // Используем список для рандома + var/radiosound = list( + 'modular_bluemoon/sound/radio/radio_broadband.ogg', + 'modular_bluemoon/sound/radio/radio_shortband.ogg', + 'modular_bluemoon/sound/radio/radio_other.ogg' + ) -/obj/item/radio/headset/syndicate //disguised to look like a normal headset for stealth ops +/obj/item/radio/headset/syndicate radiosound = 'modular_sand/sound/radio/syndie.ogg' /obj/item/radio/headset/headset_sec @@ -10,6 +15,10 @@ /obj/item/radio/headset/talk_into(mob/living/M, message, channel, list/spans, datum/language/language, list/message_mods, direct = TRUE) if(!listening) return ITALICS | REDUCE_RANGE - if(on || (M || message) || !wires.is_cut(WIRE_TX) || M.IsVocal() || (!language || !initial(language.visual_language)) || radiosound) - playsound(M, radiosound, rand(20, 30), 0, 0, 1) - . = ..() + + if(on && M && message && !wires.is_cut(WIRE_TX) && M.IsVocal()) + var/sound_to_play = islist(radiosound) ? pick(radiosound) : radiosound + if(sound_to_play) + playsound(M, sound_to_play, rand(20, 30), FALSE, FALSE, TRUE) + + return ..()