看板 Flash 關於我們 聯絡資訊
※ 引述《palfan1225 (palfan)》之銘言: : 原文恕刪,都沒看到回覆,只好再次發問, : google好久、爬文,都無法解決, : 再請各位大大賜教如何在不同的影格都loadSound。 : 不同影格播放不同音樂,而且各個影格的音樂都能重複播放。 : 請問"最初語法"是要作何修改呢?感謝回覆 : 最初語法如下 : var mySound = new Sound(); : mySound.loadSound("music.mp3", true); : 最常看到的解決語法是(都試過,匯出影片都只能播放1次,沒有重複播放) 土法煉鋼 var bgm:Sound=new Sound() //新增一個聲音物件 var bgmSC:SoundChannel=new SoundChannel() //新增一個聲音控制物件 bgm.addEventListener(Event.COMPLETE,play_bgm) //新增一個"載入完成"事件 bgm.load(new URLRequest("music.mp3")) //載入檔案 //這個function在music.mp3載入完成後會執行一次 function play_bgm(event:Event){ bgmSC=bgm.play() //將聲音控制物件連結聲音物件 stage.addEventListener(Event.ENTER_FRAME,loop_bgm) //利用影格事件判定 } function loop_bgm(event:Event){ if(bgmSC.position>=bgm.length-100){ bgmSC=new SoundChannel() bgmSC=bgm.play(0) } } length-100的100跟play(0)的0可以自行測試,可以達到無縫接軌 如果不需要只要都打0就可以了 用變數變更music.mp3然後load 這樣就不用用影格換音樂 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 1.175.7.125
palfan1225:用影格換音樂,是因為不同影格我建了不同主題物件。想 08/13 22:37
palfan1225:在不同主題播放不同的音樂。所以...K大的寫法是我直接 08/13 22:38
palfan1225:複製您寫好的語法到影格的"動作",就OK了嗎?? (剛剛直 08/13 22:39
palfan1225:接複製語法到影格的動作,有產生錯誤訊息,說"無法載入 08/13 22:40
palfan1225:類別 'Event' " 08/13 22:40
沒注意到你的loadSound跟start() 這兩個方法看起來是AS2.0的,這篇寫的是3.0的 補上2.0的寫法,已經好久沒有碰了,剛剛測試了一下應該OK 影格1: var mySound = new Sound(); mySound.onSoundComplete=function(){ mySound.start(); } 影格2: mySound.loadSound("music.mp3",true); stop(); 這個寫法結果代表 在第一格對mySound新增了事件來loop音樂 接著第二格以後只要對mySound作loadSound("不同音樂") 就可以切換不同音樂了 P.S.前面用EnterFrame的判定方法,是之前研究"無縫"的結論 如果不需要作到無縫,可以直接使用內定的完成事件就好 ※ 編輯: KawasumiMai 來自: 1.175.7.125 (08/13 23:16)
palfan1225:k大,您第一個影格是如何判斷要載入的音樂檔名?請問您 08/13 23:35
palfan1225:新寫的語法是第一個影格直接放入音樂至場景,第二個影 08/13 23:36
palfan1225:格用load音樂的嗎。我要設置的影格有4個,我原本寫的語 08/13 23:37
palfan1225:法是都可以換不同音樂,但不能重複播放音樂,是我比較 08/13 23:38
palfan1225:困惱的>"< 08/13 23:38
KawasumiMai:首先,你和我寫法的最大的差異,在於"事件" 08/13 23:39
KawasumiMai:也就是第一格的onSoundComplete 08/13 23:40
KawasumiMai:其次,"事件"是跟著"物件"的,只要滿足條件就會發動 08/13 23:40
KawasumiMai:所以"每次歌曲結束"都會讓他再重新播放一次 08/13 23:40
KawasumiMai:只要第一格寫了那三行,第二格以後就不用寫 08/13 23:41
KawasumiMai:只要針對mySound去作loadSound跟start還有stop的動作 08/13 23:41
KawasumiMai:第一格並沒有載入音樂,只有宣告物件跟事件 08/13 23:42
KawasumiMai:第二格才叫他載入music.mp3,當然你可以用變數控制 08/13 23:42
※ 編輯: KawasumiMai 來自: 1.175.7.125 (08/13 23:50)
palfan1225:解決了解決了,萬分感謝K大 (* ̄▽ ̄)/‧★*"`'*-., 08/14 21:20
palfan1225:我把K大影格1的語法寫在另一個圖層。匯入音樂的不同影 08/14 21:21
palfan1225:格在同一個圖層,都能使用"事件"的語法。謝謝K大的推文 08/14 21:22
palfan1225:補充,才知道寫法的差異,就恍然頓悟了<(_ _)> 08/14 21:23