我现在已经尝试了几个JS库,并且一直在努力使碰撞检测起作用。它似乎有时只能工作并产生奇怪的结果!
最简单的示例是下面的Kontra.js示例(codepen https://codepen.io/yellowsmiley/pen/oJzyrZ/)。它会创建几个精灵,并在每次游戏循环更新时检查它们是否全部发生冲突。
for (let i = 0; i < sprites.length; i++) {
for (let j = 0; j < sprites.length; j++) {
let sprite1 = sprites[i];
let sprite2 = sprites[j];
if (isCollide(sprite1, sprite2)) {
sprite1.color = "green";
sprite2.color = "green";
} else {
sprite1.color = "red";
sprite2.color = "red";
}
}
}
这让我发疯了,我似乎找不到任何在线帮助!请帮忙!
答案 0 :(得分:0)
我很困惑,但问题很简单:您会不断将与其他物体碰撞的精灵的颜色重置为红色。只有最后一个精灵保持绿色,因为在积极的精灵之后没有消极的测试。 codepen.io/anon/pen/marjov?editors=0010 –克里斯·G 12月18日在12:44
你是美丽的天才克里斯!谢谢!