Fade out and pause music on death and resume on restart of level, fixes #1064
[supertux.git] / src / audio / sound_manager.hpp
index da042c6..7056b0d 100644 (file)
 #include <alc.h>
 
 #include "math/vector.hpp"
+#include "util/currenton.hpp"
 
 class SoundFile;
 class SoundSource;
 class StreamSoundSource;
 class OpenALSoundSource;
 
-class SoundManager
+class SoundManager : public Currenton<SoundManager>
 {
 public:
   SoundManager();
@@ -63,6 +64,8 @@ public:
 
   void enable_music(bool music_enabled);
   void play_music(const std::string& filename, bool fade = false);
+  void pause_music(float fadetime = 0);
+  void resume_music(float fadetime = 0);
   void stop_music(float fadetime = 0);
 
   bool is_music_enabled() { return music_enabled; }