diff options
-rw-r--r-- | engines/agi/agi.cpp | 12 | ||||
-rw-r--r-- | engines/agi/agi.h | 2 |
2 files changed, 14 insertions, 0 deletions
diff --git a/engines/agi/agi.cpp b/engines/agi/agi.cpp index 3619b08c9d..c67cfae4ab 100644 --- a/engines/agi/agi.cpp +++ b/engines/agi/agi.cpp @@ -622,6 +622,7 @@ AgiEngine::AgiEngine(OSystem *syst, const AGIGameDescription *gameDesc) : AgiBas // Setup mixer _mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, ConfMan.getInt("sfx_volume")); _mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, ConfMan.getInt("music_volume")); + _mixer->setVolumeForSoundType(Audio::Mixer::kPlainSoundType, ConfMan.getInt("music_volume")); const GameSettings *g; @@ -812,4 +813,15 @@ int AgiEngine::go() { return _rtl; } +void AgiEngine::syncSoundSettings() { + int soundVolumeMusic = ConfMan.getInt("music_volume"); + int soundVolumeSFX = ConfMan.getInt("music_volume"); + int soundVolumeSpeech = ConfMan.getInt("music_volume"); + + _mixer->setVolumeForSoundType(Audio::Mixer::kPlainSoundType, soundVolumeMusic); + _mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, soundVolumeMusic); + _mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, soundVolumeSFX); + _mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, soundVolumeSpeech); +} + } // End of namespace Agi diff --git a/engines/agi/agi.h b/engines/agi/agi.h index 9f12ccd57c..ec290b812d 100644 --- a/engines/agi/agi.h +++ b/engines/agi/agi.h @@ -753,6 +753,8 @@ public: return _gameId; } + virtual void syncSoundSettings(); + private: int _keyQueue[KEY_QUEUE_SIZE]; |