繁体   English   中英

你如何获得 SpriteKit 中特定节点的数量?

[英]How do you get the count of specific nodes in SpriteKit?

我正在制作一个 iOS 游戏,其中涉及从大炮中发射炮弹。 如何获取场景中的大炮数量? 这是我的 function 用于创建、射击和移除炮弹(当玩家点击屏幕时会调用此 function):

func fireCannonBall()
    {
        let cannonBall = SKSpriteNode(imageNamed: "cannonBall")
        cannonBall.position.x = //some x-position
        cannonBall.position.y = //some y-position
        cannonBall.zPosition = 1
        self.addChild(cannonBall)
        
        let moveCannonBall = SKAction.moveBy(x: cos(currentAngle) * 2400, y: sin(currentAngle) * 2400, duration: 3)
        let deleteCannonBall = SKAction.removeFromParent()
        let cannonSequence = SKAction.sequence([cannonSound, moveCannonBall, deleteCannonBall])
        cannonBall.run(cannonSequence)
    }

您可以为每个炮弹分配一个名称,例如cannonBall.name = "cannonBall"

然后,您可以使用subscript(_:)enumerateChildNodes(withName:using:)方法获取场景中的所有炮弹。

这是对 Apple 文档的参考: 搜索节点树

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM