2012-02-15 63 views
0

我有一個可以正常使用這個動作腳本代碼,但我嘗試當電影開始沒有任何聲音的逆過程,然後當你點擊該按鈕,音樂將不再被忽略。動作腳本3靜音按鈕

似乎我無法弄清楚如何做到這一點。也許有人可以告訴我怎麼做,我對動作腳本一無所知3

function setMute(vol){ 
var sTransform:SoundTransform = new SoundTransform(0,0); 
sTransform.volume = vol; SoundMixer.soundTransform = sTransform; 
} 
var Mute:Boolean = false; 
mutebutton.addEventListener 
(MouseEvent.CLICK,toggleMuteBtn); 
function toggleMuteBtn(event:Event){ if(Mute){ Mute = false; setMute(1); 
mutte.gotoAndStop(1); } 
else{ Mute = true; 
setMute(0); 
mutte.gotoAndStop(2); } 
} 

感謝您的幫助。

回答

0
  1. 變化function toggleMuteBtn(event:Event) =>

    function toggleMuteBtn(event:Event = NULL)

    這使您可以調用的函數,而不會觸發事件。

  2. 使用toggleMuteBtn();你需要的地方靜音/取消靜音。當應用程序啓動時使用它會將您的初始狀態設置爲靜音而不是靜音。
+0

對不起,我試圖瞭解這一點,但我相信我做錯了我的按鈕現在的問題是要瘋了:)'函數setMute(體積){VAR s轉換:SoundTransform在新=的SoundTransform(0,0); sTransform.volume = vol; SoundMixer.soundTransform = sTransform; } var Mute:Boolean = false; mutebutton.addEventListener (MouseEvent.CLICK,toggleMuteBtn); function toggleMuteBtn(event:Event = NULL)toggleMuteBtn(); {if(Mute){Mute = false; setMute(1); mutte.gotoAndStop(1); } else {Mute = true; setMute(0); mutte.gotoAndStop(2); } }' – carlosx2 2012-02-15 20:06:33

+0

我推薦一個很好的ActionScript或一般程序設計教程給你,爲什麼你的代碼中有錯誤的理解。不要在函數定義和開頭括號'{'之間放置東西,因爲它們是緊密配對的。將新的'toggleMuteBtn();'放在該函數的最後一個括號後面的某處。 – lunixbochs 2012-02-15 20:10:08

+0

事情是,我一直在這一整天,我需要的是這個代碼開始靜音[鏈接](http://synatar.com/demosite/),你可以看到有東西是相反的方式。用音樂加載頁面並不是一件好事。 – carlosx2 2012-02-15 20:13:08

0

這是理所應當的工作有電影開始弱化音,然後當你點擊一個按鈕的聲音將被打開的代碼。

var mute:Boolean = false; 
var st:SoundTransform;// <- variable is exposed to all functions in this script 

mutebutton.addEventListener(MouseEvent.CLICK,toggleMuteBtn); 

function toggleMuteBtn(event:Event = null) 
{ 
    if (mute) 
    { 
     setMute(1,1); 
    } 
    else 
    { 
     setMute(0,2); 
    } 
    // toggle the mute Boolean 
    mute = !mute; 
} 

function setMute(vol:Number, frm:Number):void 
{ 
    st = new SoundTransform(0,0); 
    st.volume = vol; 
    SoundMixer.soundTransform = st; 
    mutte.gotoAndStop(frm); 
} 
toggleMuteBtn(); 

`