如何为sprite节点提供唯一的id

时间:2016-01-18 20:38:10

标签: xcode sprite-kit skspritenode

温柔,我一遍又一遍地看着,但作为SpriteKit的初学者,我找不到一个可以理解的答案。

情况:在游戏中落入几个不同的图像,点击将图像移动到底部的两个特定位置之一。如何将每个图像命名为唯一的,以便它可以找到它到达相应位置的方式。

E.g。 Img1-> Place1 Img2-> Place1 Img3-> Place2 Img4-> Place1 Img5-> Place2

谢谢你的想法!

1 个答案:

答案 0 :(得分:2)

你需要发布一些代码来获得一些答案,堆栈溢出的人不会为你做这项工作。

到目前为止你尝试了什么?

你不是给每个图像一个像

这样的名字
 var image1: SKSpriteNode!

并在ViewDiDLoad中设置它,如此

image1 = SKSpriteNode(imageNamed: "Img1")

现在,您可以在游戏中为该图像执行某些操作,例如

 image1.position = ....

您还可以为每个图像指定一个唯一的名称。创建一个全局结构

struct ImageName {
    static let image1 = "Image1"
    static let image2 = "Image2"
}

并为每张图片命名

  image1.name = ImageName.image1
  image2.name = ImageName.image2

并使用name属性来识别每个图像

 self.enumerateChildNodesWithName("//\(ImageName.image1)") {
        node, stop in

    // do something for image1
 }

这是你要问的吗?