欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

flash as简单制作飘雪动画

程序员文章站 2022-05-24 19:17:52
不用任何元件,只用一帧,在flash8中就可以做出雪景画面。设背景为黑色,或导入一张你喜欢的图片做背景,复制下面的代码到场景的第一帧就行了。 fallSnow(this,150,[600,375]); fu... 08-10-06...
不用任何元件,只用一帧,在flash8中就可以做出雪景画面。设背景为黑色,或导入一张你喜欢的图片做背景,复制下面的代码到场景的第一帧就行了。 fallsnow(this,150,[600,375]);
functionfallsnow(path,num,size){
for(vari=0;i<num;i ){
path.createemptymovieclip("xue" i,i);
varmc=path["xue" i];
mc._x=random(size[0]);
mc._y=random(size[1]);
mc.ro=[1,-1][random(2)];
mc.xtime=random(20);
mc.starttime=0;
mc.id=math.pow(i,1/2);
createsnow(mc,mc.id/2.5,"0xffffff",20*mc.id);
}
varloop=function(){
updateafterevent();
for(vari=0;i<num;i ){
varmc=path["xue" i];
mc._rotation =mc.ro*5;
mc._x =mc.id*mc.ro/10;
mc._y =mc.id/2;
mc.starttime ;
scantar(mc);
scanedge(mc,size);
}
};
varinterval=setinterval(loop,10);
}
functioncreatesnow(mc,radius,c,alpha){
with(mc){
moveto(0,-radius);
beginfill(c,alpha);
linestyle(0,"0x000000",0);
for(vari=1;i<=6;i ){
vara1=-math.pi/6 i*math.pi/3;
vara2=i*math.pi/3;
lineto((radius/5)*math.sin(a1),-(radius/5)*math.cos(a1));
lineto(radius*math.sin(a2),-radius*math.cos(a2));
}
endfill();
}
}
functionscantar(mc){
if(mc.starttime>=mc.xtime){
mc.starttime=0;
mc.xtime=random(20);
mc.ro=[1,-1][random(2)];
}
}
functionscanedge(mc,size){
if(mc._x>size[0]){
mc._x=0;
}elseif(mc._x<0){
mc._x=size[0];
}
if(mc._y>size[1]){
mc._y=0;
}
}