Generando un nodo Spritekit en un momento aleatorio
Estoy haciendo un juego en el que tengo un nodo que se genera y cae desde la parte superior de la pantalla. Sin embargo, quiero hacer que los nodos se reproduzcan a intervalos de tiempo aleatorios entre un período de 3 segundos. Entonces uno se genera en 1 segundo, el siguiente en 2.4 segundos, el siguiente en 1.7 segundos, y así sucesivamente para siempre. Estoy luchando con cuál debería ser el código para esto.
Código que tengo actualmente para el nodo de desove:
let wait = SKAction.waitForDuration(3, withRange: 2)
let spawn = SKAction.runBlock { addTears()
}
let sequence = SKAction.sequence([wait, spawn])
self.runAction(SKAction.repeatActionForever(spawn))
El código para mi función addTears () es:
func addTears() {
let Tears = SKSpriteNode (imageNamed: "Tear")
Tears.position = CGPointMake(Drake1.position.x, Drake1.position.y - 2)
Tears.zPosition = 3
addChild(Tears)
//gravity
Tears.physicsBody = SKPhysicsBody (circleOfRadius: 150)
Tears.physicsBody?.affectedByGravity = true
//contact
Tears.physicsBody = SKPhysicsBody (circleOfRadius: Tears.size.width/150)
Tears.physicsBody!.categoryBitMask = contactType.Tear.rawValue
Tears.physicsBody!.contactTestBitMask = contactType.Bucket.rawValue
}