中文版Flash动画制作培训教程第11章.ppt_第1页
中文版Flash动画制作培训教程第11章.ppt_第2页
中文版Flash动画制作培训教程第11章.ppt_第3页
中文版Flash动画制作培训教程第11章.ppt_第4页
中文版Flash动画制作培训教程第11章.ppt_第5页
已阅读5页,还剩82页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第11课 Actions语句应用,本章要点 具体要求 本章导读 上机练习,本章要点,影片控制 影片剪辑属性的设置 常用Actions语句,具体要求,掌握停止、播放及跳转语句的使用方法 掌握影片属性的设置方法 掌握常用Actions语句的使用方法,本章导读,在制作Flash动画的过程中,如果使用Actions语句,可以制作出一些复杂的特效,比如下雪、下雨等效果。本章将讲解如何利用Actions语句使Flash动画更加生动、形象。常用的Actions语句有如下类型: Stop语句:让动画停止在指定的帧。 gotoAndPlay语句:使动画跳转到指定帧并进行播放。 _xscale和_yscale命令

2、:指定某元件的缩放属性。 _xmouse和_ymouse命令:设置属性在舞台中的位置。,11.1 影片播放控制,在Flash MX 2004中,利用一些简单而常用的Actions语句可以对动画的播放进行控制,为元件或指定的对象添加特定动作。,11.1 影片播放控制,11.1.1 知识讲解 11.1.2 典型案例幻灯片,11.1.1 知识讲解,在制作Flash动画时,一些比较简单的Actions语句的使用频率是相当高的,如Stop,Play和gotoAndPlay等,利用这些语句又可以编辑一些结构复杂且功能强大的Actions脚本。下面将分别讲解这些语句的有关知识。,11.1.1 知识讲解,1停

3、止播放语句stop 2播放影片语句play 3跳转并停止语句gotoAndStop 4跳转并播放语句gotoAndPlay,1停止播放语句stop,前面制作的所有动画都没有添加动作脚本,所以每个动画在播放完最后一帧时都将回到第1帧重复播放。为了避免这种无休止的循环,可以使用停止语句stop。 stop语句没有参数,其使用方法如下: stop( ); 当在时间轴中的某一关键帧上添加该语句后,动画播放到该帧的位置即自动停止。 下面举例讲解stop语句的使用方法。要使Flash动画在第15帧处停止播放,其具体操作如下:,1停止播放语句stop,1)新建一个“Stop.fla”文档,在第5,10,15

4、和20帧处插入关键帧。分别在5个关键帧中输入“1”、“5”、“10”、“15”和“20”5个数字。 2)选中时间轴的第15帧,按【F9】键打开【动作】面板,在该面板的脚本编辑窗口中输入脚本“stop( );”。 3)添加完成后,按【Ctrl+Enter】键测试动画(第11课源文件Stop.fla)。,2播放影片语句play,播放影片语句play的作用与stop刚好相反,stop语句使播放的动画停止下来,而play语句则可以使停止的动画继续播放。 下面使用上面所举的例子,让动画在第15帧处不停止且继续播放,其具体操作如下: 1)新建一个“图层2”,并拖动到“图层1”的下层。 2)在“图层2”中选

5、择第15帧并插入关键帧,再按【F9】键打开【动作】面板,在该面板的脚本编辑窗口中输入脚本“play( );”。 3)添加完成后,按【Ctrl+Enter】键测试动画(第11课源文件Play.fla)。,2播放影片语句play,除了可以为帧添加play语句外,还可以为按钮元件和影片剪辑元件添加play语句。 如果是给某一按钮添加play动作,则该动作会被自动包含在处理函数on(mouse event)中,在编辑框中显示出如下语句: on (release) play(); ,2播放影片语句play,如果是给某个影片剪辑添加play动作,则该动作会被自动包含在处理函数onClipEvent内,在编

