论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Flash教程
Tag:flash cs,flash 8,鼠绘,as,手绘,工具,文字,loading,入门,初学,mc,影片剪辑,声音,mtv,游戏,引导,遮罩,菜单,补间,广告条,时钟,视频教程

上升的水泡效果是如何实现的?

文章类别:Flash | 发表日期:2008-9-21 15:03:27

  

上升的水泡效果是如何实现的??
解决思路
假如一个一个的画,工作量繁重并且效果并不好。我们利用AS的复制语句来实现水泡的数量,利用设置属性来改变透明度,大小等。最后在影片剪辑中设置水泡的左右摆动。这样综合在一起,就可以实现水泡上升的效果了。
具体步骤
1、?????????????运行Flash?MX?2004,新建一文档。并适当修改文档属性(400×300,蓝色背景)
2、??????????????新建一个影片剪辑,命名为“h2o”。进入编辑区以后,利用绘图工具,渐变填充绘制一个水泡。如图3.3.82所示。


图3.3.82???绘制水泡
3、返回到场景1,把图层1命名为“h2o”。从库中把“h2o”影片剪辑拖放到场景的下方,在下面的属性面板中命名它的实例名为“h2o”。如图3.3.83所示。

?
图3.3.83??图层“h2o”
4、在场景1的时间轴中新建一个图层,命名为“as”。在第1帧添加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
5、具体解释如下:
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??????????????????????//将主场景中的水珠隐藏。
6、单击选中影片剪辑“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;
?}
}
7、上面的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;
?}
}
1、??保存测试吧!请参看源文件“上升的水泡”。

视频教程列表
文章教程搜索
 
Flash推荐教程
Flash热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058