2017-01-02 188 views
0

這是顯示精靈圖片動畫的代碼,如果遊戲中發生了某些事情,動畫完美無缺,但在動畫幀序列完成之後它不會停止,我已經做了很多事情來停止動畫,但沒有什麼是給我的解決方案,這是我的代碼在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]]; 

`

上面的代碼我試圖添加定時器和我知道的一切,但沒有我工作,,,我想停止動畫,並從圖層中刪除這些精靈。

在此先感謝。

回答

2

動畫不停止,因爲CCRepeatForever是動畫永遠意味着不斷的動作。下面更改行:

[m_gamecoinffect runAction:[CCRepeatForever actionWithAction:coineffect]]; 

隨着

[m_gamecoinffect runAction:coineffect]; 
+0

確定感謝您的重播,,讓我檢查其工作或不..再次感謝您 – ICoder