Hello, I have a question of using CCSequence.
Please see code below.
void HelloWorld::menuCallback(CCObject* pSender)
{
// "close" menu item clicked
CCFiniteTimeAction *seq = CCSequence::actions(
CCCallFuncND::actionWithTarget(this, callfuncND_selector(HelloWorld::fa), NULL),
CCCallFuncND::actionWithTarget(this, callfuncND_selector(HelloWorld::fc), NULL),
CCCallFuncND::actionWithTarget(this, callfuncND_selector(HelloWorld::fb), NULL),
CCCallFuncND::actionWithTarget(this, callfuncND_selector(HelloWorld::fc), NULL),
NULL
);
this->runAction(seq);
}
void HelloWorld::fa(CCNode *node, void* data)
{
CCLog("1");
}
void HelloWorld::fb(CCNode *node, void* data)
{
CCLog("2");
}
void HelloWorld::fc(CCNode *node, void* data)
{
CCLog("3");
}
I thought that would output :
1
3
2
3
but really output is:
1
3
3 <= ?
2
3
If I write like below, I get a correct output.
CCFiniteTimeAction *seq = CCSequence::actions(
CCCallFuncND::actionWithTarget(this, callfuncND_selector(HelloWorld::fa), NULL),
CCDelayTime::actionWithDuration(0),
CCCallFuncND::actionWithTarget(this, callfuncND_selector(HelloWorld::fc), NULL),
CCCallFuncND::actionWithTarget(this, callfuncND_selector(HelloWorld::fb), NULL),
CCCallFuncND::actionWithTarget(this, callfuncND_selector(HelloWorld::fc), NULL),
NULL
);
Is it a bug?
I am using cocos2d-x 2.0.