繁体   English   中英

如何暂停SKSpriteNode,Swift

[英]How to pause an SKSpriteNode, Swift

我使用精灵套件创建了这个游戏。 在游戏过程中,精灵节点正在移动。 当“游戏结束”标签弹出时,我希望怪物sprite节点停止移动或暂停,但场景的其余部分仍然继续。 我知道将代码放在哪里,我只是不知道如何编写。 这是我的怪物代码。

func addMonster() {

    // Create sprite
    let monster = SKSpriteNode(imageNamed: "box")
    monster.setScale(0.6)
    monster.physicsBody = SKPhysicsBody(rectangleOfSize: monster.size)
    monster.physicsBody?.dynamic = true
    monster.physicsBody?.categoryBitMask = UInt32(monsterCategory)
    monster.physicsBody?.contactTestBitMask = UInt32(laserCategory)
    monster.physicsBody?.collisionBitMask = 0
    monster.name = "box"

    var random : CGFloat = CGFloat(arc4random_uniform(320))
    monster.position = CGPointMake(random, self.frame.size.height + 20)
    self.addChild(monster)

}

编辑

override func update(currentTime: CFTimeInterval) {

    if isStarted == true {

        if currentTime - self.lastMonsterAdded > 1 {
            self.lastMonsterAdded = currentTime + 3.0
            self.addMonster()
        }
        self.moveObstacle()
    } else {

    }
    self.moveBackground()

    if isGameOver == true {

    }

}

如果我正确理解了您的问题,则希望暂停单个(或少量)节点。 在这种情况下...

monster.paused = true

可能就是您想要的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM