У меня есть SKSpriteNode под названием runner, и всякий раз, когда я касаюсь экрана, чтобы попытаться перетащить его из одного места в другое, runner движется в противоположном направлении? Например, если я попытаюсь перетащить его влево, он пойдет вправо, если я попытаюсь перетащить его вверх, он пойдет вниз. Добавление TouchesEnded не помогло. Может ли кто-нибудь посмотреть на мой код и сказать мне, почему это происходит, пожалуйста?
import UIKit
import Foundation
import SpriteKit
class Maze: SKScene {
let runner = SKSpriteNode(imageNamed: "Spaceship")
override func didMoveToView(view: SKView)
{
self.createRunner()
}
override func touchesBegan(touches: NSSet, withEvent event: UIEvent)
{
let touch = touches.anyObject()! as UITouch
let location = touch.locationInView(self.view)
runner.position = location
}
override func touchesMoved(touches: NSSet, withEvent event: UIEvent)
{
let touch = touches.anyObject()! as UITouch
let location = touch.locationInView(self.view)
runner.position = location
}
func createRunner()
{
runner.setScale(0.50)
runner.position = CGPointMake(0, 0)
runner.name = "RunnerNode"
self.addChild(runner)
}
}
locationInNode()
вместоlocationInView()
?locationInNode()
относится только к SpriteKit. - person Jonathan   schedule 10.06.2015