X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Faudio%2Fsound_manager.cpp;h=ace96c1290d18acc3e92e28fe4a261edac86d38a;hb=8e52a5b000d732e96b1cc461163c4778b434dc27;hp=3d38f6cdb58c46d074c43488531ea162c90d52c4;hpb=73cb1e168850018eaa821a42b30bb221dc5186fe;p=supertux.git diff --git a/src/audio/sound_manager.cpp b/src/audio/sound_manager.cpp index 3d38f6cdb..ace96c129 100644 --- a/src/audio/sound_manager.cpp +++ b/src/audio/sound_manager.cpp @@ -301,19 +301,25 @@ SoundManager::play_music(const std::string& filename, bool fade) } void -SoundManager::pause_music() +SoundManager::pause_music(float fadetime) { - if(music_source) - { + if(fadetime > 0) { + if(music_source + && music_source->get_fade_state() != StreamSoundSource::FadingPause) + music_source->set_fading(StreamSoundSource::FadingPause, fadetime); + } else { music_source->pause(); } } void -SoundManager::resume_music() +SoundManager::resume_music(float fadetime) { - if(music_source) - { + if(fadetime > 0) { + if(music_source + && music_source->get_fade_state() != StreamSoundSource::FadingResume) + music_source->set_fading(StreamSoundSource::FadingResume, fadetime); + } else { music_source->resume(); } }