有没有办法暂停具有某个zPosition及以下的所有精灵?

时间:2016-11-23 07:51:14

标签: swift sprite-kit swift3

我试图在我的游戏中暂停很多精灵。有没有办法让我可以暂停给定zPosition或所有精灵低于给定zPosition的精灵?这些精灵也可能在更新方法中更新物理实体。

1 个答案:

答案 0 :(得分:4)

您可以使用以下示例中的代码执行此任务:

self.enumerateChildNodes(withName: "//*") {
     node, stop in
     if node.zPosition > 1 && node.zPosition < 4 {
        // do whatever you want with these nodes (sprites, labels..)
        if node is SKSpriteNode { // you can use also this filter to pause only SKSpriteNode types
           node.isPaused = true
        }
     }
}

您还可以决定使用特定的&#34; 名称&#34;而不是&#34; *&#34;在第一行中仅对具有此名称的节点进行分组。