我有一个精灵,我正在添加到一个场景并应用动画,但动画没有启动。 这是代码,帧已经添加到数组(explosionFrames),当我将它们应用到精灵时,我可以单独看到这些帧。
CCSprite *expoSprite = [CCSprite spriteWithSpriteFrame:explosionFrames[0]];
expoSprite.position = bombSprite.position;
CCAnimation *explosionAnimation = [CCAnimation animationWithSpriteFrames:explosionFrames];
[expoSprite runAction:[CCSequence actions:[CCAnimate actionWithAnimation:explosionAnimation],nil]];
[n addChild:expoSprite];
非常感谢任何建议。
答案 0 :(得分:0)
您是否在onEnter
的课程上覆盖了n
?
您还记得致电[super onEnter]
吗?
-(void) onEnter
{
[super onEnter];
//Other code
}
当我有一个没有运行动作的节点时,这几乎总是问题。
答案 1 :(得分:-1)
首先,您应该在运行任何操作之前将sprite添加为子级。其次,你可以写
[expoSprite runAction:[CCSequence actions:[CCAnimate actionWithAnimation:explosionAnimation],nil]];
如果你要添加一些东西来序列或
[expoSprite runAction:[CCAnimate actionWithAnimation:explosionAnimation]];
而不是
[expoSprite runAction:[CCSequence actions:[CCAnimate actionWithAnimation:explosionAnimation],nil]];