Собственно делаю сапера на javascript, возник вопрос, как сделать так, чтобы при нажатии на одну клетку и если она пустая, открывались рядом стоящие пустые клетки? Желательно в подробностях
писал сапёр в детстве, было так: поле n на m заполнено нулями. генерирую мину прибавляя к клетке 8-ку. прибавляю единички в квадрате с миной, чтобы вышло так: 1_1_1 1_9_1 1_1_1 и так с каждой. за мину считалось всё, что больше 8-ми. рядом стоящие мины таким образом соответственно отмечались: 1_2_2__1 1_9_10_1 1_2_2__1 открытие клетки выглядело так: показать клетку. если клетка больше 8-ми - бум. если клетка имеет цифру - показать цифру. если клетка пуста - применить открытие ко всем соседям по очереди. не совсем рационально, но результат удовлетворял, да и мины при этом не взрывались, будучи окружёнными цифрами. генерировалось поле при первом клике, так, чтобы мина не попалась первой - можешь проверить на виндовом, думаю там так-же происходит.