2014-09-20 91 views
-4

所以我在前一段时间创建了这段代码,然后它就起作用了,但现在它不会。有人能告诉我什么是错的吗?代码的作用很简单:我从Fallout游戏中获得一个武器伤害值(如果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"; 
    } 
} 
+3

请点击这里包括的,而不是链接到相关的代码外部网站。如果外部网站改变或消失,这个问题就会失去背景并变得毫无用处。 – 2014-09-20 16:21:47

+1

您需要在问题中包含代码的相关部分,并努力确定它的哪一部分不再工作。 – 2014-09-20 16:21:47

+0

您应该编辑此问题上的“javascript”标记,因为这似乎是其他语言。 – 2014-09-20 16:28:46

回答

0

你的问题似乎是在你的if条件语法不好。

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

其次,“或”算不算or,这是||所以你需要if (systemSelect=="FO" || systemSelect=="F2" || systemSelect=="FT")

解决这些问题,然后再试一次 - 好运:)

相关问题