动作堆栈为在cocos2d一个亮晶(stack of actions for one sparite

2019-10-16 16:57发布

我有一个问题:我的游戏英雄能跳(CCJumpTo)和移动向前和向后方向(CCMoveTo)。

我面临的问题:如果游戏从用户recived命令来移动英雄,但就在这个时候英雄是跳跃(CCJumpTo),我怎么能跳结束后做此命令。 (我可以使用的一些行动栈在cocos2d一个亮晶)

我不能立即使用[self.sprite stopAllActions] 开始CCMoveTo因为英雄必须完成跳跃动作,如果我用CCMoveTo动作CCJumpTo将无法完成。 英雄不能跳,并开始移动转发和高度落后。

对不起我的英语不好

Answer 1:

例如,您可以将您的阵列动作堆栈,然后运行这样的行动

- (void) runNextAction
{
    id actionFromStack = [stack objectAtIndex: 0];
    [stack removeObjectAtIndex: 0];
    id callback = [CCCallFunc actionWithTarget: self selector: @selector(runNextAction)];
    id sequence = [CCSequence actionOne: actionFromStack two: callback];
    [self runAction: sequence];
}


文章来源: stack of actions for one sparite in cocos2d