2015-06-26 2 views
0

Я создаю игру, и я пытаюсь сделать это ждать, пока количество определенного спрайта, показанный не равно 0, прежде чем продолжить, я пытался это сделать:Как подсчитать количество показанных спрайтов?

NSLog("Number of asteroid 1 nodes: %d", self["Asteroid1Txt"].count) 

но это дает вам номер определенного спрайта, даже если он не показан на экране.

Есть ли способ получить номер определенного спрайта, только если его на самом деле на экране?

ответ

0

Дайте Sprite узлу имя, как это:

var mySprite = SkSpriteNode(imageNamed: "nameOfYourImage") 
mySprite.name = "spriteToTrack" 

Затем перечислить повсеместно в спрайты с именем "spriteToTrack", как это:

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") 
Смежные вопросы