当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > 运用for循环来对多个mc进行检测

Flash动画制作
巧用超级解霸在Flash V5.0中插入录像
教你用Flash MX来制作简单的课件界面
Flash MX 2004 ActionScript图文教程(二)
Flash MX 2004 ActionScript图文教程(三)
Flash MX 2004 ActionScript图文教程(四)
Flash MX 2004 ActionScript图文教程(五)
Flash MX 2004 ActionScript图文教程(六)
flash场景之间相互跳转的实现方法
Flash本地加密
FLASH -- 关于变量的问题FLASH -- 关于变量的问题
Flash5 画任意直线教程
Flash MX 视频导入功能详解
制作飞舞的蝴蝶
Flash MX 2004 ActionScript图文教程(七)
Flash MX 2004 ActionScript图文教程(八)
Flash MX 2004 ActionScript图文教程(九)
Flash MX 2004 ActionScript图文教程(十)
Flash教程 飞翔的文字
Flash MX 2004 ActionScript图文教程(十一)
制作Flash网站技巧拾零

Flash动画制作 中的 运用for循环来对多个mc进行检测


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

然后复制以下代码到第一桢,出效果。
_root.createEmptyMovieClip("m", 0);
with (m) {
   beginFill(0xff0000);
   moveTo(50, 0);
   for (i=Math.PI/180; i<=Math.PI*2; i += Math.PI/180) {
      lineTo(50*Math.cos(i), 50*Math.sin(i));
   }
   endFill();
   _visible = 0;
}//首先画个圆。
for (i=1; i<=7; i++) {
   M = m.duplicateMovieClip("m"+i, i);//进行多个的复制
   M.tempo = 0;//设置每个复制出来的mc内的变量的初始值
   M._x = Stage.width/40+i*70;//复制出来的mc的位置
   M._y = Stage.height/2;
   M.onEnterFrame = function() {
      if (this.hitTest(_xmouse, _ymouse, true)) {//对每个mc而言,如果检测到鼠标
         new ZoomOpen(this).jumpSkal(100, .9, .6);

//就调用弹性的方法,这里创建了对象的实例
      } else {
         new ZoomOpen(this).jumpSkal(30, .6, .5);
      }
   };
}
function ZoomOpen(mc) {//构造了个对象
   this.mc = mc;
}
ZoomOpen.prototype.jumpSkal = function(obj, besch, friktion) {

//为对象添加了弹性的方法
   this.mc.tempo += (obj-this.mc._xscale)*besch;
   this.mc.tempo *= friktion;
   this.mc._xscale = this.mc._yscale += this.mc.tempo;
};
//完成。