0

播放动画序列的推荐方法是什么,其中包括作为结尾的重复动画。例如,这里有几个场景:

  1. Sprite 出现在屏幕上,播放介绍动画,然后永远重复“空闲”动画
  2. 带有“空闲”动画的精灵执行一些动作,因此我需要播放一些其他特定的动画,在这些动画结束时,精灵应该再次开始空闲。

CCSequence 不允许我这样做,因为“空闲”动画被包装到 CCRepeatForever 中。如果我只是选择在空闲动画之上运行我喜欢的任何动画,我会得到帧闪烁(看起来两个动画是同时播放的)——太糟糕了。

所有动画都在 CCAnimationCache 内......任何建议都将受到高度赞赏。

4

1 回答 1

1

不知道有没有推荐的方法。我要做的是延迟运行第二个动画(重复的动画),或者通过动画完成处理程序将其链接到第一个动画。

进行链接的一种简单方法是在第一个动画的末尾添加一个CCCallFunc动作,就像这里一样,这将调用触发第二个动画:

CCActionInterval* action = [CCSequence actions:
           [CCProgressFromTo actionWithDuration:duration_ from:100.f to:0.f],
           [CCCallFunc actionWithTarget:self selector:@selector(startSecondAction)],
           nil ];
于 2012-09-14T10:00:35.553 回答