/// <summary> /// 监听歌曲是否播放完毕 /// </summary> internal static void ListeningSongOver() { ScenesDatas scenesDatas = ModelManager.Instance.GetScenesDatas; if (scenesDatas.AudioSource.clip == null) { return; } if (SongTimeTools.IsSongOver(AudioSourceData.GetCurrentSongTime(scenesDatas.AudioSource), AudioSourceData.GetCurrentSongLength(scenesDatas.AudioSource))) { switch (ModelManager.Instance.GetLogicDatas.CycleType) { case CycleType.SingleCycle: SongControl.OnSingleCycle(); break; case CycleType.PlayInOrder: SongControl.OnPlayInOrder(); break; case CycleType.LoopPlayback: SongControl.OnLoopPlayback(); break; case CycleType.RandomPlay: SongControl.OnRandomPlay(); break; case CycleType.SinglePlay: SongControl.OnSinglePlay(); break; default: break; } } }