【问题标题】:How to give a sprite node a unique id如何给精灵节点一个唯一的id
【发布时间】:2016-01-18 20:38:10
【问题描述】:

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

情况:游戏中有几个不同的图像,轻按一下即可将图像移动到底部的两个特定位置之一。如何为每张图片命名唯一的,以便它可以找到到达相应位置的方式。

例如Img1->Place1 Img2->Place1 Img3->Place2 Img4->Place1 Img5->Place2

感谢您的思考!

【问题讨论】:

    标签: xcode sprite-kit skspritenode


    【解决方案1】:

    您需要发布一些代码以获得一些答案,堆栈溢出的人不会为您完成工作。

    到目前为止,您尝试了什么?

    你不是给每张图片一个已经喜欢的名字

     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
     }
    

    这是你要问的吗?

    【讨论】:

    • 感谢您的回复。我知道一些代码会更好地获得答案,但在这种情况下,我试图获得一些提示并自己在代码中弄清楚。很高兴你给了我一个思考和锻炼的方法。
    • 很高兴,告诉我进展如何
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-29
    • 2012-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多