diff --git a/code/datums/looping_sounds/machinery_sounds.dm b/code/datums/looping_sounds/machinery_sounds.dm index 1e8ce73e992..aca5b6bdec2 100644 --- a/code/datums/looping_sounds/machinery_sounds.dm +++ b/code/datums/looping_sounds/machinery_sounds.dm @@ -91,11 +91,12 @@ 'sound/machines/tcomms/tcomms_mid7.ogg' = 1, ) mid_length = 1.8 SECONDS - extra_range = -11 - falloff_distance = 1 + extra_range = -8 + falloff_distance = 3 falloff_exponent = 5 - volume = 50 + volume = 35 ignore_walls = FALSE + pressure_affected = FALSE /datum/looping_sound/computer start_sound = 'sound/machines/computer/computer_start.ogg' diff --git a/code/game/machinery/telecomms/machines/hub.dm b/code/game/machinery/telecomms/machines/hub.dm index 7831056c81e..e84f1571736 100644 --- a/code/game/machinery/telecomms/machines/hub.dm +++ b/code/game/machinery/telecomms/machines/hub.dm @@ -34,6 +34,25 @@ use_power(idle_power_usage) +/obj/machinery/telecomms/hub/update_power() + var/old_on = on + if (toggled && (machine_stat & (BROKEN|NOPOWER|EMPED))) + on = FALSE + soundloop.stop() + else + on = TRUE + soundloop.start() + if(old_on != on) + update_appearance() + +/obj/machinery/telecomms/hub/Initialize(mapload) + . = ..() + soundloop = new(src, on) + +/obj/machinery/telecomms/hub/Destroy() + QDEL_NULL(soundloop) + return ..() + //Preset HUB /obj/machinery/telecomms/hub/preset diff --git a/code/game/machinery/telecomms/telecomunications.dm b/code/game/machinery/telecomms/telecomunications.dm index 6844eb4ec6a..95d5ca581ca 100644 --- a/code/game/machinery/telecomms/telecomunications.dm +++ b/code/game/machinery/telecomms/telecomunications.dm @@ -104,7 +104,6 @@ GLOBAL_LIST_EMPTY(telecomms_list) /obj/machinery/telecomms/Initialize(mapload) . = ..() - soundloop = new(src, on) GLOB.telecomms_list += src if(mapload && autolinkers.len) return INITIALIZE_HINT_LATELOAD @@ -118,7 +117,6 @@ GLOBAL_LIST_EMPTY(telecomms_list) /obj/machinery/telecomms/Destroy() GLOB.telecomms_list -= src - QDEL_NULL(soundloop) for(var/obj/machinery/telecomms/comm in GLOB.telecomms_list) remove_link(comm) links = list() @@ -150,13 +148,10 @@ GLOBAL_LIST_EMPTY(telecomms_list) if(toggled) if(machine_stat & (BROKEN|NOPOWER|EMPED)) // if powered, on. if not powered, off. if too damaged, off on = FALSE - soundloop.stop() else on = TRUE - soundloop.start() else on = FALSE - soundloop.stop() if(old_on != on) update_appearance() diff --git a/sound/machines/tcomms/tcomms_mid1.ogg b/sound/machines/tcomms/tcomms_mid1.ogg index a954227cbcb..e9b7f00579b 100644 Binary files a/sound/machines/tcomms/tcomms_mid1.ogg and b/sound/machines/tcomms/tcomms_mid1.ogg differ diff --git a/sound/machines/tcomms/tcomms_mid2.ogg b/sound/machines/tcomms/tcomms_mid2.ogg index c5b4514c9b3..a1ee098f408 100644 Binary files a/sound/machines/tcomms/tcomms_mid2.ogg and b/sound/machines/tcomms/tcomms_mid2.ogg differ diff --git a/sound/machines/tcomms/tcomms_mid3.ogg b/sound/machines/tcomms/tcomms_mid3.ogg index f14cd0764b9..c730d748876 100644 Binary files a/sound/machines/tcomms/tcomms_mid3.ogg and b/sound/machines/tcomms/tcomms_mid3.ogg differ diff --git a/sound/machines/tcomms/tcomms_mid4.ogg b/sound/machines/tcomms/tcomms_mid4.ogg index 65abda08fea..dbbfe894b0d 100644 Binary files a/sound/machines/tcomms/tcomms_mid4.ogg and b/sound/machines/tcomms/tcomms_mid4.ogg differ diff --git a/sound/machines/tcomms/tcomms_mid5.ogg b/sound/machines/tcomms/tcomms_mid5.ogg index 2f8c9347870..31320e7a772 100644 Binary files a/sound/machines/tcomms/tcomms_mid5.ogg and b/sound/machines/tcomms/tcomms_mid5.ogg differ diff --git a/sound/machines/tcomms/tcomms_mid6.ogg b/sound/machines/tcomms/tcomms_mid6.ogg index 18459acb270..d89546910cd 100644 Binary files a/sound/machines/tcomms/tcomms_mid6.ogg and b/sound/machines/tcomms/tcomms_mid6.ogg differ diff --git a/sound/machines/tcomms/tcomms_mid7.ogg b/sound/machines/tcomms/tcomms_mid7.ogg index 3917a28fba0..1a06ab53fea 100644 Binary files a/sound/machines/tcomms/tcomms_mid7.ogg and b/sound/machines/tcomms/tcomms_mid7.ogg differ