6、辑框中显示如下语句: onClipEvent (load) play(); ,3跳转并停止语句gotoAndStop,使用跳转并停止语句gotoAndStop可以跳转到指定的帧停止播放,该语句既可以添加在按钮元件上,也可以添加在帧上。下面讲解跳转并停止语句gotoAndStop的使用方法,其具体操作如下: 1)新建一个Flash文档,在第2帧处按【F6】键插入关键帧,导入图片“风景1.jpg”,并将其缩放至舞台大小(第11课素材)。 2)用同样的方法依次在第3,4和5帧处导入图片“风景2/3/4.jpg”。,3跳转并停止语句gotoAndStop,3)按【Ctrl+F8】键创建一个名为“图1”

7、的按钮元件,选中【弹起】帧,打开【库】面板,选中位图“风景1.jpg”,按住鼠标左键将其拖动到元件编辑区的中心,然后将其按比例缩小。 4)在【指针经过】、【按下】和【点击】帧处按【F6】键,将【弹起】帧中的图片沿用过来。选中【指针经过】帧中的图片,将其按比例放大一点。 5)用相同的方法分别制作按钮元件“图2”、“图3”和“图4”,每个按钮元件中的图形都是对应的位图“风景2.jpg”、“风景3.jpg”和“风景4.jpg”。,3跳转并停止语句gotoAndStop,6)单击 图标回到场景中,新建一个图层,系统自动命名为“图层2”,将其拖动到“图层1”的下层。选中“图层2”中的第1帧,打开【库】面

8、板,将其中的按钮元件“图1”、“图2”、“图3”和“图4”依次拖放到舞台中。 7)选中按钮元件“图1”,打开【动作】面板,在【全局函数】下的【影片剪辑控制】中双击 选项,右边的窗口中将弹出【添加“on”语句】列表框,在其中双击 选项,使它出现在“on”后面的括号中。表示事件发生在单击鼠标后。,3跳转并停止语句gotoAndStop,8)在“”后单击鼠标,再按【Enter】键,然后在【全局函数】下的【影片剪辑控制】中双击 选项,右边的窗口中将出现相应的命令。 9)在gotoAndStop( )的括号中输入“2”,表示当单击鼠标后动画跳转到第2帧并停止播放动画。完成后的Actions语句如下所示:

9、,3跳转并停止语句gotoAndStop,on (release) gotoAndStop(2); /单击鼠标后动画跳转到第2帧并停止 (10)选中按钮元件“图2”,打开【动作】面板,在窗口中输入如下Actions语句。 on (release) gotoAndStop(3); /单击鼠标后动画跳转到第3帧并停止 ,3跳转并停止语句gotoAndStop,(11)选中按钮元件“图3”,打开【动作】面板,在窗口中输入如下Actions语句。 on (release) gotoAndStop(4); /单击鼠标后动画跳转到第4帧并停止 (12)选中按钮元件“图4”,打开【动作】面板,在窗口中输入如

10、下Actions语句。 on (release) gotoAndStop(5); /单击鼠标后动画跳转到第5帧并停止 ,3跳转并停止语句gotoAndStop,13)按【Ctrl+Enter】键播放动画,发现画面不停闪烁,根本无法单击它们。这时只需在时间轴中选中“图层2”的第1帧,并为其添加stop语句。 14)再次按【Ctrl+Enter】键播放动画,出现测试画面,在其中单击任意一张图片,即可使这张图片放大到整个屏幕。 15)选中“图层1”第2帧中的图片,按【F8】键,将其转换为按钮元件,用相同的方法将第3,4和5帧中的图片转换为按钮元件。,3跳转并停止语句gotoAndStop,16)按【

