Sprite kit sprite工具包中的成功跳转检测

Sprite kit sprite工具包中的成功跳转检测,sprite-kit,skphysicsbody,skphysicscontact,Sprite Kit,Skphysicsbody,Skphysicscontact,我的游戏是一只动物跳过洞。如果它撞到一个洞,它就会失去生命。但如果它成功跳了三次,就会解锁一项成就 如何检测成功的跳转?我有使用SKPhysics检测失败跳跃的逻辑​请与我们联系 动物===========>第1洞===========>第2洞==============>第3洞===========[解锁成就]================> 我可以使用“触碰开始”和“触碰结束”,但它会变得复杂,因为它可以进行其他假跳跃(而不是越过洞)。您可以用与洞检测类似的方式检测成功的跳跃。只需为您的平

我的游戏是一只动物跳过洞。如果它撞到一个洞,它就会失去生命。但如果它成功跳了三次,就会解锁一项成就

如何检测成功的跳转?我有使用SKPhysics检测失败跳跃的逻辑​请与我们联系

动物===========>第1洞===========>第2洞==============>第3洞===========[解锁成就]================>


我可以使用“触碰开始”和“触碰结束”,但它会变得复杂,因为它可以进行其他假跳跃(而不是越过洞)。

您可以用与洞检测类似的方式检测成功的跳跃。只需为您的平台分配一个单独的SKPhysicsBody类别位掩码,以进行检查。一旦你检测到一个接触点,并且接触到的平台通过了3号孔,然后解锁成就。

方法1) 假设您为动物跳跃的每个平台使用单独的SKNode,记录动物在跳跃前所站的最后一个平台(SKNode),并与每次跳跃后所降落的平台(SKNode)进行比较。 如果跳跃前平台节点与着陆平台节点不同,则动物成功跳跃

方法2) 如果标高基于坐标,则可以使用带有孔坐标的NSArray,如果跳跃前后的动物坐标位于其中一个孔的任一侧,则跳跃成功