所以我希望我的 Sprite 随着重力移动,直到它到达特定位置,然后它应该停止响应重力并停留在那里。我怎样才能做到这一点?提前致谢
我希望它在到达目标位置后停止
sprite.physicsBody = SKPhysicsBody(circleOfRadius: sprite.size.width/2)
if sprite.position == newPosition {
sprite.physicsBody?.affectedByGravity = false}
没用
最佳答案
尝试做这样的事情
override func update(_ currentTime: TimeInterval) {
//In this case, you can just change self.size.height/2 with whatever position you want.
if sprite.position.y <= self.size.height/2{
sprite.physicsBody?.affectedByGravity = false
sprite.physicsBody?.isDynamic = false
}
}
在本例中,我创建了一个位于顶部且重力设置为 true 的 Sprite 。在 override func update
中,我声明一旦我的 Sprite 到达这个特定位置,我希望它是静态的。
关于ios - 如何在 sprite 到达特定位置后移除 physicsBody/停止响应重力?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44465152/