SKSpriteNode不会改变它的位置

时间:2018-05-04 14:20:10

标签: ios swift sprite-kit skspritenode

我试图在用户结束触摸屏幕后更改SKSpriteNode的位置。 x和y位置应该是随机的,但当然仍然在屏幕上。

这是我写的函数:

//Move object to a random position on the screen
func randomPosition(object: SKSpriteNode){
    object.position.x = CGFloat(arc4random_uniform(UInt32(UIScreen.main.bounds.width)))
    object.position.y = CGFloat(arc4random_uniform(UInt32(UIScreen.main.bounds.height)))
}

但遗憾的是节点无法可靠移动。大多数时候它只是稍微旋转一下。 (它看起来非常像一个错误)

以下是我从上面调用该函数的地方:

override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
    ...
    randomPosition(object: enemy)
    ...
}

当我只调用一次randPosition-Function时,例如在didMove函数中,它确实可以正常工作

提前谢谢!

0 个答案:

没有答案