0

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

我遇到了一个问题:如果游戏收到用户移动英雄的命令,但此时英雄正在跳跃(CCJumpTo),我该如何在跳跃结束后执行此命令。(我可以在 cocos2d 中对一个 sprite 使用一些操作堆栈吗)

我不能立即使用[self.sprite stopAllActions]; 开始CCMoveTo因为英雄必须完成跳跃动作,如果我使用CCMoveTo动作CCJumpTo将不会完成。英雄不能跳跃并开始在高处前后移动。

对不起我的英语不好

4

1 回答 1

2

例如,您可以将您的操作堆栈存储在数组中,然后像这样运行操作

- (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];
}
于 2012-05-16T10:13:53.170 回答