Flash实用编程五---下雨动画的制作

王朝other·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

思路:

先画一滴从下落再到散开的雨滴,然后持续不断地将这个雨滴复制到画面上,从而产生下雨的效果.

步骤:

1.打开Flash MX 2004,新建文档,设置文档大小550*400像素,帧频设为30FPS,背景设为黑色.

2.按ctrl+F8新建一电影剪辑元件,在该元件中绘制一滴从下落再到散开的雨滴(形状渐变和动作渐变均可).最后一帧加帧代码stop();.

3.按ctrl+L打开库,选中刚建立的电影剪辑,按右键选择"链接",在接下来弹出的"链接属性"对话框中,将标识符设为drop,并勾选"为动作脚本导出"和"在第一帧导出".

4.回主场景,选中图层1第1帧,按F9打开动作脚本编辑窗口,输入以下代码:

function rain(){

var i = Math.floor(100*Math.random());

_root.attachMovie("drop","drop"+i,i);

var a = Math.floor(30*Math.random()+71);

var b = Math.floor(60*math.random()+41);

with(_root["drop"+i]){

_x = 550*Math.random();

_y = -100*Math.random();

_xscale=a;

_yscale=a;

_alpha=b;

}

updateAfterEvent();

}

setInterval(rain,20);

注解:

1.function rain(){...},自定义函数rain()。

1.var i = Math.floor(100*Math.random()); 随机产生0~100的整数,该整数用于设置所复制的雨滴的实例名和层次。

2.接下来在自定义rain()函数中进行雨滴的复制,并随机地设置所复制的雨滴的x坐标、y坐标、雨滴的x轴和y轴的等比例随机缩放、透明度。

3.“setInterval(rain,20);”语句含义是每隔20毫秒(1秒=1000毫秒)执行一次rain()函数,从而产生下雨效果。

说明:

1.setInterval所调用的函数只能是函数名,如本例是rain,不能是rain()。

2.如自定义函数供setInterval调用,则在该自定义函数中不能用this.如本例用了_root,似乎setInterval对函数的调用只能用绝对路径而不能用相对路径。对这一点还不能确认。

效果如下:

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航