BK.AnimatedSprite 帧动画

父类:BK.Sprite

帧动画

成员变量

变量 类型 名称 备注
delayUnits number 每一帧持续时间 每一帧持续时间,以秒为单位。默认1/30秒
paused boolean 暂停 true暂停,false运行

方法

构造函数 new BK.AnimatedSprite(textureInfoArr)

参数:

参数 类型 名称 备注
textureInfoArr Array 纹理对象信息数组

例子:

  1. var texPath = "GameRes://texture/spritesheet/fighter.png";
  2. var jsonPath = "GameRes://texture/spritesheet/fighter.json";
  3. BK.SpriteSheetCache.loadSheet(jsonPath, texPath);
  4. var textureInfoArr = new Array();
  5. for (var i = 0; i < 30; i++) {
  6. var val = i < 10 ? '0' + i : i;
  7. var textureInfo = BK.SpriteSheetCache.getTextureFrameInfoByFileName('rollSequence00' + val + '.png');
  8. textureInfoArr.push(textureInfo);
  9. }
  10. var aniSp = new BK.AnimatedSprite(textureInfoArr);

play(beginFrameIdx,repeatCount)

开始播放

参数:

参数 类型 名称 备注
beginFrameIdx number 开始播放的帧数(选填,默认为0)
repeatCount number 播放次数(选填,默认-1,代表无限循环)

返回值:无

例子:无

stop(frameIdx)

结束播放

参数:

参数 类型 名称 备注
frameIdx number 停止时显示的帧(选填,默认为-1,随机选取一帧最后显示)

例子:无

setCompleteCallback(callback)

设置每次播放完毕的回调

参数:

参数 类型 名称 备注
callback function 每播完一次的回调 具体参数如例子

例子:

  1. //播放完一次的回调。其中ani为BK.AnimatedSprite对象,count为当前播放的次数
  2. aniSp.setCompleteCallback(function (ani,count) {
  3. BK.Script.log(0,0,"setCompleteCallback count:"+count);
  4. // aniSp.paused = true;
  5. });

setEndCallback(callback)

设置全部播放完的回调

参数:

参数 类型 名称 备注
callback function 全部播放完的回调 具体参数如例子

例子:

  1. //全部播放完的回调。其中ani为BK.AnimatedSprite对象,count为当前播放的次数
  2. aniSp.setEndCallback(function (ani,count) {
  3. BK.Script.log(0,0,"setEndCallback count:"+count);
  4. });

例子

查看 script/demo/render/animatedSprite_demo.js

原文: https://hudong.qq.com/docs/engine/api/BK.AnimatedSprite.html