Cocos2D-x游戏开发之八:事件连续执行:CCMoveBy CCCallFunc CCSequence

接下来让我们继续基础知识的最后一节,将各种事件按照先后顺序连接起来是一件非常重要的事情,这一节我们做一个简单的Demo。

我先执行移动Action然后在移动完成之后再告诉你们我已经到家了。。

任然比较简单,代码如下:

bool HelloWorld::init()
{
    bool bRet = false;
    do 
    {
        CC_BREAK_IF(! CCLayer::init());
        CCMenuItemImage *pCloseItem = CCMenuItemImage::create(
            "CloseNormal.png",
            "CloseSelected.png",
            this,
            menu_selector(HelloWorld::menuCloseCallback));
        CC_BREAK_IF(! pCloseItem);
        pCloseItem->setPosition(ccp(CCDirector::sharedDirector()->getWinSize().width - 20, 20));
        CCMenu* pMenu = CCMenu::create(pCloseItem, NULL);
        pMenu->setPosition(CCPointZero);
        CC_BREAK_IF(! pMenu);


        // Add the menu to HelloWorld layer as a child layer.
        this->addChild(pMenu, 1);
        // 3. Add add a splash screen, show the cocos2d splash image.
        CCSprite* pSprite = CCSprite::create("sprite.png");
        CC_BREAK_IF(! pSprite);
CCSize  size = CCDirector::sharedDirector()->getWinSize();
        pSprite->setPosition(ccp(0, size.height/2));
        this->addChild(pSprite, 0);
CCMoveBy *move= CCMoveBy::create(4.0f,ccp(size.width-50,size.height/4));
CCCallFunc *cal = CCCallFunc::create(this,callfunc_selector(HelloWorld::callfunc));


CCSequence *seo = CCSequence::create(move,cal,NULL);
pSprite->runAction(seo);
        bRet = true;
    } while (0);


    return bRet;
}


void HelloWorld::menuCloseCallback(CCObject* pSender)
{
    // "close" menu item clicked
    CCDirector::sharedDirector()->end();
}


void HelloWorld::callfunc()
{
CCLabelTTF *label  = CCLabelTTF::create("I am Home","Arial",35);
CCSize size = CCDirector::sharedDirector()->getWinSize();
label->setPosition(ccp(size.width-200,size.height/2));
this->addChild(label);
CCBlink *blink = CCBlink::create(6.0f,50);
label->runAction(blink);
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值