Fixed compiler warning
[supertux.git] / src / object / ambient_sound.cpp
index f397264..14539e6 100644 (file)
@@ -88,8 +88,8 @@ AmbientSound::AmbientSound(const Reader& lisp) :
 
   lisp.get("silence_distance",silence_distance);
 
-  sound_source = 0; // not playing at the beginning
-  sound_manager->preload(sample);
+  sound_source.reset(); // not playing at the beginning
+  SoundManager::current()->preload(sample);
   latency=0;
 }
 
@@ -127,7 +127,7 @@ AmbientSound::AmbientSound(Vector pos, float factor, float bias, float vol, std:
     silence_distance = 1/distance_factor;
 
   sound_source = 0; // not playing at the beginning
-  sound_manager->preload(sample);
+  SoundManager::current()->preload(sample);
   latency=0;
 }
 
@@ -144,15 +144,14 @@ AmbientSound::hit(Player& )
 void
 AmbientSound::stop_playing()
 {
-  delete sound_source;
-  sound_source = 0;
+  sound_source.reset();
 }
 
 void
 AmbientSound::start_playing()
 {
   try {
-    sound_source = sound_manager->create_sound_source(sample);
+    sound_source = SoundManager::current()->create_sound_source(sample);
     if(!sound_source)
       throw std::runtime_error("file not found");
 
@@ -162,8 +161,7 @@ AmbientSound::start_playing()
     sound_source->play();
   } catch(std::exception& e) {
     log_warning << "Couldn't play '" << sample << "': " << e.what() << "" << std::endl;
-    delete sound_source;
-    sound_source = 0;
+    sound_source.reset();
     remove_me();
   }
 }