2014-02-09 113 views
0

好的,所以我正在製作一款遊戲,但我無法弄清楚如何保持音軌不重疊。當遊戲進入失敗或贏得屏幕時,我將點擊「再次播放」,聲音將重疊。我有它自己的層上的聲音。這是迄今爲止我所擁有的。as3中重疊的聲音

var snd_SolidState = new SolidState(); 
snd_SolidState.play(0,1); 

,在第2層幀2和3,我有:

snd_SolidState.stop(); 
snd_SolidState = null; 

它說: 「停止」 不是一個函數。那麼我該如何讓歌曲在失敗/贏球屏幕上停止? SolidState是這首歌。

如果代碼與「再次播放」按鈕的點擊相關,那麼這裏是這些代碼。

mc_again.addEventListener(MouseEvent.MOUSE_UP,upAgain); 
function upAgain(e:MouseEvent){ 
gotoAndStop(1); 
} 

任何人都可以幫忙嗎?

回答

0

可變snd_SolidState聲音對象,聲音沒有實現的停止方法;該聲音 .play(),然而,返回的SoundChannel對象,它不...

所以,你可以存儲(由snd_SolidState.play(返回的SoundChannel對象)),它可以稍後用來停止歌曲。

PS:我建議你開始輸入您的變量(如:VAR snd_SolidState:聲音;),這樣,你強迫自己知道哪些對象,你跟誰打交道,可以找到它引用類型;在這種情況下是Sound.play()

祝你好運:)

+0

感謝您的幫助! – FunnyBone