internal static void Update() { if (Queue == null || Queue.ActiveSong == null || State != MediaState.Playing || FAudio.XNA_GetSongEnded() == 0) { // Nothing to do... yet... return; } numSongsInQueuePlayed += 1; if (numSongsInQueuePlayed >= Queue.Count) { numSongsInQueuePlayed = 0; if (!IsRepeating) { Stop(); FrameworkDispatcher.ActiveSongChanged = true; return; } } MoveNext(); }