X-Git-Url: http://vcs.maemo.org/git/?a=blobdiff_plain;f=share%2Faudio.c;h=115fb7de3fdcd29d1426bf5ef9c233751d8ae61a;hb=70da92a0efb91317f15717e7cc0725ba820a0334;hp=845cd4ef4506d5f2986264de615b9c6352da92f3;hpb=027f8e6735028e503f4953c72a57ae0ae7de826a;p=neverball diff --git a/share/audio.c b/share/audio.c index 845cd4e..115fb7d 100644 --- a/share/audio.c +++ b/share/audio.c @@ -345,7 +345,7 @@ void audio_music_play(const char *filename) } } -void audio_music_queue(const char *filename) +void audio_music_queue(const char *filename, float t) { if (audio_state) { @@ -354,6 +354,9 @@ void audio_music_queue(const char *filename) if ((queue = voice_init(filename, 0.0f))) { queue->loop = 1; + + if (t > 0.0f) + queue->damp = +1.0f / (AUDIO_RATE * t); } } SDL_UnlockAudio(); @@ -400,12 +403,10 @@ void audio_music_fade_to(float t, const char *filename) { if (music) { - if (strcmp(filename, music->name)) + if (strcmp(filename, music->name) != 0) { - audio_music_queue(filename); audio_music_fade_out(t); - - if (queue) queue->damp = +1.0f / (AUDIO_RATE * t); + audio_music_queue(filename, t); } else audio_music_fade_in(t); }