|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
Flash动画说到底就是“遮罩+补间动画+逐帧动画”与元件(主要是影片剪辑)的混合物,通过这些元素的不同组合,从而可以创建千变万化的效果。
不必任何元件,只用一帧,在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;
}
}
要在Flash中构建应用程序,可以使用Flash绘图工具创建图形,并将其它媒体元素导入Flash文档。接下来,定义如何以及何时使用各个元素来创建设想中的应用程序。 |
|