aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/sword2/sword2.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/engines/sword2/sword2.cpp b/engines/sword2/sword2.cpp
index 3cdab2bd2b..58958c509a 100644
--- a/engines/sword2/sword2.cpp
+++ b/engines/sword2/sword2.cpp
@@ -334,10 +334,14 @@ void Sword2Engine::syncSoundSettings() {
// Our own settings dialog can mute the music, speech and sound effects
// individually. ScummVM's settings dialog has one master mute setting.
- if (ConfMan.getBool("mute")) {
- ConfMan.setBool("music_mute", true);
- ConfMan.setBool("speech_mute", true);
- ConfMan.setBool("sfx_mute", true);
+ if (ConfMan.hasKey("mute")) {
+ ConfMan.setBool("music_mute", ConfMan.getBool("mute"));
+ ConfMan.setBool("speech_mute", ConfMan.getBool("mute"));
+ ConfMan.setBool("sfx_mute", ConfMan.getBool("mute"));
+
+ if (!ConfMan.getBool("mute")) // it is false
+ // So remove it in order to let individual volumes work
+ ConfMan.removeKey("mute", ConfMan.getActiveDomainName());
}
_sound->muteMusic(ConfMan.getBool("music_mute"));