Есть задача написать игру морской бой на php между двумя удаленными игроками. Я понимаю, что это делается с помощью матрицы. Конкретно я не могу понять как расставлять карабли.
Если карабль многопалубный, то линия матрицы выстраивается в одну линию. При этом карабли не должны соприкасаться друг с другом.
Подскажите пожалуйста на словах (без ссылок на примеры и скрипты), как реализовать расстановку караблей.
Вокруг корабля есть зона радиусом в одну точку, куда нельзя ставить корабли. Эту зону несложно рассчитать и добавить в матрицу расстановки, как зону с запрещенными координатами.
для начала нужно вычислить массив клеток, пригодных для строительства в данный момент, это все клетки кроме: застроенных и 8 клеток вокруг любой застроенной.
допустим интерфейс предполагает перетаскивание не построенных кораблей на доску, пользователь может ухватиться за любой квадратик. исходя из того массива и точки бросания нужно рассчитать полностью ли корабль впишется в массив пригодных клеток