【发布时间】:2013-11-12 13:53:35
【问题描述】:
我对 JavaScript 很陌生。我正在做的任务是一个使用 boxbox 作为物理模拟器的简单游戏。 无论如何,当玩家实体触摸它们时,我有 3 个会改变颜色的方块。我想显示一个简单的结果消息(“只有一个?再试一次!”之类的东西)。但是,我不知道颜色值是否可以用作条件。这是我想出的:
function score() {
if (gold1.color == "gold" || gold2.color == "gold" || gold3.color == "gold") {world.createEntity(result, {
shape: "square",
x:9,
y:4,
width: 3,
height: 2,
image: "only1.png",
imageStretchToFit: true, }
}
else if (gold1.color == "gold" && gold2.color == "gold" || gold2.color == "gold" && gold3.color == "gold" || gold1.color == "gold" && gold3.color == "gold") {world.createEntity(result, {
shape: "square",
width: 3,
height: 2,
x:9,
y:4,
image: "only2.png",
imageStretchToFit: true, }
}
else (gold1.color == "gold" && gold2.color == "gold" && gold3.color == "gold") {world.createEntity(result, {
shape: "square",
width: 3,
height: 2,
x:9,
y:4,
image: "only3.png",
imageStretchToFit: true, }
}
}
我不确定这是完全错误的方法还是只是语法错误。请帮忙。
谢谢。
【问题讨论】:
-
你遇到了什么错误?
-
我没有收到任何错误。游戏加载到画布中,当我添加这个函数时,它根本加载不出来。
-
gold1、gold2、gold3分别是什么对象?
-
它们都是同一个变量的实例:var block2 = { name: "block2", shape: "square", color: "orange", width: 1, height: 1, density: 20, onImpact: function (entity, force) { if (entity.name() === "player") { this.color("gold"); } } };
-
你是说你的控制台没有任何错误?
标签: javascript if-statement colors conditional-statements