当玩家跳跃时:场景向下移动,玩家停留在原地,如 Doodle Jump

When player jumps: scene moves down, player stays at place like Doodle Jump

我正在开发类似涂鸦跳跃的游戏。

但是当玩家跳到屏幕上方时,玩家应该停留在屏幕的边缘,而不是物体会向下移动,所以看起来玩家我仍在向上移动。

但是我该怎么做呢?

这是我试过的:

  if player.position.y > -0.35 * frame2.size.height{

        grond.physicsBody?.applyImpulse(CGVectorMake(0, -player.physicsBody?.velocity.dy))
        player.position.y = -0.35 * frame2.size.height
    }

但这给出了错误:后缀的操作数!应该有可选的类型,类型是 CGFloat。

CGVectorMake 需要两个 CGFloats。可选链接将产生相同的类型,但包装在可选中,因此您需要打开它:

CGVectorMake(0, (-player.physicsBody?.velocity.dy)!))