0
Я создаю игру, в которой у меня есть узел на экране, и когда игрок касается экрана, узел просто работает, НО мне просто нужно, когда игрок нажимает на узел, а затем действие происходит.Как остановить узел, касающийся экрана? SpriteKit
Вот код того, что происходит.
var ballNode = SKSpriteNode(imageNamed: "balls.png")
var touchLocation = CGPoint()
override func didMove(to view: SKView) {
ballNode.size = CGSize(width: 100, height: 100)
ballNode.position = CGPoint(x: self.size.width*0.5, y: self.size.height*0.9)
self.addChild(ballNode)
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
let touch: UITouch = touches.first!
let positionInScene = touch.location(in: self)
let touchedNode = self.atPoint(positionInScene)
touchLocation = touch.location(in: self)
let moveDown = SKAction.moveTo(y: self.size.height*0.1, duration: 0.3)
let moveUp = SKAction.moveTo(y: self.size.height*0.9, duration: 0.3)
let moveSequence = SKAction.sequence([moveDown, moveUp])
ballNode.run(moveSequence)
let pointOfTouch = touch.location(in: self)
ballNode.contains(pointOfTouch)
спасибо, он работает как шарм. –
Ваш прием, пожалуйста, выберите это как правильный ответ, и если это поможет вам, пожалуйста, проголосовать за него. Вчера я получил значок (Tenacious) на SO за то, что у меня не менее 20% моих принятых ответов не было голосов :( –
У вас его @RonMyschuk –