1
0
Fork 0
mirror of https://github.com/luanti-org/luanti.git synced 2025-06-27 16:36:03 +00:00

Add sound volume when unfocused setting (#14083)

This adds a new setting to set sound volume multiplier when Minetest window is unfocused/inactive (sound_volume_unfocused, located in Settings > Graphics and Audio > Audio > Volume when unfocused).

If the window is not focused, the sound volume will be multiplied by sound_volume_unfocused setting. The sound volume will be set back to sound_volume again when the window is focused.
This commit is contained in:
Muhammad Rifqi Priyo Susanto 2023-12-11 01:11:39 +07:00 committed by GitHub
parent 321bcf5c44
commit 55fafb7d25
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 38 additions and 14 deletions

View file

@ -3209,19 +3209,7 @@ void Game::updateSound(f32 dtime)
camera->getDirection(),
camera->getCameraNode()->getUpVector());
bool mute_sound = g_settings->getBool("mute_sound");
if (mute_sound) {
sound_manager->setListenerGain(0.0f);
} else {
// Check if volume is in the proper range, else fix it.
float old_volume = g_settings->getFloat("sound_volume");
float new_volume = rangelim(old_volume, 0.0f, 1.0f);
sound_manager->setListenerGain(new_volume);
if (old_volume != new_volume) {
g_settings->setFloat("sound_volume", new_volume);
}
}
sound_volume_control(sound_manager.get(), device->isWindowActive());
// Tell the sound maker whether to make footstep sounds
soundmaker->makes_footstep_sound = player->makes_footstep_sound;