diff options
author | Johannes Schickel | 2011-04-18 15:57:04 +0200 |
---|---|---|
committer | Johannes Schickel | 2011-04-18 15:59:34 +0200 |
commit | 7b4a4d9fa65fb843c1fed77197e7cd21ca7f93b8 (patch) | |
tree | 600130f772946fc8a07b5bf6d800434bd0a8e666 /engines | |
parent | 12af50f2ffd7b000ac97a5cea0a596c96fb54924 (diff) | |
parent | 1d60b266879d58663827e7ce0b727c201433394d (diff) | |
download | scummvm-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.cpp | 9 | ||||
-rw-r--r-- | engines/engine.cpp | 12 | ||||
-rw-r--r-- | engines/tinsel/sound.cpp | 16 |
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; |