0

有没有办法在屏幕中间连续生成一个 SKSpriteNode。例如,我想在 x 轴的中间生成一个圆圈,然后让该节点一直生成到屏幕下方?

这些圆圈是不同的颜色,所以当它们产生时,有没有办法在它们产生时随机改变圆圈的颜色?

我知道我可以单独生成它们,但有更好的方法吗?(我在 swift 上使用 SpriteKit)

4

1 回答 1

0

你需要学习一些基础知识。了解 For 循环、数组和 arc4random。

        var circleDiameter: CGFloat = 80.0
        for var y = self.frame.height; y > 0; y = y - circleDiameter
        {
            let coloroptions = [UIColor.greenColor(), UIColor.blueColor(), UIColor.redColor()]
            let randomNumber = Int(arc4random_uniform(UInt32(coloroptions.count)))
            let color = coloroptions[randomNumber]
            var rect = CGRectMake(self.frame.width / 2, y, circleDiameter, circleDiameter)
            var circle = SKShapeNode()
            circle.path = UIBezierPath(ovalInRect: rect).CGPath
            circle.fillColor = color
            circle.lineWidth = 0
            circle.physicsBody = SKPhysicsBody(circleOfRadius: circle.frame.width / 2)
            circle.physicsBody?.dynamic = false
            self.addChild(circle)
        }
于 2015-06-06T14:03:07.133 回答