面對幾百條ActionScript命令,您可能會感覺有些力不從心,但別擔(dān)心,有時一個相當(dāng)簡單的腳本就可以滿足您的需要。下面把我在用Flash制作課件時用到的一些ActionScript的具體實例作一詳細介紹,希望對您有幫助。
交互響應(yīng)
本例是一個拼圖的課件,拖動當(dāng)前圖形到適當(dāng)?shù)奈恢?,如果位置放置正確則不退回原圖形(如圖1),并提示:“對了,你真棒?!保蝗绻恢梅胖缅e誤則退回原圖形,并提示:“錯啦,再好好想一想”。具體的ActionScript語句如圖2所示,下面我就按語句的功能逐句作分析說明:
1、onClipEvent(MouseDown)
這條語句用于檢測鼠標(biāo)是否按下,如果按下鼠標(biāo)鍵,則程序響應(yīng)。
2、a1=this._x
b1=this._y
用來把當(dāng)前影片的x、y坐標(biāo)保存到變量a1、b1中,當(dāng)影片拖動到不正確的位置時,再把a1、b1變量的值賦予影片的x、y坐標(biāo),使其回到初始位置。
3、if(this.hitTest(_root._xmouse,_root._ymouse,false))
if函數(shù)用來檢測括號內(nèi)的表達式的真和假,為真時執(zhí)行函數(shù)體,否則不執(zhí)行。在這里使用hitTest方法來檢測影片是否與鼠標(biāo)發(fā)生碰撞,其語句的格式如下:movieClip.hitTest(target),程序通過hitTest和if的合用來完成整個拖動過程的檢測。
4、startDrag("")
拖動語句,如沒有參數(shù),表示拖動的是影片本身。
5、onClipEvent(mouseUp)
用于影片檢測,如果鼠標(biāo)鍵沒有按下去時則響應(yīng)。
6、stopDrag()
停止拖動影片。
7、if(this.hitTest(_root.window.jc))
檢測當(dāng)前影片是否與_root.window.jc影片發(fā)生碰撞,這里的_root.window.jc指的是根影片里的window影片里的jc影片。在用hitTest方法進行檢測的時候,應(yīng)注意把影片所屬的父影片名寫清楚,否則會因為找不到影片的位置而發(fā)生錯誤響應(yīng)。
8、this._x=256
this._y=172
當(dāng)影片拖動到的位置正確時,把準(zhǔn)確的位置賦予影片的x、y坐標(biāo),并使其不能被移動。
9、s=new Sound()
_root.s.attachSound("dui")
_root.s.start()
創(chuàng)建一個聲音對象s,把聲音元素“dui”(注意:這里的dui是通過符號輸出來實現(xiàn)的,如圖3所示)捆綁在對象s中,然后通過_root.s.start()語句進行播放。
10、else if(this._x==a1&&&&this._y==b1){
stop()
}else{
this._x=a1
this._y=b1
s=new Sound()
_root.s.attachSound("cuo")
_root.s.start()}
如果影片的位置沒有發(fā)生變化,則停止操作。這時還剩下一種情況:當(dāng)影片拖動到的位置發(fā)生錯誤時,就把原先的變量a1、b1賦予影片x、y坐標(biāo),使影片回到初始位置。
通過上面的一段ActionScript語句就很方便地實現(xiàn)了一種交互響應(yīng)。
顏色設(shè)置
下面我們通過填色程序來了解一下ActionScript語句中顏色的設(shè)置。
例如我們在上數(shù)學(xué)課的時候,要給特定的圖形涂上顏色,預(yù)先的三個正方形都是白色的,當(dāng)你分別點擊這三個正方形以后,三個正方形分別被填充了三種不同的顏色。具體的ActionScript語句如圖4,簡要地講述一下其語句的功能。
1、onClipEvent(mouseDown)
鼠標(biāo)鍵按下時響應(yīng)。
2、if(this.hitTest(_root._xmouse,_root._ymouse,false))
檢測鼠標(biāo)與影片的位置是否一致。
3、a=new color(this)
創(chuàng)建一個顏色對象a,參數(shù) this表示對象本身。
4、a.setRGB(0xff5500)
設(shè)置對象的RGB顏色值為0xff5500
以上兩點是我在用Flash做課件時用到的一些ActionScript語句,希望這個分析過程對您有所幫助。