我的代码曾经有效,但赢得了't现在

My code used to work but won't now

本文关键字:现在 曾经 代码 有效 我的      更新时间:2023-09-26

所以我不久前做了这个代码,当时它有效,但现在不行了。有人能告诉我怎么了吗?代码的作用很简单:我从辐射游戏中获取武器伤害值(如果是FO1/FO2/FOT,则首先取平均值),告诉它来自什么游戏,然后它输出它在d20 Modern中造成的伤害。我不知道解释它的作用是否有帮助,但我希望它是清楚的。

var systemSelect = prompt("What system are you using? FO, F2, FT, F3, or FNV?")
var damage = parseInt(prompt("How much damage does the weapon do?"))
if (systemSelect === "FO" or "F2" or "FT") {
    if (damage >= 1 && < 11) {
        damage = "2d4";
    } else if (damage >= 11 && < 26) {
        damage = "2d6";
    } else if (damage >= 26 && < 46) {
        damage = "2d8";
    } else if (damage >= 46 && < 61) {
        damage = "2d10";
    } else if (damage >= 61 && < 81) {
        damage = "2d12";
    } else if (damage >= 81 && < 101) {
        damage = "4d6";
    } else {
        damage = "2d20";
    }
}
if (systemSelect === "F3" or "FNV") {
    if (damage >= 1 && < 8) {
        damage = "2d4";
    } else if (damage >= 8 && < 15) {
        damage = "2d6";
    } else if (damage >= 15 && < 25) {
        damage = "2d8";
    } else if (damage >= 25 && < 37) {
        damage = "2d10";
    } else if (damage >= 37 && < 61) {
        damage = "2d12";
    } else if (damage >= 61 && < 81) {
        damage = "4d6";
    } else {
        damage = "2d20";
    }
}

您的问题似乎是if条件中的语法不好。

首先,不能说if (damage >= 1 && < 11),需要在每个条件中指定变量,即if (damage >= 1 && damage < 11)

其次,"或"运算符不是or,而是||,因此您需要if (systemSelect=="FO" || systemSelect=="F2" || systemSelect=="FT")

修复这些问题并重试-祝你好运:)