更改场景中所有节点的颜色?

时间:2017-06-10 19:25:49

标签: swift swift3 sprite-kit

所以这看起来像是一个愚蠢的问题;但是,我会看看是否有人有答案。

有没有办法在swift中改变场景中所有节点的颜色?例如,反转所有颜色?

我使用SpriteKit创建了一款游戏,并希望创建不同的主题。而不是逐个改变每个节点。我想至少在一次拍摄中做到最多。如果有人有任何建议,将不胜感激!谢谢!

-Matt

1 个答案:

答案 0 :(得分:2)

你想要的场景内,

for node in self.children {
 // I used spritenode, but you can add as many nodes with color options as you like.
  guard let snode = node as? SKSpriteNode else { continue }
  snode.color = .blue
}

我认为反演函数是一个单独的问题:P但是类似于:

if snode.color == .black { node.color == .white }

但你也可以用RGB和数学来做这件事。