unity3d v5.1.2 如何顺序播放音乐

 1 public AudioSource music;
 2 AudioClip[] clips;
 3 
 4 int[] clipSeq;
 5 int clipIndex;
 6 int clipMax;
 7 
 8     public delegate void musicOverCallback();
 9     public void playMusicClips (){
10         music.clip = clips [clipSeq[clipIndex]];
11         music.Play ();
16         StartCoroutine(haveNextMusic(music.clip.length, playMusicClips));
17     }
18     private IEnumerator haveNextMusic(float time, musicOverCallback callback){
19         yield return new WaitForSeconds (time);
20         clipIndex++;
21         if (clipIndex < clipMax) {
22 
23             callback ();
24         }
25     }
26   

 

本来是想用语音播放100,99等数字,但我不可能做上百个wav吧,只好把100拆成一百,需要2个wav,并按顺序播放出来

不知道有没有更简单的方法

最终用协程搞定了,还有个问题就是,这种方法没办法很好地停止上一个数字的语音播报,需要加一些其他代码来做控制

呃……好蠢的方法,不知道还有没有更好的:(

posted on 2015-07-28 11:10  adamfh  阅读(827)  评论(0编辑  收藏  举报