我一直在努力創造自己的掃雷遊戲(爲了好玩)幾個月了。只有我真正被阻止的事情是如何使遞歸函數(洪水填充)填補遊戲中的空白區域。Javascript flood-fill功能只能部分工作[掃雷]
洪水填充只能部分工作。它不會擴展到任何點擊節點的右側或底部節點。
FloodFill -part:
function floodFill(node) {
if (node < 0) {return};
if (document.getElementById("cell" + node).style.backgroundColor == "white") {return};
if (document.getElementById("cell" + node).classList.contains("nearby")) {return};
document.getElementById("cell" + node).style.backgroundColor = "white";
floodFill(node -= 1);
floodFill(node += 1);
floodFill(node -= 16);
floodFill(node += 16);
return
};
floodFill(here);
的 「這裏」 是指點擊節點。網格的大小是16,所以底部節點是當前節點+ 16.
這個小遊戲 - 項目對我來說意義重大,所以任何幫助都非常感謝。
我有同樣的問題。我仍然無法解決它。 Thx詢問。 –