0

到目前为止,我可以使用 Cocos2d 中的按钮来控制精灵的左右移动。我现在正在尝试加入一个跳跃动画,但我完全不知道如何做到这一点。我已经尝试了一个示例代码,它利用了 init 方法并结合了动画(跳起来和跳下),但是每当我试图在精灵跳跃时移动它时,我都会收到一个 SIGABRT 错误。请注意,我对 Cocos2d 非常陌生,如果能指导我完成制作成功的跳跃动画的步骤,我将不胜感激。

4

2 回答 2

3

CCJumpBy 模拟抛物线跳跃运动。

id jump_Up = [CCJumpBy actionWithDuration:1.0f position:ccp(0, 200) height:50 jumps:1];

运行上面的 jump_Up 动作会将精灵的位置沿 x 轴移动“0”距离,沿 y 轴移动“200”单位,并将沿抛物线路径移动精灵。

如果您希望在跳跃时向右或向左移动精灵。试试下面的..

CGPoint newPosition = ccp(max(sprite.position.x + screenSize.width * 0.2f,screenSize.width), sprite.position.y);
id jumpAct = [CCJumpBy actionWithDuration:1.0f position:newPosition height:50 jumps:1];
[sprite runAction:jumpAct];
于 2013-09-19T14:46:43.043 回答
2

只是一个快速更新——随着 Cocos2D 的 V3 版本,方法现在是 CCActionJumpBy。所以它是这样的......

CCActionJumpBy *jump = [CCActionJumpBy actionWithDuration:1.0f position:ccp(0, 200) height:50 jumps:1];
[_yourSpriteObject runAction:jump];
于 2014-03-23T19:27:27.317 回答