这是一个在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