Cocos2d x 从CCNode调用时未执行runAction(非OnNet)

Cocos2d x 从CCNode调用时未执行runAction(非OnNet),cocos2d-x,Cocos2d X,我有一个类,它是从我想要执行操作的方法之一扩展而来的 但没有一家公司在运行: 本课程: class GameController : public CCNode 在这里,我还提到: void GameController::onEnter() { CCNode::onEnter(); } 这是我的代码: bool GameController::removeFinalGems(CCArray* gemsToRemove) { onGemScaleInAnim = CCCal

我有一个类,它是从我想要执行操作的方法之一扩展而来的 但没有一家公司在运行: 本课程:

class GameController : public CCNode
在这里,我还提到:

void GameController::onEnter()
{
    CCNode::onEnter();
}
这是我的代码:

bool GameController::removeFinalGems(CCArray* gemsToRemove)
{

    onGemScaleInAnim = CCCallFuncND::create(this,
                                                 callfuncND_selector(GameController::OnGemScaleInAnim),gemsToRemove); 

     onRemoveGemScaleInAnim = CCCallFuncND::create(this,
                                                 callfuncND_selector(GameController::OnRemoveGemScaleInAnim),gemsToRemove); 

    CCSequence* selectedGemScaleInAndRemove = CCSequence::create(onGemScaleInAnim,
                                                                onRemoveGemScaleInAnim, 
                                                                    NULL);

    bool b = this->isRunning();
    CCAction *action = this->runAction(selectedGemScaleInAndRemove);


    return true;
}

void GameController::OnGemScaleInAnim(CCNode* sender,void* data)
{


    CCArray *gemsToRemove = (CCArray*) data; 



}

void GameController::OnRemoveGemScaleInAnim(CCNode* sender,void* data)
{


    CCArray *gemsToRemove = (CCArray*) data; 

}
此外,我还添加了检查,以查看是否有操作在前后运行 它在等于0之前和等于1之后的样子

int na = this->numberOfRunningActions();  //equal 0 
CCAction *action = this->runAction(selectedGemScaleInAndRemove);
int na0 = this->numberOfRunningActions();//equal 1 so there is action

它永远无法使用OnRemoveGemScaleInAnim和OnGemScaleInAnim方法

在移植iOS CoCoCos2D应用程序时,我在CoCoCos2D-x上遇到了这个问题。 在runAction调用之后,添加以下代码行以检查暂停的目标是否是罪魁祸首:

    CCDirector::sharedDirector()->getActionManager()->resumeTarget( this );

在我的例子中,这就是为什么没有运行操作的原因。似乎CCTransitionFade的屏幕转换导致了暂停。这可能是由于init期间完成了节点构造,尽管我尚未测试该理论。

您试图同时调用OngEmScaleInIM和OnRemoveGemScaleInIM,即希望这两个动画同时运行?CCCallFunnd对象没有任何持续时间。只有操作具有。我在哪里设置持续时间?我只是把它放在excuteNope,CallFuncND根本没有持续时间。