11、Ctrl+Enter】键播放动画,单击其中任意一张图片,可以使该图片放大显示,再单击放大显示的图片即可回到测试画面(第11课源文件gotoAndPlay.fla)。,4跳转并播放语句gotoAndPlay,为帧或元件添加gotoAndPlay命令的方法与添加gotoAndStop的方法相同。另外,为帧添加goto命令的方法与按钮元件相似,不同之处是按钮的Actions语句多了一行用于判定动作的语句,而在帧中则直接输入gotoAndPlay( )或gotoAndStop( )等。 下面将讲解跳转并播放语句gotoAndPlay的使用方法,其具体操作如下:,4跳转并播放语句gotoAndPlay,

12、1)在Flash中打开“运动的小球.fla”文档(第11课源文件运动的小球.fla)。 2)选中第15帧关键帧,按【F9】键打开【动作】面板,在脚本编辑区中输入“gotoAndPlay(1);”。 3)按【Ctrl+Enter】键测试动画,该动画只在第115帧之间播放(第11课源文件gotoAndPlay.fla)。,11.1.2 典型案例幻灯片,本案例将制作一个幻灯片,主要练习on和gotoAndStop语句的用法。 素材位置:【第11课素材】 效果图位置:【第11课源文件幻灯片.fla】 制作思路:,案例目标,1)将素材导入到库中,再利用素材制作5个不同的按钮,包括“首页”、“上一页”、“

13、下一页”和“末页”。 2)将5张不同的图片分别放在同一图层的不同帧中。 3)再新建一个图层,将5个按钮分别放置到相应的图片下,并给按钮添加Actions语句。 4)最后新建一个图层,让动画停止在第1帧。,“幻灯片”最终效果,操作步骤,其具体操作(请老师参照软件讲解):,案例小结,本案例制作了一个幻灯片,在制作过程中主要运用了按钮的制作方法、图片的缩放、为帧添加标签和使用Actions语句等知识。在制作幻灯片的过程中,需要掌握好为每个按钮添加的Actions语句是否能够达到预期的效果。,11.2 影片剪辑属性的设置,影片剪辑具有各种属性,通过调整影片剪辑的各种属性可以改变影片剪辑的位置和显示状态

14、。,11.2 影片剪辑属性的设置,11.2.1 知识讲解 11.2.2 典型案例变幻的遮罩效果,11.2.1 知识讲解,最常用的影片剪辑属性有以下几种: _x和_y属性:它们代表影片剪辑在场景中的水平坐标和垂直坐标。 _xmouse和_ymouse属性:通过设置该属性可获取鼠标光标在屏幕中的坐标位置。 xscale和_width属性:它们决定影片剪辑在水平方向上的显示宽度。 yscale和_height属性:它们决定影片剪辑在垂直方向上的显示高度。,11.2.1 知识讲解,_rotation属性:设置该属性可以旋转影片剪辑。 _alpha属性:它代表影片剪辑的透明度。 _visible属性:该

15、属性决定影片剪辑是否可见。,11.2.1 知识讲解,1位置属性_x和_y 2大小属性_width和_height 3鼠标位置属性_xmouse和_ymouse 4缩放属性_xscale和_yscale 5旋转属性_rotation 6透明度属性_alpha 7可见属性_visible 8设置属性值setProperty 9获取属性值getProperty,1位置属性_x和_y,Flash舞台中的每个对象都有它的坐标值,场景中的每一点都可以用坐标表示。一般用x表示水平坐标,用y表示垂直坐标。在Flash中,用_x和_y分别表示对象的x坐标值属性和y坐标值属性。 如果要在主时间轴中表示影片剪辑“A

16、BC”的位置属性,可以使用下面的方法: ABC._x ABC._y,1位置属性_x和_y,如果要在影片剪辑本身的脚本中表示它自己的坐标,可使用下面的方法: _x; _y; 或者: this._x; this._y;,1位置属性_x和_y,在【属性】面板和【信息】面板中都可以查看和更改对象的位置。选择【窗口】【设计面板】【信息】命令(或按【Ctrl+I】键)可以打开【信息】面板。 影片剪辑的坐标的【信息】面板中显示了当前所选对象的坐标位置、大小、颜色以及鼠标位置等。其中,X和Y数值代表了所选对象的水平坐标和垂直坐标。面板中的 图标表示坐标位置以所选对象的左上角为基准还是以中心为基准。,1位置属性

