这是一个来自Flash Planet的例子,是完全通过Actions来实现的。对于熟悉Actions的人来说,做这样一个效果简直易如反掌。不过相信还有许多朋友对Actions还是似懂非懂的,有时候甚至觉得很高深,所以这一节开始,我们将有意识地接触一些用简单的Actions实现的效果,大家先建立一个基本的概念,为我们下一章深入全面地探讨Actions打下好的基础。
新建一个文件,设置背景色为黑色。
按Ctrl-F8新建一个图形类图符line。选择椭圆工具,在参数修改器中取消边线,并把填充色设置为黑蓝黑线性渐进色,也就是把渐进色定义条设为右图所示:,在编辑区拉出一个扁扁的椭圆来。选择箭头工具,在不选中椭圆的情况下,把鼠标移到椭圆的最右端,当鼠标右下方出现弧线时,点住并拖动鼠标把椭圆拉成如下图所示的样子。以下的两个图所示为同一对象,因为左图不能很好地反映其形状,所以同时给出右图。注意,一定要把这个椭圆移到下图所示的位置上,也就是让它的左端刚好位于十字定位符上,这是因为我们一会儿要对它做放缩变形,并希望其左端固定不动。
再次按下Ctrl-F8新建一个电影片断类图符linemovie。 按Ctrl-L打开图库窗口,把line拖出来放在编辑区中,请再次注意所放的位置:要求它自身的十字定位符正好与编辑区的十字定位符重合,如下图左所示。这是因为我们需要对这个图符实例做旋转,并希望其左端为其旋转中心点。
在第120帧按下F6插入关键帧,
把该实例向右拉伸至上图右所示大小。双击该实例,设置它的颜色参数如下图所示:,就可得到上图右所示颜色效果。
现在设置第1帧的属性为运动渐变,这样我们就把这个图符做好了。
回到主场景。从图库中把这个电影片断类图符linemovie拖出来放在中间,如果太大就把它缩小一些。双击它,在Definition(定义)标签下把它的实例名称设成line,如下图所示。
在第2帧按F6插入关键帧。双击第2帧设置Actions。大家先跟我一步一步往下做,最后我们再来分析一下这样编写Actions的目的。点,选Set Variable,把参数设置为下图所示。Set Variable用来设置变量,学过编程的朋友可以很容易理解。变量名可以是任意以字母开头的字符串,这里我们用n更有意义一些。注意,因为我们需要把n+3的值赋给n,所以在下图所示Value一项中右边的符号应为而不是。表示表达式,表示字符串。
下面再来设置条件判断语句。再点,选If。并在右边的Condition(条件)栏中输入n<360。
点,选Duplicate/Remove Movie Clip(复制/删除电影片断),把右边的参数设置成下图所示。其中target为待复制的对象,这里我们用刚做好并命名的电影片断line。
它前面的“/”表示它的位置位于当前层的根部,而没有 “/”
的目标则对应于当前电影片断。 New Name为复制后新生成的电影片断名,这里用"line"&n。&为连结符,这时复制后的新电影片断名将随着n的不同而不同,比如n=1时,新电影片断名为line1,n=4时,新名为line4等等。在New Name中,只需要名字,不需要路径。Depth(深度)确定创建的实例与其他对象重叠时的层次。整条语句的作用是把电影片断line复制并重新命名为"line"&n。
再点,选Set Property(设置电影片断的属性)。这是Actions中用到的最频繁也最重要的语句之一。我们来设置新复制的电影片断的旋转属性。
在Set下拉框中选Rotation(旋转),Target为要设置属性的电影片断,填上"/line"&n。Value用来指定改变后的属性值。其中GetProperty用来获取指定对象的相关属性,在这里我们将得到电影片断line的旋转角度值,以度为单位。这样设置的作用是把新复制出来的电影片断"line"&n做一个旋转,其旋转角为电影片断line旋转角度加上n的值。
最后,按选Go to。并在右下方的Control复选框中打上对勾。这条语句的作用是跳转到第1帧并继续播放。
下面是做好的Actions语句:
Set Variable: "n" = n+3
If (n<360)
Duplicate Movie Clip("/line","line"&n,n)
Set Property("/line"&n, Rotation) =
GetProperty("/line",_rotation)+n
Go to and Play(1)
End If
根据以上我们对每一条语句的解释,大家不难理解这段小程序的设计思路。我在这里只简单说一下,执行这个Actions的结果是按顺序生成包括原来的电影片断在内的一共120个电影片断,且每一个电影片断均在前一个的基础上顺时针旋转了3度。因为电影片断在复制生成的过程中自身也在播放中,所以我们就看到了上面的效果。这里要注意的是,在制作linemovie电影片断类图符时,我们用到了120帧,这个数字与Actions中的第1句密切相关,它是由360/3得到的,如果第1句改写为Set Variable: "n" = n+4,则在编辑linemovie时,用到90帧(360/4)就行了,否则会得到不好的效果,不信大家可以试试看就知道为什么了。