swift - 如果(变量 == 变量 + 5)

标签 swift if-statement

我试图在我的场景中显示特定的奖牌,这取决于你的高分是基于关卡的目标。

// 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")
    }

目前我得到高分并将其与目标进行比较 - 如果低于目标,则显示无奖牌图像。如果等于目标,则获得铜牌,如果高分比目标高 5 分,则获得银牌,如果高分比目标高 10 分,则获得金牌。

在这上面尝试了一段时间,尝试了所有不同的点点滴滴,出于某种原因,它在上面的设置中工作,但是当我写的时候

    // Get Medal Colour
    if levelHighscore == goalScore+5 {
        scoreMedal = SKSpriteNode(imageNamed: "silverMedal")
    } 

它什么也没显示。

最佳答案

根据您的喜好,我发现这更容易阅读和理解。

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")
}

但是,@rmaddy 的回答非常好。

关于swift - 如果(变量 == 变量 + 5),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44292202/

相关文章:

ios - 无法在子类 UITextField 中设置属性占位符的文本颜色

JavaScript - 循环内的 If 语句出现问题

swift - if let 可以在 Swift 3.1 中以逗号分隔吗?

node.js - 类型错误 : Cannot read property 'save' of null

ios - clang : error: linker command failed with exit code 1 (use -v to see invocation); "__TMaC15PasswordManager14ViewController", 引用自:

ios - 专门为 VC 函数创建一个 swift 文件

swift - 使用 Enum 和 Struct 进行静态和动态截面建模 - Swift 4

java - 如何将所需的长度设置为数组中的整数?

R 循环 : Adding a column to a table if does not already exist

jquery - 在 jQuery if 语句中使用 OR 运算符