用swift检测触摸压力(力)(SpriteKit)

时间:2016-08-22 11:41:25

标签: ios swift sprite-kit

所以,我在Xcode上使用 Swift 进行了这个游戏,我有一个跳过的SKShapeNode。不过,我想让这个跳跃与玩家的触觉相称。因此,一个小的水龙头将获得一个小跳跃,一个更轻快的一个获得更高的跳跃。怎么可能这样做(请注意我不想要任何3D触摸选项)?

1 个答案:

答案 0 :(得分:1)

通常,游戏中的这种事情是通过计时按下并相应地改变跳跃高度来完成的。 (这也是为什么在2D平台游戏中使用物理技术对于这种事情来说很棘手的原因。)

在超级马里奥这样的游戏中完成的方式是在按下触摸后立即开始跳跃运动。然后经过一段时间(因为角色是“向上”跳跃的一半),你检查触摸是否仍然按下。如果是,您可以使跳跃动画继续向上。如果触摸被释放,则再次开始跳跃。

这样短暂的触摸就是一个小跳跃,但更长的触摸是更高的跳跃。

如果您现在有bsmallJumpAction,那么您可以做的就是将其细分为更小的部分......

bigJumpAction会立即触发,然后是beginJumpActionsmallJumpEndAction

这可以通过序列动作来完成......

bigJumpEndAction

无论如何都是这样的。有很多方法可以解决这个问题:)