【问题标题】:SKEmitterNode: How to start/stop rain at random time?SKEmitterNode:如何随机开始/停止下雨?
【发布时间】:2020-04-05 12:23:26
【问题描述】:

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

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

func startGame () {

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

....

【问题讨论】:

    标签: sprite-kit skemitternode


    【解决方案1】:

    您可以使用一个动作在随机时间去除雨水,例如:

    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]))
    }
    

    【讨论】:

      猜你喜欢
      • 2014-05-18
      • 2016-04-03
      • 1970-01-01
      • 2016-01-13
      • 1970-01-01
      • 2013-09-08
      • 1970-01-01
      • 2019-12-12
      • 2019-03-25
      相关资源
      最近更新 更多