如何将“玩家”位置移动到用户触摸屏幕的位置?我希望他们能够通过点击不同的地方不断移动它。这是我到目前为止所做的,但它不起作用:
类GameScene:SKScene {
let player = SKSpriteNode(imageNamed: "Spaceship")
override func didMoveToView(view: SKView) {
// 2
backgroundColor = SKColor.whiteColor()
// 3
player.position = CGPoint(x: size.width/2, y: size.height/2)
// 4
addChild(player)
}
override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
/* Called when a touch begins */
for touch: AnyObject in touches {
let location = touch.locationInNode(self)
let player = SKSpriteNode(imageNamed:"Spaceship")
player.position = location
}
}
答案 0 :(得分:1)
在let player = SKSpriteNode(imageNamed:"Spaceship")
的{{1}}行中,您正在创建太空船节点的新实例。
此节点不在场景中,设置新节点的位置不会改变现有播放器节点的位置。
只需尝试重置播放器节点的位置。
尝试
touchesBegan