Sprite Kit - 应用静态脉冲

Yam*_*man 1 gravity ios sprite-kit

我有一个简单的例子,我在触摸上对节点施加冲动,如下所示:

[_bird.physicsBody applyImpulse:CGVectorMake(0, 15)];
Run Code Online (Sandbox Code Playgroud)

我想要的是施加"静态"冲动.

让我解释一下:当我的节点处于下降阶段时,由于重力,施加脉冲将更难,并且脉冲将应用dy5而不是15(例如).

在另一种情况下,当我的节点没有掉落(即在地面上)时,如果我快速敲击多次,我的冲动似乎成倍增加而不被添加,导致我的节点以太快的速度到达"屋顶".

dy无论何时,我想申请相同数量的.

反正有吗?

在此先感谢您的帮助.

ZeM*_*oon 14

为了使脉冲对精灵节点具有相同的效果而不管其状态如何,您可以尝试将其velocity属性设置为零.像这样:

_bird.physicsBody.velocity = CGVectorMake(0,0);
[_bird.physicsBody applyImpulse:CGVectorMake(0, 15)];
Run Code Online (Sandbox Code Playgroud)

这应该使'鸟'(Flappy Bird?)在任何情况下表现相同.