Skip to content

HeuPoH/maze

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Приложение "Лабиринт" - анимированное создание лабиринта по алгоритму Олдоса-Бродера
с возможностью его прохождения (максимально 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

About

Генерация лабиринта с дальнейшем прохождением

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages