SKEmitterNode:如何在任意时间启动/停止降雨



我在游戏中添加了雨水作为SKEmitterNode粒子,我希望它在随机时间显示。我应该使用什么样的功能?

以防万一,我的降雨代码:

func startGame(({

if let rain = SKEmitterNode(fileNamed: "rain.sks") {
rain.position = CGPoint(x: frame.width, y: frame.height)
addChild(rain)
}

您可以使用一个操作在任意时间清除雨水,例如:

if let rain = SKEmitterNode(fileNamed: "rain.sks") {
rain.position = CGPoint(x: frame.width, y: frame.height)
addChild(rain)
let waitAction = SKAction.wait(forDuration: Double.random(in: 10.0 ... 50.0))
let removeAction = SKAction.removeFromParent()
rain.run(SKAction.sequence([waitAction, removeAction]))
}

最新更新