知识点:
1、帧帧动画的制作。 2、attachMovie()的使用; 3、swapDepths()的作用; 4、用语句实现文字的运动。
制作过程:
一、制作元件。
新建一个FLASH文档,大小默认,背景色任意。本实例一共用到两个影片剪辑,分别为xin和wenzi。
1、制作xin元件:(1)执行插入菜单下新建元件命令,在名称中输入xin,行为选影片剪辑,确定。在工具面板中选取铅笔工具,在下面的选项面板中选平滑,在工作区绘制一个心形,大小约为130*90,用红黑径向填充填色,全居中。如图
·2004最抢眼的手机广告(下) ·Flash MX2004入门与进阶实例——动作脚本 ·QQ2004火影忍者皮肤-鹿丸篇 ·FW MX 2004为卡通图片添活力 ·QQ2004火影忍者皮肤-小樱篇 ·AutoCAD2004快捷命令的使用 ·autoCAD2004在XP下出现了致命错误 ·网络工程ߔ ·Flash MX 2004 播放视频文件 ·Flash MX2004入门与进阶实例——动作脚本
(2)新增一层,再绘制一个无边框的矩形,在混色器面板中,选取线性填充,增加一个色标,三个色标块中的颜色均选白色,并把两端的色块的透明度调为0,把矩形进行变形后放在心形上,如下图:
(3)新增一层,选取文字工具,在属性面板中设置静态文本,字体任意,字号约为26号,黄色,输入“祝福朋友”,全居中,并复制一次,执行编缉菜单下的“粘贴到当前位置”,然后选取粘贴后的文字向下向右移动一像素,将文字改为灰色。如图:
2、制作wenzi元件:
(1)在第一层,选取矩形工具,笔触色选白色,在混色器面板中,选取填充色为“#999900”,透明度为60,绘制一个90*90的正方形,全居中,在第七帧插入普通帧。
(2)新增一层。选取文字工具,字体为华文彩云,颜色为“#996600”,字号为82,在工作区输入“开”,全居中,将文字两次打散,用“#FFFFCC”颜色填充。分别在第2、3、4、5、6、7帧插入空白关键帧,在各帧中依次输入:心、愉、快、每、一、天。按“开”字的操作方法。完成其它文字的制作。
3、右击库中的wenzi元件,选链接,在面板中的标识符后面输入:wenzi,并勾选在第一帧导出和为动作脚本导出。
二、布置场景
1、第一层从库中拖入xin,全居中,并在属性面板中为其取实例名:hh。
2、新增一层,插入两个关键帧,在动作面板输入以下语句:
第一帧:
num = 7;//加载文字的数量 a = 275;//文字做椭圆形运动的X轴的中心 b = 200;//文字做椭圆形运动的Y轴的中心 rx =190;//文字做椭圆形运动的X轴的半径 ry = 50;//文字做椭圆形运动的Y轴的半径 n = 0;//用来计算运动速度的角度值 angle=0;//用来计算运动速度的弧度值 speed=0;//计算文字响应鼠标运动的速度增量 for (i=1; i<=num; i++) {//从库中附加标识符名为wenzi的元件到舞台 _root.attachMovie("wenzi", "wenzi"+i, i); } hh.swapDepths(60);//调整hh的深度.
第二帧:
/*鼠标在左:50,右:500,上:50;下:350的区域内时,重新为speed赋值(也就是鼠标距中心越近,此值越小,文字运动的越慢,反之越快)。如果鼠标没有在此区域,让n的值自动加1(也就是当文字运动的速度不和鼠标位置关联时,保持让其匀速运动),当n大于或等于360之后重新让其为1。*/ if (_xmouse>50 && _xmouse<500 && _ymouse>50 && _ymouse<350) { speed = (275-_xmouse)*.08; n += speed; } else { n = (n<360) ? n+1 : 1; } for (i=1; i<=num; i++) { //angle是用来计算每一个文字运动中的角度,并将其转换为弧度值。 angle = (i*360/num+n)*Math.PI/180; //设置运动中的文字的x和y坐标的位置 _root["wenzi"+i]._x = a-rx*Math.cos(angle); _root["wenzi"+i]._y = b-ry*Math.sin(angle); //设置文字运动中的缩放量 _root["wenzi"+i]._xscale = 10-100*Math.sin(angle); _root["wenzi"+i]._yscale = 100-10*Math.sin(angle); //当文字的y坐标大于200时,交换文字的深度 if (_root["wenzi"+i]._y>200) { _root["wenzi"+i].swapDepths(100+i); } else { _root["wenzi"+i].swapDepths(10-i); } //让文字停在不同的帧中,这样才能看到不同的文字 _root["wenzi"+i].gotoAndStop(i); }
复制本页网址和标题,发送给你QQ/Msn的好友一起分享
上一篇:关于AS1.0、AS2.0和java
下一篇:Flash实现用鼠标调整窗口的大小