Swift SpriteKit健康酒吧

时间:2015-01-29 13:07:50

标签: ios swift sprite-kit progress-bar

我想在我的场景中添加 Health Bar (一个进度条)。

这是一个填充颜色的矩形条,位于场景的左上角,每秒都会缩小(填充的颜色)。在2个物体(SKSpriteNode)相互碰撞后,它会给你+ 5秒的时间。

感谢LearnCocos2D和CloakedEddy,我知道我只需使用SKSpriteNode with ColorSKCropNode而不是SKShapeNode来制作条形码。

我现在应该如何实现它,以便每一秒顺利减少自己?

我的代码:

....
var progressValue = 200
....

HealthBar = SKSpriteNode(color:SKColor .yellowColor(), size: CGSize(width: progressValue, height: 30))
HealthBar.position = CGPointMake(self.frame.size.width / 3, self.frame.size.height / 1.05)
HealthBar.anchorPoint = CGPointMake(0.0, 0.5)
HealthBar.zPosition = 4
self.addChild(HealthBar)

1 个答案:

答案 0 :(得分:0)

您可以做的是将SKSpriteNode作为健康栏。然后在第一个节点上有一个SKSpriteNode作为帧。您有一个操作SKAction.repeatForever(SKAction.sequence([SKAction.moveByX(moveAmount, y: 0, duration: 0.5), SKAction.waitForDuration(0.5)]))并使健康栏(而不是框架)运行该操作。这样做会将健康栏从屏幕移开,使其看起来像是在下降。

关于碰撞问题,请查看this教程。如果这没有帮助,也许你可以找到其他人。我想帮助解决这个问题,但即使使用SpriteKit,碰撞检测也相当深入。我希望这有帮助。祝你好运!