Я работаю над маленькой игрой для iOS.(Swift + Spritekit) - удалите узел и его данные целиком
У меня есть SKSpriteNode в моей сцене - когда я удаляю его с помощью «removeFromParent» и касаюсь области, в которой он был последним, я все еще получаю функцию.
Мой код выглядит следующим образом:
override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
/* Called when a touch begins */
for touch: AnyObject in touches {
let location = touch.locationInNode(self)
if tapToPlayNode.containsPoint(location){
tapToPlayNode.removeFromParent()
startNewGame()
}
}
}
func startNewGame(){
//Starts a new game with resetted values and characters in position
println("Ready.. set.. GO!")
//Shows the ui (value 1)
toggleUiWithValue(1)
}
Другими словами, я получаю "Ready .. установлен .. GO!" когда я касаюсь области даже после ее удаления.
Любые подсказки?
Bests,
Большое спасибо за ваш быстрый ответ, Bsarr! Один быстрый пример: когда я использую «var tapToPlayNode: SKSpriteNode?» Кажется, я не могу текстурировать узел. – user2026507
EDIT: Я решил это! Большое спасибо, за помощь Bsarr! – user2026507
@ bsarr007 Нужно ли nil SKSpriteNode после перезапуска новой игры или она все еще работает после удаления ее из родителя перед началом новой игры? В настоящее время мне нужно стереть список дополнительных SKSpriteNodes, но он, похоже, не работает, установив их на нуль после их удаления из родителя. Благодарю. –