具有相同条件的场景中的Swift SpriteKit多个节点

时间:2017-09-27 14:31:36

标签: ios swift3 sprite-kit swift4

我在场景中有多个具有相同名称的spritenodes。如果我想在.swift文件中编辑它们,只有一个对条件做出反应,所有其他节点都保持在场景中。 例如,如果我想让它们移动,只需一个动作......我该如何解决它?除大小和位置外,所有节点都完全相同......

谢谢!

1 个答案:

答案 0 :(得分:0)

仅仅因为节点共享相同的名称并不意味着它们共享相同的属性。这和人们一样。如果我遇到两个名叫约翰的人,我刮了第一个约翰头,这并不意味着第二个约翰是秃头。

您需要做的是通过所有具有相同名称的孩子进行枚举。

在Sprite Kit中,我们有一个名为enumerateChildNodes的方法,您可以像这样使用它:

node.enumerateChildNodes(withName:"John")
{
  //[unowned self] Include this if you are using self to avoid a retain cycle

  node,stop in
  node.head = shaved
}