17、_x和_y,在Actions语句中,更改_x和_y属性也可以改变影片剪辑的位置。如可以为影片剪辑编写如下的事件处理函数: onClipEvent(enterFrame) _x+=9; _y+=5; 该事件处理函数表示:影片剪辑的位置在每次的enterFrame事件中向右移动9个像素,同时向下移动5个像素。,2大小属性_width和_height,_width和_height也是影片剪辑的两个重要属性,它与影片剪辑的宽度和高度有关。_width和_height代表影片剪辑的绝对宽度和高度,而不是相对比例。如使用_width和_height将影片剪辑的尺寸放大一倍,表达方式如下: onClipEv

18、ent(enterFrame) _width=Math.abs(_root._xmouse-_x)*2; _height=Math.abs(_root._ymouse-_y)*2; ,3鼠标位置属性_xmouse和_ymouse,鼠标位置用_xmouse属性和_ymouse属性来确定。其中,_xmouse属性代表光标的水平坐标位置,_ymouse属性代表光标的垂直坐标位置。在Flash中,获取鼠标位置主要通过_xmouse和_ymouse关键字来实现。 如果这两个关键字用在主时间轴中,则表示鼠标光标相对于主场景的坐标位置;如果这两个关键字用在影片剪辑中,则表示鼠标光标相对于该影片剪辑的坐标位置

19、。 xmouse和_ymouse属性都是从对象的坐标原点开始计算,它们在主时间轴中代表光标与左上角之间的距离,在影片剪辑中则代表光标与影片剪辑中心之间的距离。,3鼠标位置属性_xmouse和_ymouse,如果需要用到鼠标光标在主场景中的位置,可以使用_root._xmouse和_root._ymouse表示。 onClipEvent(enterFrame) _x=_root._xmouse; _y=_root._ymouse; ,4缩放属性_xscale和_yscale,_xscale和_yscale是影片剪辑的缩放属性,它们的值代表了相对于【库】面板中的原影片剪辑元件的横向尺寸width和

20、纵向尺寸height的百分比,与舞台中影片剪辑实例的实际尺寸无关。 比如,【库】面板中的原影片剪辑元件的横向宽度为400,将其拖动到舞台上作为实例时宽度被改变为200。如果在Actions语句中将_xscale设置为20,那么在播放动画时显示的横向宽度将是400的20%,即80,而不是200的20%。,4缩放属性_xscale和_yscale,由于_xscale和_yscale代表舞台中的实例大小与原影片剪辑元件大小的百分比,因此:当_xscale和_yscale小于100大于0时,表示缩小原影片剪辑;当_xscale和_yscale大于100时,表示放大原影片剪辑;当_xscale或_ysc

21、ale为负时,将在缩放的基础上水平或垂直翻转影片剪辑。若要设置某影片剪辑的缩放属性,应添加如下Actions语句: onClipEvent (load) xs = _width; /用变量xs获取原影片剪辑的宽度,4缩放属性_xscale和_yscale,ys = _height; /用变量ys获取原影片剪辑的高度 onClipEvent (enterFrame) _xscale = 100*(_root._xmouse-_x)/(xs/2); /计算鼠标位置与矩形宽度的百分比,作为_xscale的值 _yscale = 100*(_root._ymouse-_y)/(ys/2); /计算鼠标

