Compare commits
4 Commits
ff3e390352
...
8e5714439a
Author | SHA1 | Date |
---|---|---|
Misa | 8e5714439a | |
Misa | f64cf4f831 | |
Misa | fe5bacfdc2 | |
Misa | 96c479a11f |
|
@ -180,61 +180,66 @@ void musicclass::play(int t, const double position_sec /*= 0.0*/, const int fade
|
|||
t %= num_pppppp_tracks;
|
||||
}
|
||||
|
||||
if(mmmmmm && !usingmmmmmm)
|
||||
if (mmmmmm && !usingmmmmmm)
|
||||
{
|
||||
t += num_mmmmmm_tracks;
|
||||
}
|
||||
|
||||
safeToProcessMusic = true;
|
||||
musicVolume = MIX_MAX_VOLUME;
|
||||
if (currentsong !=t)
|
||||
|
||||
if (currentsong == t)
|
||||
{
|
||||
if (t != -1)
|
||||
return;
|
||||
}
|
||||
|
||||
currentsong = t;
|
||||
|
||||
if (t == -1)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (!INBOUNDS_VEC(t, musicTracks))
|
||||
{
|
||||
puts("play() out-of-bounds!");
|
||||
currentsong = -1;
|
||||
return;
|
||||
}
|
||||
|
||||
if (currentsong == 0 || currentsong == 7 || (!map.custommode && (currentsong == 0+num_mmmmmm_tracks || currentsong == 7+num_mmmmmm_tracks)))
|
||||
{
|
||||
// Level Complete theme, no fade in or repeat
|
||||
if (Mix_FadeInMusicPos(musicTracks[t].m_music, 0, 0, position_sec) == -1)
|
||||
{
|
||||
currentsong = t;
|
||||
if (!INBOUNDS_VEC(t, musicTracks))
|
||||
printf("Mix_FadeInMusicPos: %s\n", Mix_GetError());
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (Mix_FadingMusic() == MIX_FADING_OUT)
|
||||
{
|
||||
// We're already fading out
|
||||
nicechange = t;
|
||||
nicefade = true;
|
||||
currentsong = -1;
|
||||
|
||||
if (quick_fade)
|
||||
{
|
||||
puts("play() out-of-bounds!");
|
||||
currentsong = -1;
|
||||
return;
|
||||
}
|
||||
if (currentsong == 0 || currentsong == 7 || (!map.custommode && (currentsong == 0+num_mmmmmm_tracks || currentsong == 7+num_mmmmmm_tracks)))
|
||||
{
|
||||
// Level Complete theme, no fade in or repeat
|
||||
if(Mix_FadeInMusicPos(musicTracks[t].m_music, 0, 0, position_sec)==-1)
|
||||
{
|
||||
printf("Mix_FadeInMusicPos: %s\n", Mix_GetError());
|
||||
}
|
||||
Mix_FadeOutMusic(500); // fade out quicker
|
||||
}
|
||||
else
|
||||
{
|
||||
if (Mix_FadingMusic() == MIX_FADING_OUT)
|
||||
{
|
||||
// We're already fading out
|
||||
nicechange = t;
|
||||
nicefade = true;
|
||||
currentsong = -1;
|
||||
if (quick_fade)
|
||||
{
|
||||
Mix_FadeOutMusic(500); // fade out quicker
|
||||
}
|
||||
else
|
||||
{
|
||||
quick_fade = true;
|
||||
}
|
||||
}
|
||||
else if(Mix_FadeInMusicPos(musicTracks[t].m_music, -1, fadein_ms, position_sec)==-1)
|
||||
{
|
||||
printf("Mix_FadeInMusicPos: %s\n", Mix_GetError());
|
||||
}
|
||||
quick_fade = true;
|
||||
}
|
||||
|
||||
songStart = SDL_GetPerformanceCounter();
|
||||
}
|
||||
else
|
||||
else if (Mix_FadeInMusicPos(musicTracks[t].m_music, -1, fadein_ms, position_sec) == -1)
|
||||
{
|
||||
currentsong = -1;
|
||||
printf("Mix_FadeInMusicPos: %s\n", Mix_GetError());
|
||||
}
|
||||
}
|
||||
|
||||
songStart = SDL_GetPerformanceCounter();
|
||||
}
|
||||
|
||||
void musicclass::resume(const int fadein_ms /*= 0*/)
|
||||
|
|
Loading…
Reference in New Issue