在cocos2d中停止雪碧动画
问题描述:
这是显示精灵图片动画的代码,如果游戏中发生了某些事情,动画完美无缺,但在动画帧序列完成之后它不会停止,我已经做了很多事情来停止动画,但没有什么是给我的解决方案,这是我的代码在cocos2d中停止雪碧动画
if(m_bEffectChangeColor){
`
m_gamecoinffect = [CCSprite spriteWithSpriteFrameName:@"powerup0001"];
[self addChild:m_gamecoinffect z:3];
CCAnimate *coineffect = [CCAnimate actionWithSpriteSequence:@"powerup%04d" numFrames:30 delay:0.1f restoreOriginalFrame:NO];
[m_gamecoinffect runAction:[CCRepeatForever actionWithAction:coineffect]];
m_gamecoinffect.position = ptEffectPos;
CCCallBlock *block = [CCCallBlock actionWithBlock:^{
//[m_gamecoinffect stopAllActions];
[self removeChild:m_gamecoinffect cleanup:YES];
}];
CCDelayTime *time = [CCDelayTime actionWithDuration:1];
[m_gamecoinffect runAction:[CCSequence actions:time, block, nil]];
`
上面的代码我试图添加定时器和我知道的一切,但没有我工作,,,我想停止动画,并从图层中删除这些精灵。
在此先感谢。
答
动画不停止,因为CCRepeatForever
是动画永远意味着不断的动作。下面更改行:
[m_gamecoinffect runAction:[CCRepeatForever actionWithAction:coineffect]];
随着
[m_gamecoinffect runAction:coineffect];
确定感谢您的重播,,让我检查其工作或不..再次感谢您 – ICoder