您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 第十二讲flash时间轴特效动画及简单的AS脚本
●静悟论坛●我要留言爱上你是我一辈子的骄傲FlashMX2004动画设计第12课认识动作面板和编写简单ActionScript程序本课素材下载学习目的1、编写简单程序实现动画的交互控制2、认识动作面板3、掌握在动作面板中编写ActionScript程序的基本方法4、时间轴控制函数的使用方法课前热身通过前面几章的学习,你已经掌握了一些动画的制作方法,那么怎么实现动画的交互控制呢?下面一起制作一个控制动画播放的简单范例。(1)打开范例文件请打开素材下载中的ch5-1原始.fla。这是一个文字动画,文字首先从舞台左边飞入,然后由大变小。你可以先测试观察一下动画效果。打开的影片文件的图层结构如图17-1所示。图17-1图层结构接下来,要在打开的这个影片文件基础上进行操作。(2)定义第一帧的停止动作在“动画”图层上新添加一个图层,并重新命名为“AS”。选择“AS”图层的第一帧,打开“动作”面板,在其中左边的“动作工具箱”中,单击“全局函数”,展开以后,再单击“时间轴控制”,如图17-2所示。这时可以看到,“时间轴控制”类别下的函数都显示出来了。图17-2展开“时间轴控制”函数类别专家提示:默认情况下,“动作”面板显示在软件窗口的下方,只需单击就可以展开面板。如果软件窗口中没有显示“动作”面板,你可以选择“窗口”|“开发面板”|“动作”命令,将“动作”面板打开。双击“时间轴控制”类别下的“stop”函数,在“动作”面板右边的“脚本输入区”出现一个程序行,如图17-3所示。图17-3双击stop函数完成以上操作以后,“AS”图层的第一帧发生了变化,上面显示一个“a”标志,如图17-4所示。图17-4帧动作标志现在测试一下影片吧。由于在第一帧定义了一个stop函数,所以影片停在第一帧,后面的动画没有接着播放。下面通过一个按钮来控制动画开始播放。(3)通过按钮让动画开始播放在“AS”图层上新建一个“按钮”图层。选择“按钮”图层第一帧,打开“库”面板,将其中一个名字为“播放”的按钮元件拖放到舞台的合适位置。保持这个按钮实例处在选中状态,打开“动作”面板。在“动作工具箱”中展开“全局函数”|“影片剪辑控制”类别,双击该类别下的“on”函数,这样,“脚本窗口”中就自动出现相应的on程序代码,并且屏幕上同时还弹出了关于on函数的参数设置下拉列表框,如图17-5所示。图17-5定义on函数双击参数设置下拉列表框中的“press”,接着将光标移动到大括弧{的右边,然后再切换到“动作工具箱”,展开“全局函数”中的“时间轴控制”类别,双击这个类别下面的“play”函数,这时,在“脚本窗口”中会出现一个新的程序代码,最后单击“脚本窗口”上方的“自动套用格式”按钮,将“脚本窗口”中的脚本变得更清楚一些,最后完成的程序代码如图17-6所示。图17-6完成的程序代码至此,“播放”按钮的程序代码就被定义好了。测试影片,然后单击按钮,你会发现动画开始播放了。(4)让动画从第十五帧跳转播放下面实现动画播放到结尾再跳转到第十五帧循环播放的动画效果。选择“AS”图层的第三十帧(动画的最后一帧),按F7插入一个空白关键帧,在“动作”面板中,双击“时间轴控制”类别下的“gotoAndPlay”函数,这样,在“脚本窗口”中出现gotoAndPlay函数程序代码,在小括弧中输入“15”即可。至此就在“AS”图层的第三十帧定义了以下程序代码:gotoAndPlay(15);这个程序代码的功能是,当动画播放到结尾时,自动跳转到第十五帧继续播放。这样就形成一个从第十五帧到第三十帧循环播放的动画效果。测试观察一下吧。(5)按钮控制动画跳转到第一帧前面实现了一个从第十五帧到第三十帧循环播放的动画效果,怎么停止这个循环呢?选择“按钮”图层的第一帧,从“库”面板中将一个名字为“停止”的按钮元件拖放到舞台合适位置。保持这个按钮实例处在选中状态,在“动作”面板中,定义这个按钮实例的程序代码是:on(press){gotoAndStop(1);}这段程序代码的定义方法和步骤(3)类似,这里不再详述。这段程序代码的功能是,当单击“停止”按钮时,跳转到影片的第一帧并停止播放动画。课堂讲解通过“课前热身”中范例的制作,你对“动作”面板的使用方法,以及编写简单的动画交互控制程序已经有了一个概括的认识。下面系统讲解一下相关的知识。1.认识“动作”面板Flash提供了一个专门处理动作脚本的编辑环境——【动作】面板。默认情况下,【动作】面板自动出现在Flash软件窗口的下方,如果【动作】面板没有显示出来,那么可以执行【窗口】|【开发面板】|【动作】命令来显示。FlashMX2004提供了改进的【动作】面板。在这个面板中不再包括以前版本中的“标准模式”和“专家模式”。下面来认识一下【动作】面板的使用方法。(1)【动作】面板的组成【动作】面板是Flash的程序编辑环境,它由两部分组成。右侧部分是“脚本窗口”,这是输入代码的区域。左侧部分是“动作工具箱”,每个动作脚本语言元素在该工具箱中都有一个对应的条目,如图17-7所示。图17-7【动作】面板在【动作】面板中,“动作工具箱”还包含一个“脚本导航器”(位置在如图17-7所示的左下角小窗口),“脚本导航器”是FLA文件中相关联的帧动作、按钮动作具体位置的可视化表示形式,你可以在这里浏览FLA文件中的对象以查找动作脚本代码。如果单击“脚本导航器”中的某一项目,则与该项目关联的脚本将出现在“脚本窗口”中,并且播放头将移到时间轴上的该位置。“脚本窗口”上方还有若干功能按钮,利用它们可以快速对动作脚本实施一些操作,如图17-8所示。图17-8功能按钮(2)添加程序代码可以直接在【脚本输入区】中编辑程序代码、输入函数和参数或删除程序代码。还可以双击“动作工具箱”中的某一个函数,或单击“脚本窗口”上方的【将新项目添加到脚本中】按钮,向【脚本窗口】添加程序代码。一般情况下,可以在其上面定义程序代码的元素包括:关键帧、按钮、影片剪辑。前面的“课前热身”中分别定义了关键帧和按钮上面的程序代码,具体方法这里不再重复,请参看前面的相关步骤。有关影片剪辑的程序代码定义会在以后的章节中介绍。(3)固定动作脚本利用“脚本导航器”可以快速浏览影片不同位置的动作脚本,但是如果影片中动作脚本比较多,并且动作脚本分散于FLA文件中的多个位置,那么可以在【动作】面板中固定(就地锁定)多个脚本,以便在脚本之中移动。双击“脚本导航器”中的某一项,则该脚本会被固定,被固定的脚本会在“脚本窗口”的下方显示一个标签。如图17-9所示,在“脚本窗口”下方显示了3个标签,说明有3个脚本被固定。图17-9被固定的脚本标签用鼠标单击这些被固定的脚本标签,可以在被固定的脚本之间来回切换。在图17-9上,目前“脚本窗口”中显示的是图层2第1帧上的动作脚本。如果想关闭被固定的脚本,那么用鼠标右键单击相应的脚本标签,在弹出的快捷菜单中选择【关闭脚本】命令即可。(4)关于代码提示在【动作】面板中编辑动作脚本时,Flash可以检测到正在输入的动作并显示代码提示,即包含该动作完整语法的工具提示,或列出可能的方法或属性名称的弹出菜单。当精确输入或命名对象时,会出现参数、属性和事件的代码提示,这样,动作脚本编辑器就会知道要显示哪些代码提示。例如,假设输入以下代码:varnames:Array=newArray();names.当输入句点“.”时,Flash就会显示可用于Array对象的方法和属性的列表,因为已经将该变量的类型指定为数组,如图17-10所示。图17-10代码提示“脚本窗口”上面有一个【显示代码提示】按钮,在编辑动作脚本时,随时单击这个按钮也可以显示代码提示。(5)检查语法和标点要彻底弄清编写的代码是否能像预期的那样运行,需要发布或测试文件。不过,可以不必退出FLA文件就迅速检查动作脚本代码。语法错误列在【输出】面板中。还可以检查代码块两边的小括号、大括号或中括号(数组访问运算符)是否齐全。在【动作】面板中,可以用以下3种方法检查语法:◆单击“脚本窗口”上方的【语法检查】按钮。◆在【动作】面板中,单击右上角的按钮,在弹出的菜单中选择【语法检查】命令。◆在【动作】面板中,按快捷键Ctrl+T。2.“时间轴控制”类别下的函数“时间轴控制”类别下包括九个简单函数,利用这些函数可以定义动画的一些简单交互控制。下面讲解一下这些函数的用法。(1)gotoAndPlay一般形式:gotoAndPlay(scene,frame);作用:跳转并播放,跳转到指定场景的指定帧,并从该帧开始播放,如果没有指定场景,则将跳转到当前场景的指定帧。参数:scene,跳转至场景的名称;frame,跳转至帧的名称或帧数。有了这个命令,可以随心所欲地播放不同场景,不同帧的动画。例:当单击被附加了gotoAndPlay动作按钮时,动画跳转到当前场景第十六帧并且开始播放:on(release){gotoAndPlay(16);}例:当单击被附加了gotoAndPlay动作按钮时,动画跳转到场景2第一帧并且开始播放:on(release){gotoAndPlay(场景2,1);}(2)gotoAndstop一般形式:gotoAndstop(scene,frame);作用:跳转并停止播放,跳转到指定场景的指定帧并从该帧停止播放,如果没有指定场景,则将跳转到当前场景的指定帧。参数:scene:跳转至场景的名称;frame:跳转至帧的名称或数字。(3)nextFrame()作用:跳至下一帧并停止播放。例:单击按钮,跳到下一帧并停止播放:on(release){nextFrame();}(4)prevframe()作用:跳至前一帧并停止播放。例:单击按钮,跳到前一帧并停止播放:on(release){prveFrame();}(5)nextScene()作用:跳至下场景并停止播放。(6)PrevScene()作用:跳至前场景并停止播放。(7)play()作用:可以指定影片继续播放。在播放影片时,除非另外指定,否则从第一帧播放。如果影片播放进程被GoTo(跳转)Stop(停止)语句停止,则必须使用play语句才能重新播放。(8)Stop()作用:停止当前播放的影片,该动作最常见的运用是使用按钮控制影片剪辑。例如,如果需要某个影片剪辑在播放完毕后停止而不是循环播放,则可以在影片剪辑的最后一帧附加Stop(停止播放影片)动作。这样,当影片剪辑中的动画播放到最后一帧时,播放将立即停止。(9)StopAllSounds()作用:使当前播放的所有声音停止播放,但是不停止动画的播放。要说明一点,被设置的流式声音将会继续播放。例如:On(release){StopAllSounds();}当按钮被单击时,影片中的所有声音将停止播放。
本文标题:第十二讲flash时间轴特效动画及简单的AS脚本
链接地址:https://www.777doc.com/doc-2163778 .html