// // PlayTimelineWaiter.cpp // redream_runtime_mac // // Created by zhu on 2023/5/26. // #include "PlayTimelineWaiter.hpp" namespace redream{ PlayTimelineWaiter* PlayTimelineWaiter::create(ReboltRedManager* rrm, red::RedBehaviacTree* fatherTree, int seqId, REDAnimationManager* redAnimationManager){ PlayTimelineWaiter * ret = new (std::nothrow) PlayTimelineWaiter(rrm, fatherTree, seqId, redAnimationManager); if (ret) { ret->autorelease(); } else { CC_SAFE_DELETE(ret); } return ret; } PlayTimelineWaiter::PlayTimelineWaiter(ReboltRedManager* rrm, red::RedBehaviacTree* fatherTree, int seqId, REDAnimationManager* redAnimationManager) : _seqId(seqId) { _reboltManager = rrm; _fatherTree = fatherTree; _redAnimationManager = redAnimationManager; } void PlayTimelineWaiter::completedAnimationSequenceNamed(const char *name, int seqId, int tag){ onSuccessEnd(); } void PlayTimelineWaiter::stopAnimationSequenceNamed(const char *name, int seqId, int tag){ onFailureEnd(); } void PlayTimelineWaiter::run(){ _runningState.btState = RUNNING; if(_redAnimationManager){ _redAnimationManager->runAnimationsWithListen(_seqId, this); } else { onFailureEnd(); } } };