Luk*_*ich 0 if-statement swift
我试图在我的场景中显示某枚奖牌,具体取决于你的高分是基于关卡的目标.
// Get Medal Colour
if levelHighscore < goalScore {
scoreMedal = SKSpriteNode(imageNamed: "noMedal")
} else if levelHighscore == goalScore {
scoreMedal = SKSpriteNode(imageNamed: "bronzeMedal")
} else if levelHighscore > goalScore {
scoreMedal = SKSpriteNode(imageNamed: "silverMedal")
}
Run Code Online (Sandbox Code Playgroud)
目前我获得高分并将其与目标进行比较 - 如果它低于目标显示noMedal图像.如果它等于目标显示铜牌,如果高分为5分,则目标显示为银牌,如果高分为10分,则高出目标显示为金牌.
在这一段时间尝试了所有不同的位和bobs,由于某种原因它在上面的设置工作,但当我写
// Get Medal Colour
if levelHighscore == goalScore+5 {
scoreMedal = SKSpriteNode(imageNamed: "silverMedal")
}
Run Code Online (Sandbox Code Playgroud)
它什么都没显示.
根据您的口味,我发现这更容易阅读和理解.
switch levelHighscore - goalScore {
case 0 ..< 5: scoreMedal = SKSpriteNode(imageNamed: "bronzeMedal")
case 5 ..< 10: scoreMedal = SKSpriteNode(imageNamed: "silverMedal")
case 10 ... .max: scoreMedal = SKSpriteNode(imageNamed: "goldMedal")
default: scoreMedal = SKSpriteNode(imageNamed: "noMedal")
}
Run Code Online (Sandbox Code Playgroud)
但是,@ rmaddy的回答非常好.
| 归档时间: |
|
| 查看次数: |
96 次 |
| 最近记录: |