复制删除影片剪辑.doc_第1页
复制删除影片剪辑.doc_第2页
复制删除影片剪辑.doc_第3页
复制删除影片剪辑.doc_第4页
复制删除影片剪辑.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

本节应掌握的知识要点:duplicateMovieClip和removeMovieClip应用;_visible属性应用;数组应用。 复制影片剪辑语句duplicateMovieClip也是在Flash AS 中应用非常多的语句,许多精彩的特效都离不开这个语句,其语法格式如下:duplicateMovieClip(目标, 新名称, 深度)“目标”参数为要进行复制的目标影片剪辑。“新名称” 参数为新复制的影片剪辑的唯一标识符。“深度” 参数为新复制的影片剪辑的唯一深度级别。removeMovieClip是与duplicateMovieClip经常配合使用的语句,其作用是用来删除指定的影片剪辑,格式如下:removeMovieClip(目标)“目标”参数为用 duplicateMovieClip() 创建的影片剪辑实例的目标路径。或者是用 MovieClip.attachMovie() 或 MovieClip.duplicateMovieClip() 创建的影片剪辑的实例名称。这一节还要用到一个“_visible”属性,它返回的是一个用“true”或者“false” 表示的布尔值,用于指令特定的影片剪辑或者按钮对象可见还是不可见,rue为可见,false为不可见。也可以用1或者0表示,1表示可见,0表示不可见。请看示例动画“实例1-6”。实例1-6复制和删除“影片剪辑”初始的画面上没有任何动画效果,当我们点击“play”按钮后,就会依次从场景左侧跳出5只小松鼠,奔跑一个来回后排列在场景左侧原地跳跃。当我们再一次点击“play”按钮,会看见5只小松鼠再一次从场景左侧依次跳跃出来,同时场景上原地跳跃的小松鼠会一一消失。这个效果就是应用了“duplicateMovieClip”语句实现的。打开源文件,分析一下影片结构,主场景上有10帧,3个图层,图层1上是按钮和背景,图层2上有一只放置在场景左上角的实例名为shu_mc的小松鼠影片剪辑,进入这个小松鼠的编辑场景,可以看到是一个120帧的补间动画,第1-60帧,小松鼠由场景左侧运动到右侧,第61-120帧,再由右侧回到左侧,第120帧上有一个stop动作,令小松鼠运动一个来回后停留在场景左侧。看看主场景“as”图层上设置的动作:第1帧上的动作:stop();_root.shu_mc._visible=0 第2帧上的动作:x = 0;y = 0;第3帧上的动作:x = x+1;if (x=5) duplicateMovieClip(shu_mc, shu_mc + x, x);_rootshu_mc + x._x = _root.shu_mc._x+(-15*x);_rootshu_mc + x._y = _root.shu_mc._y+(30*x);第10帧上的动作:if (x5) y = y+1;removeMovieClip(shu_mc+y);第1帧、第2帧和第10帧上的语句是我们已经学习过的,现在先来认识一下第3帧上i大括号“”里面的三行语句。duplicateMovieClip(shu_mc, shu_mc + x, x);小括号“()”里定义了三个参数:shu_mc为要进行复制的目标影片剪辑对象。shu_mc+x 为新复制的影片剪辑的唯一标识符,这个标识符是由字符串“shu_mc”连接上通过运算取得的x的值得来的,即新复制出的影片剪辑名称依次为shu_mc1、shu_mc2、shu_mc5,在这里加号“+”是连接符,shu_mc+x也可以写成shu_mc add x。后面一个参数x为新复制的影片剪辑的深度级别,在这里依次为1、2、3、4、5。在同一时间线上,每一个新复制的影片剪辑占用一个唯一的深度级别,并层层堆叠,如果后复制出的影片剪辑与前面复制出的影片剪辑深度级别相同就会覆盖并替换掉前一个影片剪辑,所以必须为每一个新复制的影片剪辑分配一个唯一的深度级别。下面两行语句是为新复制的影片剪辑重置x、y坐标属性,_rootshu_mc + x._x = _root.shu_mc._x-15*x;_rootshu_mc + x._y = _root.shu_mc._y+30*x;这里又出现了一个新的运算符,方括号“ ”是数组运算符,里面的参数为相同类型的一组数据,本节接触的_rootshu_mc + x只是数组运算的一种形式,在这里方括号“ ”里运算的结果即为shu_mc1、shu_mc2、shu_mc5。在这里使用数组可以动态的给_x、_y属性赋值。赋值符号“=”右边的表达式以父本shu_mc影片剪辑的x、y位置为依据,计算出每一个新复制的影片剪辑的相应坐标位置,实际效果是x坐标左移15*x像素,y坐标下移30*x像素。现在我们来分析一下这些语句的执行流程及功能:第1帧上的两行语句是前面学过的,影片一开始播放,就停止在第一帧,并由第二行语句设置场景上的shu_mc影片剪辑的_visible属性为0,即不可见。所以当影片开始播放时,看不见主场景上左侧那只小松鼠。第2帧定义了两个变量x、y,并分别为其赋予初始值为0。第3帧是这一节的关键,第1行语句设置变量x的值为x+1,当播放头第一次到达第3帧时,这时x=0+1,即x的值为1。接下来,在if语句块里,设置了一个条件,当(x=5)时,执行大括号“”语句块里的复制影片剪辑的语句。由于当前x的值为1,符合条件,这时复制出第一个名称为“shu_mc1”、层深度为“1”的小松鼠影片剪辑,并以父本小松鼠的位置为依据左移15*1像素、下移30*1像素出现在场景中,由于每一个新复制出的影片剪辑都会从自身时间轴的第1帧开始完整的播放,所以这时我们看到第一只小松鼠跑了出来,在场景上奔跑了一个来回后停止在场景左侧原地跳跃,即从shu_mc影片剪辑的第1帧运行到第120帧然后停止下来。播放头前进到第10帧,又有一个判断条件,如果x=5则跳转到第3帧并播放,否则就停留在第10帧。当符合条件再一次跳转到第3帧时,这时x的值为2了,于是又复制出名称为“shu_mc2”、层深度为“2”的第二只小松鼠影片剪辑,并以父本小松鼠的位置为依据再左移15*2像素、下移30*2像素出现在场景中,我们看到第二只小松鼠跑了出来,在场景上奔跑一个来回后停止在场景左侧原地跳跃。按照设定的条件反复判断,当超出了x=5的条件时,播放头便停留在第10帧上了。这时,场景上复制出的5只小松鼠都完成了各自时间轴上120帧的运动后在场景左侧按照各自的x、y位置排列原地跳跃。as图层上的语句执行完了。这时,当我们点击“删除mc”按钮,y的值为1,removeMovieClip(shu_mc+y)为removeMovieClip(shu_mc1),shu_mc1影片剪辑被删除,继续点击,就会依次将shu_mc2、shu_mc5一一删除。当我们再次点击场景右下角的“play”按钮,播放头将跳转到第2帧并播放,x和y重置为0,再次重复上一次的复制过程。如果复制完成5只小松鼠后,我们不点“删除mc”按钮而再次直接点击“play”按钮,这时就会看到,每复制出一只小松鼠,相同层深上的那一只小松鼠立即消失掉,这就是我们上面所讲的“新复制出的影片剪辑与前面复制出的影片剪辑深度级别相同就会覆盖并替换前一个影片剪辑”。关于复制出的影片剪辑的层深度问题,我们再用一个直观一点的示例来加深理解,请看实例1-7。实例1-7 层深度理解场景上共两帧,第1帧设定作为复制父本的 “yuan_mc”影片剪辑不可见,定义一个变量“x”,并设定其初始值为“0”;第2帧设置stop让播放头停留在该处,等待按钮事件来控制下一步的动作。每点击一次“复制mc”按钮,就会按照设定的条件以及设定的属性值复制出一个新的影片剪辑,并依次根据x的值命名为yuan_mc1、yuan_mc2、yuan_mc5,可以清楚的看见,复制出的影片剪辑各自占用一个唯

温馨提示

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

评论

0/150

提交评论