FLASH CS6中如何使用代码制作下雪效果(AS3版)

2025-09-22 07:46:07

1、打开FLASH CS6软件,新建一个AS3文档,如下。

FLASH CS6中如何使用代码制作下雪效果(AS3版)

2、将舞台背景色设置为黑色,或画一个黑色的形状。

FLASH CS6中如何使用代码制作下雪效果(AS3版)

3、在舞台上画一个雪花,如下图,我只是画一个圆,同学们可以自行发挥。

FLASH CS6中如何使用代码制作下雪效果(AS3版)

4、选择雪花转换为影片剪辑,并设置Actionscript链接如下图。设置成SNOW,其它默认即可。

FLASH CS6中如何使用代码制作下雪效果(AS3版)

FLASH CS6中如何使用代码制作下雪效果(AS3版)

5、然后将舞台上的雪花删除,在主时间轴加如下代码:

var snow_count:int=100;//雪花数量

var snowAry:Array=new Array();//用于存放雪花

init();

function init():void

{

for(var i:int=0;i<snow_count;i++)

{

snowAry.push(new SNOW());//添加雪花到数组

snowAry[i].x=stage.stageWidth*Math.random();//随机x坐标

snowAry[i].y=stage.stageHeight*Math.random();//随机y坐标

snowAry[i].alpha=0.3+0.7*Math.random();//随机透明度

snowAry[i].scaleX=snowAry[i].scaleY=0.3+0.7*Math.random();//随机大小

snowAry[i].spd=2+2*Math.random();//随机下落速度

this.addChild(snowAry[i]);//放置到舞台

}

this.addEventListener(Event.ENTER_FRAME,AutoMoveEvent);//添加帧频事件开始动画

}

function AutoMoveEvent(e:Event):void

{

for(var i:int=0;i<snow_count;i++)

{

snowAry[i].y+=snowAry[i].spd;

if(snowAry[i].y>stage.stageHeight+snowAry[i].height)//如果雪花到达舞台以外则重置

{

snowAry[i].x=stage.stageWidth*Math.random();//随机x坐标

snowAry[i].y=-50;//固定y坐标

snowAry[i].alpha=0.3+0.7*Math.random();//随机透明度

snowAry[i].scaleX=snowAry[i].scaleY=0.3+0.7*Math.random();//随机大小

snowAry[i].spd=2+2*Math.random();//随机下落速度

}

}

}

6、代码没问题的话,现在ctrl+enter就可以看到下雪的效果了。

如果想停住下雪,则使用如下代码。

this.removeEventListener(Event.ENTER_FRAME,AutoMoveEvent);

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