当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > 用AS控制补间动画速度

Flash动画制作
fmx2004 1000问(5)
Flash MX 2004 组件事件简单调试器
fmx2004 1000问(2)
Action Script 2.0新手调试
Flash 2004 MX Components
flash action 详解(9)
flash action 详解(7)
flash action 详解(1)
flash action 详解(6)
一个用纯AS写的正态曲线画法
flash action 详解(3)
浅谈AS的绘图功能及几个简单的实例
AS的基本代码解释(2)
flash action 详解(2)
flash action 详解(10)
运用for循环来对多个mc进行检测
极坐标在绘画方法中的运用
用Flash 2004编写简单的运算类
flash action 详解(4)
flash action 详解(5)

Flash动画制作 中的 用AS控制补间动画速度


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 85 ::
收藏到网摘: n/a

这是一个在AS2.0环境使用的控制补间动画帧数的Function. 原理是'跳帧'.

MovieClip.FPS(framePlaySpeed:Number,loop):Void

参数

MovieClip:MovieClip - 影片剪辑实例名;
framePlaySpeed:Number - 每秒播放影片帧数;
loop - [可选] true - 循环播放; 0或false - 不循环(只播放一次); 数字 - 播放指定次数

示例

此部分代码只需要在影片中添加1次

MovieClip.prototype.FPS = function(n:Number, loop) {
        // copyright (c) XIIID.com
        clearInterval(this.fps);
        this.l = typeof (loop) == "boolean" ? loop ? Number.MAX_VALUE : 0 : Number(loop)>0 ? loop : 0;
        // this.gotoAndStop(1);
        this.fps = setInterval(function (target:MovieClip) {
                if (target._currentframe == target._totalframes) {
                        target.l--;
                        if (target.l<1) {
                                clearInterval(target.fps);
                        } else {
                                target.gotoAndStop(1);
                        }
                } else {
                        target.nextFrame();
                }
                updateAfterEvent();
        }, 1000/n, this);
};


以下代码指定场景中实例名为_mc的影片剪辑帧速为50,循环播放

_mc.FPS(50,true);

以下代码指定主场景帧速为12,播放2次

_root.FPS(12,2);

注意

此脚本只适用于普通的补间动画,如果您的动画中含有脚本或者帧数过少,可能导致该脚本无法正常工作.

附件: setFPS.swf