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;
}
silence_distance = 1/distance_factor;
sound_source = 0; // not playing at the beginning
- sound_manager->preload(sample);
+ SoundManager::current()->preload(sample);
latency=0;
}
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");
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();
}
}