堆在cocos2d的一个sparite的行动 [英] stack of actions for one sparite in cocos2d

查看:163
本文介绍了堆在cocos2d的一个sparite的行动的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

I've got a question: My games hero can jump (CCJumpTo) and move to forward and backward direction (CCMoveTo).

我遇到了问题:如果游戏从用户处收到一个命令来移动英雄,但在这个时候英雄跳跃( CCJumpTo 我怎么能在跳跃结束后做这个命令。 (我可以在cocos2d中为一个sparite使用一些堆栈操作)

I faced with problem: if game recived a command from user to move the hero, but in this time hero is jumping (CCJumpTo), how can I do this command after the end of jumping. (can I use some stack of actions for one sparite in cocos2d)

我不能立即使用 [self.sprite stopAllActions]; 开始 CCMoveTo ,因为主角必须完成跳转操作,如果我使用 CCMoveTo ,动作 CCJumpTo

I can't use immediately [self.sprite stopAllActions]; to begin CCMoveTo because the hero have to finish the jump action and if I use CCMoveTo the action CCJumpTo will not finish. Hero can't jump and start to move to forward and backward at height.

对不起我的英语

推荐答案

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

For example, you can store your stack of actions in array, then run action like this

- (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];
}

这篇关于堆在cocos2d的一个sparite的行动的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