首页 > 技术文章 > cocos2d 动作

yufenghou 2014-03-21 23:55 原文

    CCSize size=CCDirector::sharedDirector()->getWinSize(); 
    CCSprite* spr1=CCSprite::create("s_2.png");
    spr1->setPosition(ccp(size.width*0.2,size.height*0.2));
    this->addChild(spr1);

    CCPointArray *arr=CCPointArray::create(10);
    arr->addControlPoint(ccp(size.width*0.2,size.height*0.2));
    arr->addControlPoint(ccp(size.width*0.2,size.height*0.8));
    arr->addControlPoint(ccp(size.width*0.8,size.height*0.8));
    arr->addControlPoint(ccp(size.width*0.8,size.height*0.2));
    arr->addControlPoint(ccp(size.width*0.2,size.height*0.2));
    //最后一个参数是张力,如果大于1向内弯曲,如果小于1向内弯曲
    CCActionInterval* action1=CCCardinalSplineTo::create(5.0f,arr,0.01);
    CCActionInterval* action2=CCScaleBy::create(5.0,2.0);
    CCActionInterval* action21=action2->reverse();
    CCActionInterval* action3=CCSequence::create(action1,action2,NULL);
    CCActionInterval* action31=CCSequence::create(action1,CCDelayTime::create(2),action2,NULL);

    CCActionInterval* action4=CCSpawn::create(action1,action2,NULL);
    CCActionInterval* action5=CCRepeat::create(CCSequence::create(action2,action21,NULL),5);
    spr1->runAction(action5);

 

推荐阅读