所以我在前一段时间制作了这个代码,然后它才起作用,但现在却没有。谁能告诉我什么是错的?代码的作用很简单:我从一个辐射游戏中获取一个武器伤害值(如果FO1 / FO2 / FOT,则首先平均值),告诉它它来自哪个游戏,并输出它造成的伤害程度d20现代。我不知道解释它的作用是否有帮助,但我希望它清楚。
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";
}
}
答案 0 :(得分:0)
您的问题似乎是if条件中的错误语法。
首先,你不能说if (damage >= 1 && < 11)
,你需要在每个条件中指定变量,即if (damage >= 1 && damage < 11)
。
其次,“或”运算符不是or
,而是||
所以你需要if (systemSelect=="FO" || systemSelect=="F2" || systemSelect=="FT")
解决这些问题,然后再试一次 - 祝你好运:)