Приложение "Лабиринт" - анимированное создание лабиринта по алгоритму Олдоса-Бродера
с возможностью его прохождения (максимально 2 человека).
По умолчанию приложение имеет три режима сложности лабиринта:
1. Легкий -
columns: 21,
rows: 21,
size: 20,
countTractors: 2,
2. Средний -
columns: 31,
rows: 31,
size: 15,
countTractors: 4
3. Тяжелый -
columns: 51,
rows: 51,
size: 10,
countTractors: 10,
Где columns - количество столбцов,
rows - количество строк,
size - размер ячейки и игрока,
countTractors - количество "тракторов" (ластиков), которые создают лабиринт.
Так же есть возможность выбора количества игроков:
1. Один игрок -
onePlayer: 1
2. Два игрока
twoPlayer: 2
Все эти настройки можно поменять в файле src/js/settings.js.
Кнопки для управления игровыми объектами:
1. Для первого игрока - стрелки на клавиатуре,
2. Для второго игрока - кнопки wdsa.
Данные кнопки можно переназначить в файле src/js/objects/Player.js
Поля, которые отвечают за работу и состояние приложения:
{
columns: number - количество столбцов,
rows: number - количество строк,
matrix: [[Array], [Array]] - матрица поля,
size: number - размер ячейки / игрока,
countCellsForVisit: number - количество очищенных ячеек необходимых для окончания генерации лабирината,
countPlayers: number - количество игроков,
currentStatus: string - текущий статус приложения,
players: [Object, Object] | null - игроки,
tractors: [Object, Object] | null - "тракторы",
unvisitedCells: number - количество не посещенные ячейки,
unvisitedCellsProcent: number - количество не посещенных ячеек в процентах,
winner: Object | null - игрок, который победил
}
ВАЖНО:
1. Количество столбцов и строк должно быть нечетным.
2. При увеличении количества "тракторов", качество создаваемых лабиринтов уменьшается (лабиринты создаются похожими),
но при уменьшении количества "тракторов" время генерации увеличивается.
Пример:
https://heupoh.github.io/maze/index.html
HeuPoH/maze
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|