cocos2dx之如何延时当前动作

来源:互联网 发布:广西教育网络培训网365 编辑:程序博客网 时间:2024/06/06 13:10

在执行某个行为动作的时候,有时候根据需求,可能需要暂停一段时间,然后继续执行,这个时候我们可以用到,CCDelayTime这个类,它是CCActionInterval的派生类。

好,现在我们来看一下如何创建一个延时的行为动作,代码如下:

void MyActionCCDelayTimeLayer::initLayer() {    CCSize size = CCDirector::sharedDirector()->getWinSize();    CCSprite *spriteDelay = CCSprite::create("close.png");    spriteDelay->setPosition(ccp(size.width / 2.0f, size.height / 2.0f));    this->addChild(spriteDelay, 1);    CCActionInterval *move = CCMoveBy::create(2, ccp( 400, 300));    CCActionInterval *back = move->reverse();    CCAction *action = CCRepeatForever::create(dynamic_cast<CCActionInterval *>(CCSequence::create(move, back, CCDelayTime::actionWithDuration(10), NULL)));    spriteDelay->runAction(action);}

已创建完成!,除此之外,我让该动作了不断(CCRepeatForevet)执行,隔10s继续执行一次。

0 0