CCJumpBy函数 CCMoveTo函数的调试 对比

CCJumpBy函数的调试应用一:
//小鸟上下飞 不断循环  参数跳稍调快的话效果看起来像jump
 CCActionInterval*  actionUp = CCJumpBy::create(10, ccp(0,0), 30, 4);    
    bird->runAction( CCRepeatForever::create(actionUp));
CCJumpBy函数
直接这两行放在你创建精灵时写的代码this->addChild(bird);这行后面就行
参数说明:时间秒,移动点,高度,步数
即你调整第1个参数,控制小鸟的速度快慢
第3个参数,控制小鸟往上面的Y轴高度。
就可以看到bird上下飞飞不断循环。
 
 
CCJumpBy函数的调试二:

CCActionInterval*  actionBy = CCJumpBy::create(10, CCPointMake(getWinSize().width/2, getWinSize().height/2+100), 50, 14);

    CCActionInterval*  actionByBack = actionBy->reverse();//让动作回到actionBy之前的地方
 bird->runAction( CCSequence::create(actionBy, actionByBack, NULL));

如果改为将这3行放在你创建精灵时写的代码this->addChild(bird);这行后面
小鸟会渐渐地往右上方飞离屏幕,然后又慢慢地退回原来的地方
 
 
 
CCJumpBy函数的调试三:

CCActionInterval*  actionBy = CCJumpBy::create(10, CCPointMake(getWinSize().width/2, getWinSize().height/2-200), 50, 14);

    CCActionInterval*  actionByBack = actionBy->reverse();//让动作回到actionBy之前的地方
 bird->runAction( CCSequence::create(actionBy, actionByBack, NULL));

如果改为将这3行放在你创建精灵时写的代码this->addChild(bird);这行后面
小鸟会渐渐地往右下方飞离屏幕,然后又慢慢地退回原来的地方
 
 
CCMoveTo函数的调试一:
int actualDuration = 10;
 CCMoveTo *actionMove = CCMoveTo::create(actualDuration, ccp(getWinSize().width/2, getWinSize().height/2+200+100));
 *bird->runAction(CCSequence::create(actionMove, NULL));
如果改为将这3行放在你创建精灵时写的代码this->addChild(bird);这行后面
小鸟会渐渐地往直上方飞,而且其中有代码的Y轴数值比较大,有可能会飞离屏幕

CCMoveTo函数的调试二:
int actualDuration = 10;
 CCMoveTo *actionMove = CCMoveTo::create(actualDuration, ccp(0, 200+100));
 *bird->runAction(CCSequence::create(actionMove, NULL));
如果改为将这3行放在你创建精灵时写的代码this->addChild(bird);这行后面
小鸟会渐渐地往cocos2d-x的坐标(0,300)飞。
 
 
CCMoveTo函数的调试三:
int actualDuration = 10;
 CCMoveTo *actionMove = CCMoveTo::create(actualDuration, ccp(getWinSize().width/3, 0-getContentSize().height/2));//假如没有遇到碰撞,小鸟Y轴向下飞 直到飞出屏幕
 bird->runAction(CCSequence::create(actionMove, NULL));

 

如果改为将这3行放在你创建精灵时写的代码this->addChild(bird);这行后面

如果小鸟原本位于getWinSize().width/3即屏幕左侧3分之一处,则小鸟Y轴向下飞 直到飞出屏幕

void ReadyGameLayer::spriteMoveFinished(CCNode *sender)  //回调函数spriteMoveFinished,进行删除精灵对象
{
    CCSprite *sprite = (CCSprite*)sender;
    this->removeChild(sprite, true);
}

 

 

你可能感兴趣的:(CCJumpBy函数 CCMoveTo函数的调试 对比)