22、位置与矩形高度的百分比,作为_yscale的值 ,5旋转属性_rotation,影片剪辑还有一个属性是_rotation,它表示影片剪辑的旋转方向,是一个角度值,取值范围为-180180。如果将它的值设置在这个范围之外,系统会自动将其转换为这个范围之间的值,使该值始终保持在-180180之间。 如果想将影片剪辑ABC的角度旋转40,可使用以下语句: ABC._rotation = 40;,6透明度属性_alpha,_alpha属性决定了影片剪辑的透明程度,取值范围为0100,0代表完全透明,100表示不透明。 如果要将影片剪辑ABC的透明度设为70%,可以使用以下语句: ABC._alpha=

23、70;,设置影片剪辑的Alpha值,7可见属性_visible,影片剪辑的_visible属性即可见性。该属性使用布尔值,或者为true(1),或者为false(0)。为true表示影片剪辑可见,即显示影片剪辑;为false表示影片剪辑不可见,即隐藏影片剪辑。 如果要隐藏影片剪辑ABC_,可使用以下语句: ABC._visible=false;,8设置属性值setProperty,设置属性值setProperty可随时修改舞台中影片剪辑的属性,如透明度、坐标值、高度和宽度等。其表达方式如下: setProperty(target, property, expression); 其中的targe

24、t表示影片剪辑对象的目标路径,property表示对象的属性,expression表示对象属性的值。 例如: setProterty(ABC,_y,150); 表示把名称为ABC的影片剪辑的Y坐标值设置成150。,9获取属性值getProperty,获取属性值getProperty是指取得影片剪辑的指定属性值并返回,其表达方式如下: getProperty(instancename, property); 其中的instancename表示要取得的影片剪辑的名称,property表示要取得的属性值,如_x或者_y。 例如: ABC=getProperty(DEF,_y); 表示将DEF的Y坐标

25、值取出并返回给ABC。,11.2.2 典型案例变幻的遮罩效果,本案例将制作一个变幻的遮罩效果,并将背景图片的Alpha值设为60%,主要练习缩放属性(_xscale和_yscale)和透明度属性(_alpha)的应用方法。案例演示效果如图11.23所示。 素材位置:【第11课素材花花草草.jpg】 效果图位置:【第11课源文件变幻的遮罩效果.fla】 制作思路:,案例目标,1)导入“花花草草.jpg”图片到舞台,并调整与舞台大小一致。 2)绘制一个矩形并转换为影片剪辑,将该影片剪辑设置为遮罩层。 3)设置图片的Alpha值,并为矩形影片剪辑添加Actions语句。,操作步骤,具体操作(请老师参

26、照软件讲解):,案例小结,本案例利用Actions语句制作了一个变幻的遮罩效果,使用了遮罩层及为遮罩层添加Actions语句的知识。本案例中还用到了缩放属性_xscale和_yscale。需要注意的是,在制作过程要单独创建一个层作为放置矩形的遮罩层,再为其添加脚本语句。,11.3 常用Actions语句,本节将介绍一些在Flash中常用的Actions语句。通过本节的学习,不但可以再次体会脚本在Flash中的强大功能,而且还会对脚本编程的认识更进一步。,11.3 常用Actions语句,11.3.1 知识讲解 11.3.2 典型案例螺旋纹,11.3.1 知识讲解,除了在第一节中讲解的控制影片播

27、放的Actions语句外,Flash中还有一些比较常用的Actions语句,比如if,on和for语句等。下面将对它们进行讲解。,11.3.1 知识讲解,1条件语句if/else 2on语句 3call语句 4while语句 5do while语句 6for语句 7getURL语句,1条件语句if/else,if语句和else语句通常在一起使用,else语句必须与if语句配合使用,否则它将失去意义。,1)if语句,if语句用来判断条件是否成立,根据判断的结果为真(true)或为假(false)执行不同的操作。 if语句的用法如下: if(condition) statement(s); 其中,

