在这个实例中你可以看到一条七彩龙在你的指挥下栩栩如生地舞动。其实动画的实现原理很简单:通过设置不同的Movie
Clip,而每一个Movie Clip的Action都设置为跟随前一个Movie Clip做运动的指令。也就是:A跟随鼠标,B跟随A,C跟随B,D跟随C...以此类推。下面我们使用FLASH
mx来制作本实例,大家可以通过本实例来熟悉和掌握MX的界面以及一些与flash5的不同之处。文章末尾提供.fla文件下载学习。
步骤 1
首先打开MX新建一个影片,选择modifyàdocument…命令设置影片的一些属性,先将影片播放速率调整为
50,影片背景被黑色,大小任意,如图1所示:

图 1
然后分别建立7 个Movie Clip组件,依次命名为"spinner"、"spinner2"、"spinner3"、"spinner4"、"spinner5"、"spinner6"、"spinner7",每一个组件内分别画一个正圆,填充上不同的颜色,在正圆上一次写上"e"、"江"、"春"、"水"、"向"、"东"、"流"七个字,我们要把spinner组件作为龙头,所以用矩形工具给圆上画上龙的两个角,如图2所示:

图 2
七个做为龙的身体的movieclip做好后,回到主场景中,分别给七个movieclip建立不同的图层,分别命名为"e"、"江"、"春"、"水"、"向"、"东"、"流",如图3所示:

图 3
然后分别将七个movieclip放到相应的图层中去,并且按顺序排列好,如图4所示:

图 4
步骤 2
对主场景上的 7 个Movie Clip分别执行windowsàproperties命令,调出properties面板,分别设置它们的Instance
Name 为"spin1"、"spin2"、"spin3"、"spin4"、"spin5"、"spin6"、"spin7"
如图5所示:

图 5
步骤 3
新建一个Movie Clip组件,命名为"drg1",在"drg1"的编辑区中不要放置任何对象,让它是一个空白内容的Movie
Clip即可。
回到主场景中,插入一个新的图层,命名为"Drag1",将"drg1"组件放置在场景中,执行
windows/properties命令调出properties属性面板, 设置其Instance Name为"drg1",如图6所示:

图 6
选择图层"drag1"的第一帧,然后调出actions面板,设置此帧的action 如图7所示:

图 7
也就是要对drg1对象进行拖动。
步骤 4
再建立一个Movie Clip组件,命名为"action",在"action"的编辑区内一样不要放置任何对象,让它是一个空白内容的Movie
Clip即可,这个movieclip主要用来设置进行控制的action。
在组件"action"的第一帧上设置如下的action:
Set Variable: "thisX" = GetProperty ( "/drg1",
_x )
//取得组件drg1的x坐标
Set Variable: "thisY" = GetProperty ( "/drg1",
_y )
//取得组件drg1的y坐标
Set Variable: "spX" = GetProperty ( "/spin1",
_x )
//取得龙头的x坐标
Set Variable: "spY" = GetProperty ( "/spin1",
_y )
//取得龙头的y坐标
Set Variable: "difX" = thisX - spX
//求得drg1与龙头的x坐标差
Set Variable: "difY" = thisY - spY
//求得drg1与龙头的y坐标差,因为我们拖动的是drg1,所以其实求的是鼠标与龙头的坐标差
Set Variable: "stepX" = 1
//设置x方向的增量为1
Set Variable: "stepY" = 1
//设置y方向的增量为1
Set Variable: "xStp" = difX / 10
//求得鼠标与龙头的x坐标差的十分之一
Set Variable: "yStp" = difY / 10
//求得鼠标与龙头的y坐标差的十分之一
Set Property ("/spin1", X Position) = spX + xStp
//设置龙头的新位置的x坐标为:原来的x坐标与差值的十分之一 的和
Set Property ("/spin1", Y Position) = spY + yStp
//设置龙头的新位置的y坐标为:原来的x坐标与差值的十分之一 的和
[1] [2] [3] [4] [5] 下一页 |