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

Flash动画制作
Flash5的DATE对象(二)
Flash层的运用(一)
Flash 神奇遮罩之原理篇(1)
Flash 神奇遮罩之应用篇(5)
Flash 神奇遮罩之图片篇(3)
Flash 神奇遮罩之透明度篇(1)
Flash MX的自由变形工具(1)
Flash MX的自由变形工具(3)
用动作脚本动态创建和控制文本框 (7)
Freehand和Flash的结合应用(2)
Freehand和Flash的结合应用(6)
Flash 神奇遮罩之原理篇(2)
Flash 神奇遮罩之应用篇(1)
Flash 神奇遮罩之透明度篇(2)
实例学用Flash MX增强的AS功能(2)
FW MX和Flash MX的亲密合作(3)
Flash5 有声音的三眼狼(一)
Freehand和Flash的结合应用(5)
Flash5 有声音的三眼狼(三)
Freehand和Flash的结合应用(11)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 109 ::
收藏到网摘: 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