28、condition指需要满足的条件,statement(s)指要执行的动作。翻译成中文就是:,1)if语句,if(条件) 条件满足后要执行的语句; 它表示如果满足if后面的条件,则执行下面的语句。比如: if(x=30) gotoAndPlay(20); 表示首先判断x是否等于30,如果比较结果为true,则让影片跳到第20帧。,2)else语句,当if语句的条件不满足时,可以自动执行在else语句中设置的动作。else语句单独存在无任何意义,必须与if语句配合使用。 else语句的用法如下: if (condition) statement(s); else (condition) stat

29、ement(s); 其中,condition指需要满足的条件,statement(s)指要执行的动作。翻译成中文就是: if(条件),2)else语句, 条件满足后要执行的语句; else if语句条件不满足时执行的语句; 举例来说,语句: if(x=30) gotoAndPlay(20); else gotoAndPlay(15); 表示首先判断x是否等于30,如果比较结果为true,则让Flash动画跳转到第20帧;如果比较结果为false,则让Flash动画跳转到第15帧。,3)else if语句,还可以通过else if语句配合if语句使用,以实现对更多条件的判断。 else if配合

30、语句的用法如下: if (condition) statement(s); else if (condition) statement(s); ,3)else if语句,其中,condition指需要满足的条件,statement(s)指要执行的动作。翻译成中文就是: if (条件1) 满足条件1后执行的语句; else if (条件2) 满足条件2后执行的语句; ,3)else if语句,比如: if(x=5) gotoAndPlay(15); elseif(x=10) gotoAndPlay(30); else gotoAndPlay(20); ,3)else if语句,表示首先判断x是否

31、等于5,如果比较结果为true,则让Flash动画跳转到第15帧播放;如果x等于10,则让Flash动画跳转到第30帧播放;如果两个条件都不满足,则让Flash动画跳转到第20帧播放。,2on语句,on是用来设定场景上按钮的鼠标/键盘事件的处理程序,该命令只能用在场景上的button instance。 on语句的用法如下: on(mouseEvent) statement; 其中,mouseEvent指鼠标或键盘事件,statement指事件发生时执行的语句。,2on语句,例如: on(press,keyPress “”) gotoAndPlay(15); 表示当单击鼠标或按下【Enter】

32、键的时候,跳至第15帧并开始播放。,3call语句,call语句可以调用某特定帧并执行该帧里的frame script,其作用类似调用子过程。 call语句的用法如下: call(“ABC”); 其中,“ABC”指调用帧的名称,并执行该帧的frame script。 或者: call(15); 其中,“15”指调用第15帧,并执行该帧的frame script。,3call语句,比如: on(release) call(5); 表示调用场景上第5帧的frame script。,4while语句,while语句是常用的一种循环结构,每一次循环处理,都会先判断是否符合条件,若符合条件则执行,若不符

33、合条件,则跳出while循环,并执行循环外的下一行程序。 例如: while(n20) gotoAndPlay(n+1); ,4while语句,表示n20时,执行当前的while循环,一次前进一帧。 只要while后面括号中的条件成立,循环就会一直进行下去,所以在while循环体中需要有改变条件的语句,以使条件最终能够为false,完成循环。,5do while语句,do while语句与while语句相似,都属于循环语句,该语句先处理一次循环体里的程序,并判断是否满足条件,若符合条件则继续执行,若不符合条件,则跳出do while循环,并执行循环外的下一行程序。 例如: do gotoAnd

34、Play(n+1); while(n20); 表示当n20时,执行当前的do While循环,一次前进一帧。,6for语句,for语句是最常用的循环语句,当需要重复执行某种操作时就要用到循环语句。 for语句的用法如下: for (i=beginNumber; i=endingNumber; i+=step) statement(s); ,6for语句,其中,for后面的括号中有三条语句:第一条语句为循环变量赋初值;第二条语句作为循环变量的判断条件,即当变量满足该条件时即执行循环体中的语句(这里是statement(s););第三条语句是每执行一次循环要对变量进行的操作,step是一个布长值,这里是在每一次循环结束后对循环变量i加一个步长step。 例如,在一个空白文档第1帧的【动作】面板中添加如

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论