你现在的位置:首页flash学习


学做水泡上升

1

  好久没有做作业了,今天学做水泡上升,也是用AS做动画吧,我加了个背景.原教程图片连接失效,水泡自己做啦.

        原教程地址:http://www2.flash8.net/teach/498.htm

制作步骤:
1、打开flash软件,新建一文档。并适当修改文档属性(400×300,蓝色背景)
2、新建一MC,命名为“水泡”。
 我的水泡制作方法:
  1).用椭圆工具,关闭填充色,用白色,50%透明度,0.25粗细的笔画个圆
  2).用椭圆工具,关闭笔触颜色,用白色放射状画个圆,从左到右透明度为100.50.0
  3).合并两个图形,删除一半
  4).按照第二步,画个小圆,放到下面,完成后如下图

              2
  5).拖入到主场景中,在属性栏中将其命名为“h2o”)
3、新建一层,命名为“AS”,在此层里输入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

下面是老师解释的AS作用:

i=1
while(i<=30){//用来控制水泡的数量
duplicateMovieClip("h2o","h2o"+i,i);//复制水泡
setProperty("h2o"+i,_x,random(400));//在X轴上随机分布复制出的水泡
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//将主场景中的水泡隐藏。

  4、在电影符号‘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;
}
}

解释一下AS的作用:

onClipEvent (load) {//用来随机赋于水珠的速度,让水珠运动更加真实。
speed = random(5)+3;
}
onClipEvent (enterFrame) {
this._y -= speed;//用来改变水泡Y轴的坐标,这样我们看起来水珠是在不断在上升。
this._x += random(3)-random(3);//为了上水泡运动更真实些,我们上水泡左右晃动一下。
if (this._y<-15) {//此IF语句的作用是当水泡移出屏幕时,重新放回屏幕中来。
this._y = random(100)+315;
}
}

  5、Ctrl+回车测试吧。如果我们用手一个一个的画,不累死也得烦死。
用AS来帮我们解决,不但快,而且随机性更强……

2006年8月6日

返回主页