Verifique se a animação está sendo executada no cocos2d-x

Atualmente estou aprendendo cocos2D-x e estou fazendo algumas animações de sprites.
Meu objetivo é que quando um botão é clicado, o objeto se move para a esquerda com alguma animação. Agora, se você clicar várias vezes rapidamente, a animação ocorre imediatamente e parece que o urso está esperando, em vez de andar.

A solução para isso parece simples que eu deveria verificar se a animação já está em execução e se a execução da nova animação não deve ocorrer.

O seguinte é uma parte do meu código.

CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("AnimBear.plist");
CCSpriteBatchNode* spriteBatchNode = CCSpriteBatchNode::create("AnimBear.png", 8);

this->addChild(spriteBatchNode,10);
        CCArray *tempArray = new CCArray();
char buffer[15];
for (int i = 1; i <= 8 ; i++) 
    {
sprintf(buffer,"bear%i.png", i);
tempArray->addObject(CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName(buffer));      
}

CCAnimation *bearWalkingAnimation = CCAnimation::create(tempArray,0.1f);
startAnimation = CCSprite::createWithSpriteFrameName("bear1.png");
startAnimation->setPosition(ccp (350 , CCDirector::sharedDirector()->getWinSize().height/2 -100));
startAnimation->setScale(0.5f);

startAnimation->setTag(5);

//Animation for bear walking    

bearAnimate = CCAnimate::create(bearWalkingAnimation);

Aqui bearAnimate é uma variável global e eu gostaria de saber se está tocando a animação no momento.

Como eu faço isso.?
Obrigado.

questionAnswers(2)

yourAnswerToTheQuestion