分享

duplicateMovieClip方法和attachMovie方法的使用

 昵称PG98j 2013-03-12

影片剪辑的duplicateMovieClip方法是用来复制影片剪辑的。该方法要求舞台上有一个可供复制的影片剪辑实例。实例可以是手工添加的,也可以是通过AS添加的。 ******"http://www."******

影片剪辑的attachMovie方法用来附加影片剪辑。该方法不依靠舞台上现有的影片剪辑实例。而是直接将“库”中的元件添加到动画场景中。要通过attachMovie方法添加到场景中的元件必须具有链接标示符。

下面是两个实例,供大家练习和作比较:

实例一:用duplicateMovieClip方法复制五角星

第一步:创建一个影片剪辑元件star,绘制一个五角星,并拖放到舞台上,实例命名为star 。 内容来自鱼渔工作室******"http://www."******

第二步:在主时间轴上第一帧的“动作”面板中添加如下代码:

       var i = 1;                                       //变量i用来控制动态复制出的影片剪辑的深度
       star._visible = false;                           //将舞台中的实例设为不可见
       star.onMouseDown=function() {             //star.onEnterFrame=function()
            star.duplicateMovieClip("star"+i, i);      //当按下鼠标是复制一个实例并命名为“star”+i


            with (_root["star"+i]) {                       //_root["star"+i]._x = _root._xmouse;
                 _x = _root._xmouse;                    //this["star"+i]._x = _root._xmouse;
                 _y = _root._ymouse;
            }
            _root["star"+i].onEnterFrame = function() {  //令复制出的实例自动旋转
                this._rotation += 10; 内容来自鱼渔工作室******"http://www."******
            };
            i++;
       }; 内容来自鱼渔工作室******"http://www."******

第三步:测试动画,在播放窗空中单击鼠标,在鼠标指针位置处显示一个影片剪辑,继续点击获得更多。

 

鼠标跟随特效 鱼渔教程******"http://www."******

新建影片剪辑,做一个小球移动(左右、上下都行),在小球移动动画的最后一帧添加AS:

this.removeMovieClip();

回到主场景,拖入上一制作的小球MC,命名实例名为qiu_mc

在时间轴上上添加AS:

i=1;//初始化变量 鱼渔课件"http://www."

qiu_mc._visible=false;//被复制的母体MC不可见;

qiu_mc.onEnterFrame=function(){//.......... 内容来自鱼渔工作室******"http://www."******

duplicateMovieClip(qiu_mc,"qiu_mc"+i,i);//复制MC

this["qiu_mc"+i]._x=_xmouse;//鼠标跟随

this["qiu_mc"+i]._y=_ymouse;

this["qiu_mc"+i]._rotation=random(360);//随机转动

i++;//继续复制

}

效果:http://web./wsy520/shixi/sbtx.swf

 

  鱼渔课件"http://www."******

 

实例二:用attachMovie方法制作漫天飞舞

就在我整理实例二的过程中,看到了“动画教室”圈子里苌楚同学做了一个《电影杂色效果》,我觉得和这个我要讲的实例二的原理是一样的,不信等你学会了自己分析一下,呵呵!好了,我们开始吧!

第一步:创建一个影片剪辑元件flower,绘制一个美丽的花瓣,并添加链接标识符flower 。

第二步:在舞台上绘制一个美丽的画面作为背景。

第三步:在主时间轴上新建一个图层,并在第一帧的动作面板中添加如下代码: ******"http://www."******

      for(var i=0;i<100;i++){
            _root.attachMovie("flower",i,i);
           _root[i]._x=550*Math.random();    
 
//Math类的randmom方法返回0~1之间的一个随机数 _root[i]._y=400*Math.random(); _root[i]._rotation=60*Math.random(); _root[i]._xscale=_root[i]._yscale=_root[i]._alpha=100*Math.random(); _root[i].on Enter
//Math类的randmom方法返回0~1之间的一个随机数
_root[i]._y=400*Math.random();
_root[i]._rotation=60*Math.random();
_root[i]._xscale=_root[i]._yscale=_root[i]._alpha=100*Math.random();
_root[i].onEnterFrame=function(){
this._y+=this._xscale/10; //根据_xscale设置下落速度,即大的快小的慢
this._y%=400; //超出下边界时取模使重新回到上边界
};
}

鱼渔工作室"http://www."

第三步:测试动画,即可以看到漫天飞舞的效果了。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多