Sound Mixer Part 2 (#89251)

## About The Pull Request
Part 1 by grungussuss: https://github.com/tgstation/tgstation/pull/87529


![image](https://github.com/user-attachments/assets/7711dbe1-4a70-4cd4-9d82-8eb3fb60c9e9)
## Why It's Good For The Game

gives players more control over how loud they want certain sounds to be
## Changelog
🆑 Rengan
sound: the volume that vox, admin sound, insturments play at can now be
tweaked in preferences, check your preferences!
sound: Elevator now uses ambience volume preference, jukeboxes uses
instrument volume preference and end of round musics uses admin music
volume preference.
/🆑
This commit is contained in:
RengaN02
2025-02-17 00:25:56 +01:00
committed by GitHub
parent c06f1fa09f
commit 44d991b526
22 changed files with 115 additions and 158 deletions
@@ -85,7 +85,8 @@
if(player && HAS_TRAIT(player, TRAIT_MUSICIAN) && isliving(M))
var/mob/living/L = M
L.apply_status_effect(/datum/status_effect/good_music)
if(!(M?.client?.prefs.read_preference(/datum/preference/toggle/sound_instruments)))
var/pref_volume = M?.client?.prefs.read_preference(/datum/preference/numeric/volume/sound_instruments)
if(!pref_volume)
continue
M.playsound_local(source, null, volume * using_instrument.volume_multiplier, sound_to_use = music_played)
M.playsound_local(source, null, volume * using_instrument.volume_multiplier * (pref_volume/100), sound_to_use = music_played)
// Could do environment and echo later but not for now
@@ -64,9 +64,10 @@
if(player && HAS_TRAIT(player, TRAIT_MUSICIAN) && isliving(M))
var/mob/living/L = M
L.apply_status_effect(/datum/status_effect/good_music)
if(!(M?.client?.prefs.read_preference(/datum/preference/toggle/sound_instruments)))
var/pref_volume = M?.client?.prefs.read_preference(/datum/preference/numeric/volume/sound_instruments)
if(!pref_volume)
continue
M.playsound_local(get_turf(parent), null, volume, FALSE, K.frequency, null, channel, null, copy)
M.playsound_local(get_turf(parent), null, volume * (pref_volume/100), FALSE, K.frequency, null, channel, null, copy)
// Could do environment and echo later but not for now
/**