一、 Flash中自定義函數的一般形式為:
function 函數名稱(參數1,參數2,……,參數n){
//函數體。即函數的程序代碼
}
自定義函數必須調用才有效。調用自定義函數的一般形式為:
路徑.函數名稱(參數1,參數2,……,參數n)
函數就像變量一樣,必須正確使用目標路徑才能調用它們。
二、例題
例1 假設我們要定義一個計算矩形面積的函數,可以這樣:(打開21.1.fla)
例2 打開21.2.fla源文件
這是我們前面一個作業中是一部分。當在“控制”按鈕、“小松鼠”影片剪輯或者“小球”影片剪輯上按下鼠標時,小松鼠和小球分別按照相反的方向運動;這三個事件要達到的目的都一樣,所以,腳本必定重復,我們可以使用自定義函數。
在場景第一幀的腳本:
源文件中有三個mc在做補間動作,下面的三個按扭分別控制場境中的三個mc。觀察這三個按扭上的腳本,左邊一個按扭上的腳本為:
中間一個按扭上的腳本為:
右邊一個按扭上的腳本為:
注意觀察這三個按扭上腳本中有那些是相同的的部分,那些是不同的的部分。相同的部分,在函數中直接寫下來,而不同的部分(變化著的部分)用用一個變量來表示,這個變量就是參數。
例如,這三個按扭上腳本中第一句中相同的部分是都有_visible = 1,而不同的則是要顯示的mc(分別是a_mc,b_mc,c_mc),我們用變量mx來表示,那么,三個按扭上腳本中第一句可以統一表示為:
mx._visible = 1。這里的mx就是第一個參數。
這三個按扭上腳本中第二句中相同的部分是都要復制一個mc,復制后的mc的名稱都是復制對象名稱+1,復制后的mc的深度都是1;不同的部分就是復制的對象不同,而這個復制的對象正好的第一句中的mc,因此,第二句中不同的部分也就可以用第一個參數mx來表示,因此,三個按扭上腳本中第二句可以統一表示為:
同樣辦法可以得到腳本的第3,第4句,因此,我們可以在場景的第1幀上設置自定義函數:
左邊這個按扭是要使a_mc顯示并且復制,因此第一個參數在這里表示的應該是a_mc,第二,三個參數在這里表示的應該是b_mc,c_mc;因此,在這里調用的函數應該寫成:
仿照上面的思路,請大家在后兩個按扭上分別寫出腳本,使一個mc顯示并且復制,另兩個mc不可見。
三、作業:
把源文件中6個按扭上的腳本都改為調用自定義函數的形式。源文件 21.作業.fla
提示:
1 連+20或者連-20可以表示為1*20或者-1*20;
2 注意使用if...else if
新聞熱點
疑難解答