cocos2d-x动画循环播放

时间:2013-11-21 07:47:37

标签: cocos2d-x

动画从a点移动到b,在动作中,动画需要循环播放。例如,子弹移动到一个点,这个子弹是一个应该循环播放的动画。

CCSequence::create(
  CCSpawn::createWithTwoActions(
    CCTargetedAction::create(sprite, CCMoveTo::create(3.0f, point_a)), 
    CCTargetedAction::create(sprite, CCRepeatForever::create(CCAnimate::create(animation)))
),0);

但是CCRepeatForever不能成为动作序列的成员。 那怎么办呢?我使用序列,因为有其他行为排队(上面省略)

1 个答案:

答案 0 :(得分:5)

你不需要为此使用ccspawn ..也不是ccsequence只是在对象上单独运行两个动作。

CCSprite *newSprite=CCSprite::create("imageName");

CCAnimation *animation=CCAnimation::create();

//..some code to add frames to this animation object..

//to repeat for indefinite time you could setLoops to -1 or use CCRepeatForever class    //like this..
//1:

animation->setLoops(-1);
newSprite->runAction(CCAnimate:create(animation));

//or..

//2:

newSprite->runAction(CCRepeatForever:create(CCAnimate:create(animation)));

//now to translate this sprite simultaneously use this.

newSprite->runAction(CCMoveTo::create(3.0,point_a));