diff options
author | Jordi Vilalta Prat | 2010-09-08 09:37:33 +0000 |
---|---|---|
committer | Jordi Vilalta Prat | 2010-09-08 09:37:33 +0000 |
commit | 806ee79a7be5ca0dcb0e03d16021ed5eb92f0f27 (patch) | |
tree | ce2fc09c394b2d78cce1b9e2a876a49ea592f394 /engines | |
parent | 690fea29333daadd79d7bc305ee7fff040613b9f (diff) | |
download | scummvm-rg350-806ee79a7be5ca0dcb0e03d16021ed5eb92f0f27.tar.gz scummvm-rg350-806ee79a7be5ca0dcb0e03d16021ed5eb92f0f27.tar.bz2 scummvm-rg350-806ee79a7be5ca0dcb0e03d16021ed5eb92f0f27.zip |
GROOVIE: Improve sound handling.
- Obey the mute setting.
- Report the supported music types.
svn-id: r52633
Diffstat (limited to 'engines')
-rw-r--r-- | engines/groovie/detection.cpp | 15 | ||||
-rw-r--r-- | engines/groovie/groovie.cpp | 11 |
2 files changed, 18 insertions, 8 deletions
diff --git a/engines/groovie/detection.cpp b/engines/groovie/detection.cpp index b30c2361d2..a6a92eb521 100644 --- a/engines/groovie/detection.cpp +++ b/engines/groovie/detection.cpp @@ -54,7 +54,8 @@ static const GroovieGameDescription gameDescriptions[] = { { "t7g", "", AD_ENTRY1s("script.grv", "d1b8033b40aa67c076039881eccce90d", 16659), - Common::EN_ANY, Common::kPlatformPC, ADGF_NO_FLAGS, Common::GUIO_NONE + Common::EN_ANY, Common::kPlatformPC, ADGF_NO_FLAGS, + Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM }, kGroovieT7G, 0 }, @@ -64,7 +65,8 @@ static const GroovieGameDescription gameDescriptions[] = { { "t7g", "", AD_ENTRY1s("T7GMac", "a139540fa2be2247005ccf888b7231e3", 1830783), - Common::EN_ANY, Common::kPlatformMacintosh, ADGF_MACRESFORK, Common::GUIO_NONE + Common::EN_ANY, Common::kPlatformMacintosh, ADGF_MACRESFORK, + Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM }, kGroovieT7G, 0 }, @@ -78,7 +80,8 @@ static const GroovieGameDescription gameDescriptions[] = { { "intro.gjd", 0, NULL, 31711554}, { NULL, 0, NULL, 0} }, - Common::RU_RUS, Common::kPlatformPC, ADGF_NO_FLAGS, Common::GUIO_NONE + Common::RU_RUS, Common::kPlatformPC, ADGF_NO_FLAGS, + Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM }, kGroovieT7G, 0 }, @@ -89,7 +92,8 @@ static const GroovieGameDescription gameDescriptions[] = { { "11h", "", AD_ENTRY1s("disk.1", "5c0428cd3659fc7bbcd0aa16485ed5da", 227), - Common::EN_ANY, Common::kPlatformPC, ADGF_NO_FLAGS, Common::GUIO_NONE + Common::EN_ANY, Common::kPlatformPC, ADGF_NO_FLAGS, + Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM }, kGroovieV2, 1 }, @@ -99,7 +103,8 @@ static const GroovieGameDescription gameDescriptions[] = { { "11h", "Demo", AD_ENTRY1s("disk.1", "aacb32ce07e0df2894bd83a3dee40c12", 70), - Common::EN_ANY, Common::kPlatformPC, ADGF_DEMO, Common::GUIO_NOLAUNCHLOAD + Common::EN_ANY, Common::kPlatformPC, ADGF_DEMO, Common::GUIO_NOLAUNCHLOAD | + Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM }, kGroovieV2, 1 }, diff --git a/engines/groovie/groovie.cpp b/engines/groovie/groovie.cpp index cdf5171ab9..131604e75c 100644 --- a/engines/groovie/groovie.cpp +++ b/engines/groovie/groovie.cpp @@ -321,13 +321,18 @@ void GroovieEngine::errorString(const char *buf_input, char *buf_output, int buf } void GroovieEngine::syncSoundSettings() { - _musicPlayer->setUserVolume(ConfMan.getInt("music_volume")); - // VDX videos just contain one digital audio track, which can be used for + bool mute = ConfMan.getBool("mute"); + + // Set the music volume + _musicPlayer->setUserVolume(mute ? 0 : ConfMan.getInt("music_volume")); + + // Videos just contain one digital audio track, which can be used for // both SFX or Speech, but the engine doesn't know what they contain, so // we have to use just one volume setting for videos. // We use "speech" because most users will want to change the videos // volume when they can't hear the speech because of the music. - _mixer->setVolumeForSoundType(Audio::Mixer::kPlainSoundType, ConfMan.getInt("speech_volume")); + _mixer->setVolumeForSoundType(Audio::Mixer::kPlainSoundType, + mute ? 0 : ConfMan.getInt("speech_volume")); } bool GroovieEngine::canLoadGameStateCurrently() { |