aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/cge2/cge2.h1
-rw-r--r--engines/cge2/toolbar.cpp11
2 files changed, 10 insertions, 2 deletions
diff --git a/engines/cge2/cge2.h b/engines/cge2/cge2.h
index 05afd2640d..38b48aaa23 100644
--- a/engines/cge2/cge2.h
+++ b/engines/cge2/cge2.h
@@ -218,6 +218,7 @@ public:
void switchSay();
void checkSaySwitch();
void initToolbar();
+ void initVolumeSwitch(Sprite *volSwitch);
void checkSounds();
diff --git a/engines/cge2/toolbar.cpp b/engines/cge2/toolbar.cpp
index 2604a2fee7..51614af8ed 100644
--- a/engines/cge2/toolbar.cpp
+++ b/engines/cge2/toolbar.cpp
@@ -281,9 +281,16 @@ void CGE2Engine::initToolbar() {
_vol[1] = _vga->_showQ->locate(kMvolRef);
if (_vol[0])
- _vol[0]->step(ConfMan.getInt("sfx_volume") / kSoundNumtoStateRate);
+ initVolumeSwitch(_vol[0]);
if (_vol[1])
- _vol[1]->step(ConfMan.getInt("music_volume") / kSoundNumtoStateRate);
+ initVolumeSwitch(_vol[1]);
+}
+
+void CGE2Engine::initVolumeSwitch(Sprite *volSwitch) {
+ int state = 0;
+ if (!ConfMan.getBool("mute"))
+ state = ConfMan.getInt("sfx_volume") / kSoundNumtoStateRate;
+ volSwitch->step(state);
}
} // End of namespace CGE2