本文介紹用
Flash的AS代碼制作上升的泡泡的動(dòng)畫。
如果一個(gè)一個(gè)的畫,工作量繁重并且效果并不好。我們利用AS的復(fù)制語句來實(shí)現(xiàn)水泡的數(shù)量,利用設(shè)置屬性來改變透明度,大小等。最后在影片剪輯中設(shè)置水泡的左右擺動(dòng)。綜合在一起就可以實(shí)現(xiàn)水泡上升的效果了。
具體步驟:
1.
Flash MX中新建一文檔。并適當(dāng)修改文檔屬性(400×300,藍(lán)色背景) 。
2.建一個(gè)影片剪輯,命名為“h2o”。進(jìn)入編輯區(qū)以后,利用繪圖工具,漸變填充繪制一個(gè)水泡。
3.回到主場(chǎng)景,把圖層1命名為“h2o”。從庫中把“h2o”影片剪輯拖放到場(chǎng)景的下方,在下面的屬性面板中命名它的分身名為“h2o”。
4.主場(chǎng)景中新建一個(gè)圖層,命名為“as”。在第1幀添加AS:
i=1
while(i<=30){
duplicateMovieClip("h2o","h2o"+i,i);
setProperty("h2o"+i,_x,random(400));
setProperty("h2o"+i,_y,random(100)+300);
setProperty("h2o"+i,_xscale,random(60)+40);
setProperty("h2o"+i,_yscale,getProperty(eval("h2o"+i),_xscale));
setProperty("h2o"+i,_alpha,random(30)+70);
i++
}
_root.h2o._visible=0
5.具體解釋如下:
i=1 //初始化變量
while(i<=30){ //用來控制水珠的數(shù)量
duplicateMovieClip("h2o","h2o"+i,i); //復(fù)制水珠
setProperty("h2o"+i,_x,random(400)); //在X軸上隨機(jī)分布復(fù)制出的水珠
setProperty("h2o"+i,_y,random(100)+300); //同上,只是換成了Y軸
setProperty("h2o"+i,_xscale,random(60)+40);
setProperty("h2o"+i,_yscale,getProperty(eval("h2o"+i),_xscale));
//以上兩條AS是用來控制水珠大小的。
setProperty("h2o"+i,_alpha,random(30)+70);//用來控制水珠的透明度
i++
}
_root.h2o._visible=0 //將主場(chǎng)景中的水珠隱藏。
6.選中影片剪輯“H2O”,添加AS:
onClipEvent (load) {
speed = random(5)+3;
}
onClipEvent (enterFrame) {
this._y -= speed;
this._x += random(3)-random(3);
if (this._y<-15) {
this._y = random(100)+315;
}
}
7.上面的AS語句的意思是:
onClipEvent (load) { //用來隨機(jī)賦于水珠的速度,讓水珠運(yùn)動(dòng)更加真實(shí)。
speed = random(5)+3;
}
onClipEvent (enterFrame) {
this._y -= speed; //用來改變水珠Y軸的坐標(biāo),這樣我們看起來水珠是在不斷在上升。
this._x += random(3)-random(3); //為了上水珠運(yùn)動(dòng)更真實(shí)些,我們上水珠左右晃動(dòng)一下。
if (this._y<-15) { //此IF語句的作用是當(dāng)水珠移出屏幕時(shí),重新放回屏幕中來。
this._y = random(100)+315;
}
}
保存
測(cè)試。