【ActionScript】利用复制影片duplicateMovieClip与鼠标拖动跟随startDrag做出鼠标移动特效

上次在《【ActionScript】ActionScript2.0的Helloworld》(点击打开链接)中介绍了ActionScript2.0的基本用法。

这次准备打算用复制影片duplicateMovieClip与鼠标拖动跟随startDrag做出如下图的鼠标移动特效:

技术分享

一、准备工作

1、首先还是与上次上一样,新建一个ActionScript2.0的文件,然后先保存一下。之后,如下图所示,通过插入->新建元件,或者Ctrl+F8,在类型中选项图形,命名随意,新建一个图形元件。

技术分享

2、之后,如下图,利用椭圆工具,拖出一个位于中央的、无边框的圆形。可以先拖出一个圆形,然后利用选择工具,在位置与大小,设置其大小与位置。一般位置的X、Y分别为宽、高的相反数的一半,这个椭圆工具,则处于元件的中央。

技术分享

3、之后,再插入一个元件,但这次类型是影片剪辑。命名好影片剪辑的名称,一会儿要被脚本控制。这里假设为ball_move,单击确定。

技术分享

4、打开库面板,或者直接点击F11,把刚才新建的元件拖入到这个影片剪辑当中。

技术分享

5、先把第1帧所拖入的元件,利用选择工具,对其位置与大小属性进行修改,把X、Y都改成0,0让这个元件居中。之后,在第20帧插入一个关键帧,设置其Alpha(透明度)的色彩效果为0。在第1帧到第20帧之间如下图,创建一个传统补间。之后点击右上角的“场景1”,切换到舞台,就可以开始写代码。

技术分享


二、脚本编程

1、先把库中的影片剪辑拖到场景1的第1帧,用选择工具点击这个影片剪辑对其实例名称修改为ball_move,如下图:

技术分享

2、然后,右键第1帧,打开“动作”面板,直接写入如下脚本:

var num = 0;
if (num == 0)
{
	//_root是位置,指时间轴,也就是时间轴里的ball_move影片剪辑
	//true指拖中心位置,指定可拖动影片剪辑是锁定到鼠标位置中央
	//也就是说,如果num=0且鼠标拖动,则这个影片剪辑的中心对其鼠标
	startDrag("_root.ball_move", true);
}
else
{
	//之后是把整个影片剪辑复制一份,随着num的自增,新影片剪辑的名称为ball1_mc,ball2_mc...
	//新影片剪辑处于第num层,如果第num层已有影片剪辑则覆盖
	//由于影片剪辑在不断地播放,不断地替换前面复制出来的影片剪辑,因此可以形成不错的视频效果。
	duplicateMovieClip("_root.ball_mc", ("ball") + num + "_mc", num + 1);
	num = num + 1;
	//这里的num>20就重新开始,是与具有20帧的影片剪辑是呼应的
	if (num > 20)
	{
		num = 0;
	}
}

按Ctrl+Enter运行则得到上述效果。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。