当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > Flash新手入门教程:AS2代码制作鼠标跟随龙舟效果

Flash动画制作
Flash动画绘画实例:卡通版大眼睛小女孩
Flash实例教程:方块动画特效制作
Flash as入门(20):制作时钟的实例教程
Flash AS自定义函数提高程序执行效率
Flash AS3教程:制作鼠标感应图片转动
给你的flash减减肥
Flash教程:广告也有记忆
Adobe Flash教程:赋予人物会动的关节
初试 Flash CS4 的新功能
小软件制作漂亮的flash相册
Flash游戏制作:敌人穷追不舍的动画研究
Flash实例:制作晃动光线文字特效
Flash CS3教程:快速模糊变化文字动画
Flash动画制作技巧:动物行走动画制作揭秘
Flash实例教程:飞机阴影跟随飞机飞翔
Flash技巧:组合技巧制作吸引人的动画
Flash模糊滤镜制作动感模糊文字动画
flash动画技巧:制作2.5D动画
Flash CS3动画制作:精密角色动画设计技巧
2009年国际十大最好的Flash网站

Flash动画制作 中的 Flash新手入门教程:AS2代码制作鼠标跟随龙舟效果


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 142 ::
收藏到网摘: n/a

 

 

请在舞台上拖动鼠标,看效果:

现在来制作.先建三个影片剪辑,分别如下图:

元件1:

元件2:

元件3:

以上元件请注意图形的方向,及中心点的位置。然后在库中分别右击元件,然后选接,在标识符中,元件1为lt,元件2为:ls,元件3为:lw.

现在回到主场影,打开动作面板输入如下语句:
this.attachMovie("lt","lz0",11);
for(i=1;i< 11;i++){
this.attachMovie("ls","lz"+i,i);
}
this.attachMovie("lw","lz11",0);
这一帧的动作创建了龙舟,它从库中加载了lt,10个ls和lw.
在第2帧插入关键帧,在动作面板中输入如下代码:
i = 11;
dx = _xmouse - lz0._x;
dy = _ymouse - lz0._y;
lz0._x += dx/10;
lz0._y += dy/10;
dz = Math.atan2 (dy,dx)*180/Math.PI ;
lz0._rotation = dz;
while (i>0) {
lz = eval("lz"+i);
qlz = eval("lz"+ (i-1));
lsx = qlz._x - lz._x;
lsy = qlz._y - lz._y;
dls = Math.atan2 (lsy,lsx)*180/Math.PI ;
lz._rotation = dls;
lz._y = qlz._y;
lz._x = qlz._x;

i = i-1;
}
  这一帧的动作,是让龙舟随鼠标动起来。
在第3帧插入关键帧,在动作面板中输入:
gotoAndPlay(2);
 这是回到第2帧开始播放形成循环。
ok,可测试看下效果。

下面我们学习可爱的小鱼跟随鼠标游动的效果

扩展练习:鼠标跟随的鱼:(做法和龙舟一样)

三个元件的图片分别是:

元件1,连接名为:yt

元件2,连接名:ys

元件3,连接名:yz

主场景第1帧代码:
this.attachMovie("yt","xy0",21);
for (i=1;i<21;i++){
if(i == 13){
this.attachMovie("yz","xy"+i,i);
} else {
this.attachMovie("ys","xy"+i,i);
}
cys = eval("xy"+i);
cys._yscale -= i*5;
cys._xscale -= i*5;
}
第2帧代码:
ytx = _xmouse - xy0._x;
yty = _ymouse - xy0._y;
ytz = Math.atan2(yty,ytx)*180/Math.PI;
xy0._rotation = ytz;
xy0._x += ytx/10;
xy0._y += yty/10;
n=21;
while(n>0){
hys = eval("xy"+n);
qys = eval("xy"+(n-1));
ysx = qys._x - hys._x;
ysy = qys._y - hys._y;
ysz = Math.atan2(ysy,ysx)*180/Math.PI;
hys._rotation = ysz;
hys._x = qys._x;
hys._y = qys._y;
n--;
}
第3帧代码:
gotoAndPlay(2);