This might be currently fixed or already fixed, but I just did some testing with the latest build from GitHub and I had an issue with a CCSequence going on endless and keeping to call the last action with a time of 1.0.
Again, I know the latest stuff is experimental, but I just wanted to inform you that there might be a bug. If it’s already taken care of - nevermind.
This causes the bug:
auto actionOne = Sequence::create(DelayTime::create(delayPerCard * i), Show::create(), EaseOut::create(ScaleTo::create(cardOpenAnimationDuration, 1.0), cardOpenAnimationRate), NULL);
This does not cause the bug:
auto actionOne = Sequence::create(DelayTime::create(delayPerCard * i), Show::create(), EaseOut::create(ScaleTo::create(cardOpenAnimationDuration, 1.0), cardOpenAnimationRate), CallFunc::create([=] {
MLLOG("Call DONE");
}), NULL);
Hence, adding an additional action that is instant, does fix it. I stepped through CCSequence and it indeed keeps calling the last action in the first case.
For some additional testing:
I copied over CCActionInterval.h/cpp and CCActionManager.h/cpp from 3.14.1 in the cocos2d-x source and the bug is fixed.