动画是游戏的必然要素之一,在整个游戏过程中,又有着加速、减速动画的需求。以塔防为例子,布塔的时候希望能够将游戏减速,布好塔后,则希望能将游戏加速;当某个怪被冰冻后,移动速度减缓,而其他怪的移动速度不变。
实现全局的加速、减速
通过设置Scheduler的timeScale,可以实现全局的加、减速。
游戏的速度可以由导演来控制。
local multi = 0.2 cc.Director:getInstance():getScheduler():setTimeScale(multi) --参数multi是倍率的意思,默认是1,倍率越高速度越快。 --如果需要提升一倍的速度来实现加速效果,可以把multi设为2.0f。
通过这样一个机制可以实现游戏内战斗倍数加速的功能。
对个别单个动作进行加速或减速
通过cc.speed实现
local act = cc.Speed:create(self.jumpAction,2)--以2倍速度播放动作 self.nodeMap["imgGuang"]:runAction(act)