快速业务通道

Flash影片的倒转播放控制

作者 佚名技术 来源 服务器技术 浏览 发布时间 2012-07-14

?

  我们做一个动画短片的时候有没有考虑怎样使它倒转播放呢?如果说短片里只有一个motion tween或者shape tween,那么很容易,一个revert frame就可以完成倒放。

  但是一个动画短片里面往往不仅有前面提及的渐变动画而且还有帧动画,以及若干的层,那么这样的动画短片要实现倒转播放就不是一个简单的 revert frame 命令就可以完成的。今天我要说的就是利用actionscript 来实现动画短片的倒转播放控制。

  演示效果如下:按“播放”按钮,影片就会正常播放,按“倒带”按钮,影片就会倒转播放,而且随时有效!


  原理很简单,首先我们应该有一个现成的动画短片,然后就是制作一个只含有AS脚本的MC ,该MC里的AS脚本能够控制动画短片的倒转播放和正常播放!在做2个按钮来控制含有AS脚本的MC的动作。

  步骤一:在现有的动画短片中增加一个层:AS,在这个层上我们来放置一个只含有AS脚本的MC和2个控制该MC动作的按钮:“倒带”和“播放”按钮。图中红色圆圈内已经被锁定的层就是我们要随时使它正常播放和倒带的动画短片。




  步骤二:(只含有AS脚本的MC的制作)新建一个MC:控制。在layer1中插入5个关键帧,如下图所示:



  在第一帧上写入AS脚本:stop();

  在第二帧写入AS脚本:

  tellTarget ("../") {
    prevFrame();
  }

  //“../”表示是上一级的MC,我们也可以用_parent来代替,一样的效果。
  // prevFrame();的作用是停到上一帧去。

  在第三帧写入AS脚本:

  call(2);
  gotoAndPlay(2);

  // call(2);调用第2帧的动作
  // gotoAndPlay(2);到第2帧并播放(这样若从第二帧播放那么到第三帧时在返回到第二帧,就形成了一个循环,从而达到使上一级MC倒转播放的目的)

  在第四帧上写入AS脚本:

  tellTarget ("../") {
    nextFrame();
  }

  //“../”表示是上一级的MC,我们也可以用_parent来代替,一样的效果。
  // nextFrame();的作用是停到下一帧去。

  在第五帧上写入AS脚本:

  call(4);
  gotoAndPlay(4);

  // call(4);调用第4帧的动作
  // gotoAndPlay(4);到第4帧并播放(这样若从第四帧播放那么到第五帧时在返回到第四帧,就形成了一个循环,从而达到使上一级MC正常播放的目的)

  步骤三:回到Scene 1 在AS层上拖入“控制”MC到场景中,(注意:由于“控制”MC里面只有AS脚本没有任何图形元素,所以显示为图中红色圆圈中的小点),同时赋予该MC一个instance name:AS。



  步骤四:在场景中拖入2个按钮如下如所示:



  在倒放按钮“<”上加上AS 脚本:

  on (release){
    tellTarget("as"){
      gotoAndPlay(2);
    }
  }
  //让MC:AS从第二帧开始播放,执行“AS”中的脚本实现动画短片的倒转播放。

  在正常播放按钮“〉”上加上脚本:

  on (release){
    tellTarget("as"){
      gotoAndPlay(4);
    }
  }

  // 让MC:AS从第四帧开始播放,执行“AS”中的脚本实现动画短片的正常播放。

  现在测试看看是否成功?!源文件下载
关键词:控制

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号