Juggler类允许我们控制所有实现了IAnimatable接口的对象的动画播放。MovieClip类实现
了该接口,你也可以自定义一个动画类在Starling中播放,你所要做的,仅仅是让你的自定
义类实现IAnimatable 接口,然后重载advanceTime方法即可。Starling粒子插件(用以
在Starling中实现粒子效果,在本教程最后会介绍)就是这么实现的。
下面代码是MovieClip类实现其动画功能的主要逻辑。它每一帧都会切换纹理。看起来有
点像我们在原生Flash中用切换一个Bitmap的bitmapData属性来实现动画的方式:
// IAnimatable
public>if (!mPlaying || passedTime == 0.0 || mCurrentTime == mTotalTime) return;
var>var durationSum:Number = 0.0;
var>var restTime:Number = mTotalTime - mCurrentTime;
var>mCurrentTime = Math.min(mTotalTime, mCurrentTime + passedTime);
for>{
if (mCurrentFrame !=>updateCurrentFrame();
playCurrentSound();
}
break;
}
++i;
durationSum +=>hasEventListener(Event.MOVIE_COMPLETED))
{

dispatchEvent(new Event(Event.MOVIE_COMPLETED));

}
advanceTime(carryOverTime);
}
下面列出Juggler中所有可用的API:
∗>

}
 // this API will be called from outside
 // stop calling it will pause the content played by this Juggler in this sprite (BattleScene)
 public function advanceTime ( time:Number ):void
 {
    juggler.advanceTime( time );
 }
 public override function dispose():void
 {
   juggler.purge();
   super.dispose();
 }
}
}
好了,当外部想要激活此面板时,只需要侦听EnterFrameEvent.EVENT事件并在事件侦
听器中,以EnterFrameEvent事件对象的passedTime属性作为参数调用此面板对象的
advanceTime方法即可。
private function onFrame(event:EnterFrameEvent):void
{
   if ( paused )
   battle.advanceTime( event.passedTime );
}
当游戏被暂停后,我们需要停止每帧对advanceTime方法的调用,这样就可以停止战场模
块的动画内容播放。当然,如果此时我们需要让菜单面板弹出并播放此面板中的动画,只需
要添加如下几句:
private function onFrame(event:EnterFrameEvent):void
{
      if ( paused )
         alertBox.advanceTime ( event.passedTime );
     else battle.advanceTime( event.passedTime );
     dashboard.advanceTime ( event.passedTime );
}

Starling Juggler相关推荐

  1. 《Starting with Starling》 Ep 1~11

    starling 1.3,Hi-ReS-Stats FlashDevelop设置 Project->Properties->Output->Platform->Flash Pl ...

  2. Starling浅尝

    来自:http://www.cnblogs.com/tankaixiong/archive/2012/11/28/2792047.html starling 笔记 : 基于Stage3Dg开发出来的一 ...

  3. Starling 动画功能

    动画 动画是所有游戏的必要组成部分,Starling能帮助你快速的制作简单动画. 如果你想了解一下,那么这里有两种动画类型.其中一种动画是你知道即将发生什么,比如当消息提示框被关闭,或者某些界面元素被 ...

  4. StarlingMVC:为Starling量身打造的MVC框架

    详细了解StarlingMVC框架,请登录其官方站点: http://creativebottle.github.com/starlingMVC/ 以下中文翻译转自Starling中文站,仅供部分参考 ...

  5. starling 笔记

    starling 笔记 : 基于Stage3Dg开发出来的一个可以使用GPU加速2D应用程序的框架.是一个渲染框架! 特色:直观,轻量,免费. Starling与Sparrow框架很相近. 驱动关系: ...

  6. starling 笔记 总结

    starling笔记: 基于Stage3Dg开发出来的一个可以使用GPU加速2D应用程序的框架.是一个渲染框架! 特色:直观,轻量,免费. Starling与Sparrow框架很相近. 驱动关系: G ...

  7. AIR移动(Starling)开发笔记基础篇

    AIR移动(Starling)开发笔记基础篇 ---------kiddyPs:文档写的不是很好,欢迎指正和扩展 Starling相关 自定义移动动画 A.自定义函数 var tw:Tween = n ...

  8. StarlingMVC简介,原理解说及示例源码

    StarlingMVC简介 StarlingMVC是一个为使用Starling来开发游戏的MVC框架.这个框架的特性方面,很像Swiz和RobotLegs,原理亦像Mate.其特性列表如下: 依赖注入 ...

  9. StarlingMVC Framework中文教程

    2019独角兽企业重金招聘Python工程师标准>>> 配置与开始 将Starling项目配置为StarlingMVC项目,仅需几行代码.在继承于starling.display.S ...

最新文章

  1. BootStrap table 数据填充与分页应用总结
  2. linux进程--exec详解(四)
  3. 《机器学习》 周志华学习笔记第七章 贝叶斯分类器(课后习题)python 实现
  4. 算法竞赛入门经典 第五章总结1
  5. js获取当前页面的地址和端口_url
  6. 粒子群对函数的优化 matlab,编译通过
  7. “限时秒杀”活动分析报告
  8. 西门子200PLC指令详解——比较指令
  9. Sql代码美化工具:Sql Pretty Printer for SSMS V3.6.1
  10. (原)red-green Image.合成三维立体效果, 红绿眼镜 3D图 ,三维图片的核心算法。googler.cc上面有完善的程序和源码下载。 网上以前的那个有错误,我纠正了下~!~
  11. vue项目中金额小写转换为汉字大写的功能封装
  12. 应届生 实习生 社招最常用招聘网站
  13. 对ABAP程序调优的学习(一)select 改 read table
  14. 【小甲鱼编程题05】打印杨辉三角形
  15. 突发奇想 之 古玩中的代码
  16. 如何用DirectShow替代付费的摄像头SDK
  17. 《外星人入侵》 教程详解
  18. 第一章:快乐的老青蛙
  19. 【舒适区如何影响着我的生活】
  20. 论文笔记_S2D.77_2013_TOR_使用RGBD相机的3D建图(RGBD SLAM V2)

热门文章

  1. En-Tan-Mo(ETM)项目周报(7.26-8.1)
  2. FPGA串口多字节发送、仿真
  3. 从Daemons到finalize timed out after 10 seconds
  4. 爬取百度指数行业排行榜
  5. Linux 下播放音乐和视频
  6. 我的JQuery动画
  7. WordPress问答插件DW Question Answer分享
  8. C语言考试知识点汇总(实践知识点)
  9. 被逼无奈学了几个mysql命令,竟然有大用。
  10. 凯哥自媒体:怎样用今日头条自媒体赚钱?