Я делаю небольшую игру в Swift 3
и SpriteKit
. Я хочу столкнуться с моим персонажем и специальным объектом, который увеличивает мой балл в 1, но по какой-то причине, когда я обнаруживаю столкновение, счет увеличивается в 2 или 3.Как правильно удалить SKSpriteNode
Я удаляю из родителя мой SpriteKitNode
, но кажется, что он не работает.
Вот мой код:
func checkCollisionsObject(){
enumerateChildNodes(withName: "objeto") {node, _ in
let objeto = node as! SKSpriteNode
if objeto.frame.intersects(self.personaje.frame){
objeto.removeFromParent()
self.actualizarPoints()
//self.labelNivel.text = "Level: \(self.nivel)"
}
}
}
func actualizarPoints() {
self.pointsCounter += 1
points.text = "Points: \(pointsCounter)"
}
Почему вы не использовать делегат столкновения? –
Как я должен использовать делегат столкновения? @SimonePistecchia – HessianMad
Может быть, вы должны прочитать какой-то учебник, подобный этому [link] (https://www.raywenderlich.com/145318/spritekit-swift-3-tutorial-beginners) –