Je suis en train d'apprendre le JavaScript en refondant des jeux à partir de zéro, et mon projet actuel est Minesweeper. En essayant de créer la fonction récursive qui révèle les espaces entourant un espace cliqué, je me suis heurté à la question de se terminer trop tôt pour apparemment pas de raison.Récursivité se terminant trop tôt dans la fonction Javascript
Vous pouvez lire tout le code (jusqu'à présent) ici: pastebin.com
ou consultez simplement la fonction autonome ci-dessous:
function showAdjacent(block) {
if(block.minesNextTo != 0)
return;
console.log(block.row+','+block.col);
block.uncovered = true;
block.hidden = false;
console.log(block.adjacentBlocks.length);
for(i = 0; i < block.adjacentBlocks.length; i++)
block.adjacentBlocks[i].hidden = false;
for(i = 0; i < block.adjacentBlocks.length; i++) {
if(!block.adjacentBlocks[i].uncovered)
showAdjacent(block.adjacentBlocks[i]);
}
}
(et oui je sais que cette fonction ne devrait pas être déclenchée que si un bloc a zéro mines à côté, cela est tout simplement plus facile à des fins de test)
Merci beaucoup! Je suis en train de rire à quel point c'était stupide d'avoir commis une erreur et de ne pas avoir été détecté pendant si longtemps! –