aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorJohannes Schickel2011-04-18 15:57:04 +0200
committerJohannes Schickel2011-04-18 15:59:34 +0200
commit7b4a4d9fa65fb843c1fed77197e7cd21ca7f93b8 (patch)
tree600130f772946fc8a07b5bf6d800434bd0a8e666 /engines
parent12af50f2ffd7b000ac97a5cea0a596c96fb54924 (diff)
parent1d60b266879d58663827e7ce0b727c201433394d (diff)
downloadscummvm-rg350-7b4a4d9fa65fb843c1fed77197e7cd21ca7f93b8.tar.gz
scummvm-rg350-7b4a4d9fa65fb843c1fed77197e7cd21ca7f93b8.tar.bz2
scummvm-rg350-7b4a4d9fa65fb843c1fed77197e7cd21ca7f93b8.zip
Merge pull request "New mixer mute handling."
See https://github.com/scummvm/scummvm/pull/12 for more information.
Diffstat (limited to 'engines')
-rw-r--r--engines/draci/sound.cpp9
-rw-r--r--engines/engine.cpp12
-rw-r--r--engines/tinsel/sound.cpp16
3 files changed, 17 insertions, 20 deletions
diff --git a/engines/draci/sound.cpp b/engines/draci/sound.cpp
index c8646fff67..0df19794f7 100644
--- a/engines/draci/sound.cpp
+++ b/engines/draci/sound.cpp
@@ -417,15 +417,16 @@ void Sound::setVolume() {
} else {
_muteSound = _muteVoice = true;
}
+
if (ConfMan.getBool("mute")) {
_muteSound = _muteVoice = true;
}
- const int soundVolume = _muteSound ? 0: ConfMan.getInt("sfx_volume");
- const int speechVolume = _muteVoice ? 0 : ConfMan.getInt("speech_volume");
+ _mixer->muteSoundType(Audio::Mixer::kSFXSoundType, _muteSound);
+ _mixer->muteSoundType(Audio::Mixer::kSpeechSoundType, _muteVoice);
- _mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, soundVolume);
- _mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, speechVolume);
+ _mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, ConfMan.getInt("sfx_volume"));
+ _mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, ConfMan.getInt("speech_volume"));
}
} // End of namespace Draci
diff --git a/engines/engine.cpp b/engines/engine.cpp
index 0e5e58bc72..71f9b68f44 100644
--- a/engines/engine.cpp
+++ b/engines/engine.cpp
@@ -439,10 +439,14 @@ void Engine::syncSoundSettings() {
if (ConfMan.hasKey("mute"))
mute = ConfMan.getBool("mute");
- _mixer->setVolumeForSoundType(Audio::Mixer::kPlainSoundType, (mute ? 0 : Audio::Mixer::kMaxMixerVolume));
- _mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, (mute ? 0 : soundVolumeMusic));
- _mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, (mute ? 0 : soundVolumeSFX));
- _mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, (mute ? 0 : soundVolumeSpeech));
+ _mixer->muteSoundType(Audio::Mixer::kPlainSoundType, mute);
+ _mixer->muteSoundType(Audio::Mixer::kMusicSoundType, mute);
+ _mixer->muteSoundType(Audio::Mixer::kSFXSoundType, mute);
+ _mixer->muteSoundType(Audio::Mixer::kSpeechSoundType, mute);
+ _mixer->setVolumeForSoundType(Audio::Mixer::kPlainSoundType, Audio::Mixer::kMaxMixerVolume);
+ _mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, soundVolumeMusic);
+ _mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, soundVolumeSFX);
+ _mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, soundVolumeSpeech);
}
void Engine::flipMute() {
diff --git a/engines/tinsel/sound.cpp b/engines/tinsel/sound.cpp
index 9a08b6224b..304223ed61 100644
--- a/engines/tinsel/sound.cpp
+++ b/engines/tinsel/sound.cpp
@@ -131,13 +131,9 @@ bool SoundManager::playSample(int id, Audio::Mixer::SoundType type, Audio::Sound
error(FILE_IS_CORRUPT, _vm->getSampleFile(sampleLanguage));
// FIXME: Should set this in a different place ;)
- bool mute = false;
- if (ConfMan.hasKey("mute"))
- mute = ConfMan.getBool("mute");
-
- _vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, mute ? 0 : _vm->_config->_soundVolume);
+ _vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, _vm->_config->_soundVolume);
//_vm->_mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, soundVolumeMusic);
- _vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, mute ? 0 : _vm->_config->_voiceVolume);
+ _vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, _vm->_config->_voiceVolume);
Audio::AudioStream *sampleStream = 0;
@@ -325,13 +321,9 @@ bool SoundManager::playSample(int id, int sub, bool bLooped, int x, int y, int p
}
// FIXME: Should set this in a different place ;)
- bool mute = false;
- if (ConfMan.hasKey("mute"))
- mute = ConfMan.getBool("mute");
-
- _vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, mute ? 0 : _vm->_config->_soundVolume);
+ _vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, _vm->_config->_soundVolume);
//_vm->_mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, soundVolumeMusic);
- _vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, mute ? 0 : _vm->_config->_voiceVolume);
+ _vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, _vm->_config->_voiceVolume);
curChan->sampleNum = id;
curChan->subSample = sub;