Sto usando Swift per creare un gioco in SpriteKit.Come utilizzare "enumerateChildNodesWithName" con Swift in SpriteKit?
in Objective-C ho potuto utilizzare il seguente metodo:
(void)enumerateChildNodesWithName:(NSString *)name usingBlock:(void (^)(SKNode *node, BOOL *stop))block
per eseguire azioni su quel *node
, ma non riesco a ottenere questa funzione lavora a Swift. Fondamentalmente, non so come fare riferimento a quel nodo in Swift.
Questo è il codice che sto utilizzando, ma ho problemi con la parte "usingBlock:". Ho provato molte cose per molte ore, ma non ci sono riuscito. Aiuto per favore!
func spawnEnemy() ->() {
let enemy = SKSpriteNode(imageNamed: "enemy")
enemy.name = "enemy"
enemy.position = CGPointMake(100, 100)
self.addChild(enemy)
}
func checkCollisions() ->() {
self.enumerateChildNodesWithName("enemy", usingBlock: ((SKNode!, CMutablePointer<ObjCBool>) -> Void)?)
}
Grande !! Ha funzionato!! Molte grazie!!! – rv123
Utilizzare stop.memory = true mi ha dato un errore, quindi ho usato stop.withUnsafePointer {$ 0.memory = true}, come consigliato [qui] (http://stackoverflow.com/questions/24142589/how-to-set- cmutablepointerobjcbool-to-false-in-swift) – rv123
Buona presa. Risposta modificata – rickster