Sto creando un gioco e sto cercando di farlo attendere fino a quando il numero di un determinato sprite mostrato è uguale a 0 prima di continuare, ho provato a fare questo:
NSLog("Number of asteroid 1 nodes: %d", self["Asteroid1Txt"].count)
ma questo ti dà il numero di un certo sprite, anche quando non è mostrato sullo schermo.
C'è un modo per ottenere il numero di un determinato sprite, solo se è effettivamente sullo schermo?
risposte:
0 per risposta № 1Dai al nodo sprite un nome come questo:
var mySprite = SkSpriteNode(imageNamed: "nameOfYourImage")
mySprite.name = "spriteToTrack"
Quindi enumera attraverso gli sprite con il nome "spriteToTrack" in questo modo:
var countSprites = 0
enumerateChildNodesWithName(""spriteToTrack""){node,_ in
countSprites++
/* If you want to manipulate this node or remove it....but dont do it in this loop!
let tmpNode = node as! SKSpriteNode // Must be the same as mySprite
*/
}
println("I have (countSprites ) sprites with name spriteToTrack")