首页  韩国资源  酷站加油  我的展厅  设计名站  古典元素  推荐下载  设计欣赏  每周专访  招募精英  人才专区  网页教程  平面设计  编程开发  设计竞赛
当前位置:首页 > 网页教程 > Flash教程 > 正文
Google
绚酷鼠标效果代码
来源:大师之家 作者:FL基理大师 2008年02月20日 11:13 网友评论:0条 点击:

在学习之前,我们先复习一下前面(功能代码07<百变图>)曾用过的
目标移动公式:

mc.当前坐标 += (mc.目标坐标 - mc.当前坐标) * A 缓动常量(0<A<1) 

例如:

舞台上有一个影片剪辑,实例名为 mc,使其移动到 x=400, y=300 的位置
mc.Tox = 400;
mc.Toy = 300;
mc.onEnterFrame = function() {
  this._x += (this.Tox-this._x)*0.3;
  this._y += (this.Toy-this._y)*0.3;
//更新每个实例的坐标了,可理解为:
//实例的 X 坐标 = 自己的X坐标 +(目标的X坐标–自己的X坐标)*0.3
//实例的 Y 坐标 = 自己的Y坐标 +(目标的Y坐标–自己的Y坐标) *0.3
};
 

实例一



思路:
1.复制出Num个鼠标,鼠标的透明度递减(如果i是递增的,N-i 就是递减的);
2.用第Num鼠标作为当前鼠标,其它均为跟随;
3.跟随的原理就是以前一个鼠标位置作为目标坐标,使后一个鼠标向前一个的位置移动。

步骤1:



绘制一个鼠标,保存为影片剪辑,连接—>导出—>标志符"mouse"
步骤2:
加入AS代码:
Mouse.hide();
//隐藏原有鼠标
var Num = 10;
//鼠标跟随的数量
for (var i = 0; i<Num ; i++){
 _root.attachMovie("mouse", "m"+i, i);
 //复制出Num个鼠标的影片剪辑
 this["m"+i]._alpha = (Num-i)/Num*100;
 //设置出渐隐效果,每个鼠标的透明度递减
}
_root.onEnterFrame = function() {
 this["m"+0]._x = _xmouse;
 this["m"+0]._y = _ymouse;
 //让this["m"+0]作为当前鼠标
 for (var i = 1; i<Num ; i++){
  this["m"+i]._x += ((this["m"+(i-1)]._x)-this["m"+i]._x)*0.5;
  this["m"+i]._y += ((this["m"+(i-1)]._y)-this["m"+i]._y)*0.5;
 }
 //令后一个鼠标跟随前一个鼠标的位置,缓动地向前一个鼠标接近
};


实例二



思路:
1.方法与实例一类似;
2.改变了鼠标跟随的样式;
3.使小的鼠标透明度大,大的鼠标透明度小(如果i是递增的,N-i 就是递减的)。

步骤1:



绘制一个鼠标,保存为影片剪辑,连接—>导出—>标志符"mouse"
步骤2:
加入AS代码:
Mouse.hide();
//隐藏原有鼠标
var Num = 10;
//鼠标跟随的数量
for (var i = 0; i<Num ; i++){
 _root.attachMovie("mouse", "m"+i, i);
 this["m"+i]._xscale = this["m"+i]._yscale=i/Num*100;
 //鼠标的尺寸递增
 this["m"+i]._alpha = (Num-i)/Num*100;
 //鼠标的透明度递减
}
_root.onEnterFrame = function() {
 this["m"+0]._x = _xmouse;
 this["m"+0]._y = _ymouse;
 for (var i = 1; i<Num ; i++){
  this["m"+i]._x += ((this["m"+(i-1)]._x)-this["m"+i]._x)*0.5;
  this["m"+i]._y += ((this["m"+(i-1)]._y)-this["m"+i]._y)*0.5;
 }
};

 

实例三



思路:
1.方法与实例一类似;
2.改变了鼠标跟随的样式,也是使鼠标跟随围成一个圆的关键;
3.改变每个鼠标的旋转。

步骤1:



绘制一个鼠标,保存为影片剪辑,连接—>导出—>标志符"mouse"
注意:鼠标与注册点之间要留有一定的距离,这是使之围成圆的关键

步骤2:
加入AS代码:
var Num = 30;
//鼠标跟随的数量
for (var i = 0; i<Num ; i++){
 _root.attachMovie("mouse", "m"+i, i);
 this["m"+i]._rotation = i*24;
 //设置初始的旋转角度
 this["m"+i]._alpha = (Num-i)/Num*100;
}
_root.onEnterFrame = function() {
 this["m"+0]._x = _xmouse;
 this["m"+0]._y = _ymouse;
 this["m"+0]._rotation += 10;
 for (var i = 1; i<Num ; i++){
  this["m"+i]._x += ((this["m"+(i-1)]._x)-this["m"+i]._x)*0.5;
  this["m"+i]._y += ((this["m"+(i-1)]._y)-this["m"+i]._y)*0.5;
  this["m"+i]._rotation += 10;
  //使所有鼠标都转起来
 }
};
 

Flash 充电: for 循环实现数组反向存储
var Len = 20;
//数组长度
var A:Array = new Array(Len);
for (var i = 0; i<Len ; i++){
 A[i] = Len-i;
 //A[Len-i-1] = i;
}
trace(A);

上一篇:获取外部按钮方法(AS2.0)   下一篇:贪吃蛇游戏代码翻译
收藏此页】【打印】【关闭
 相关文章  我要点评
·让浏览器响应鼠标滚轮
·巧用Photoshop鼠绘逼真无线鼠标
·鼠标在flash超链接上不停抖动的解决方法
·物体加速度跟踪鼠标移动
·Photoshop将鼠标与汽车的图片合成
·苹果ipod和鼠标png图标
·AS打造鼠标控制转动地球仪
·女性鼠标手发病率不断提高

免责声明:本站刊载此文不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。对本文有任何异议,请联络:68design#163.com
转载要求:作者及来源信息必需保留。转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印。



关于我们 | 在线反馈 | 广告报价 | 友情链接 | 联系我们 | 免责声明 | 在线投稿 | 网站地图
Copyright © 2003-2007 68design.net, All Rights Reserve 【找网页设计师,当然上网页设计师联盟】