Skip to content

Konopatkin-OV/MSU_Python_Project_Prac_2020

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sokoban

Логическая 2d игра-головоломка, в которой игрок передвигает ящики по лабиринту, показанному сверху, с целью поставить все ящики на заданные конечные позиции. Только один ящик может быть передвинут за раз, причём герой игры может только толкать ящики, но не тянуть их (Классическая версия). Перемещение с помощью W,A,S,D, хватать/отпускать ящик с помощью E. Игрок также может создавать собственные уровни.

Настройки

Чтобы изменить клавиши управления, Настройки -> Управление, выбрать кнопку для изменения, нажать на нее, затем нажать клавишу, на которую следует поменять.

Чтобы изменить режим игры, Настройки -> Режим, далее нажать на одну из двух кнопок режима: Классика, Легко. В режиме Легко игрок может двигать ящики в любую доступную сторону.

Редактор уровней

В редакторе уровней можно перетаскивать изображения объектов (пустая клетка, коробка, клетка для коробки, игрок) на поле, а также убирать их с поля.

В окошке в верху окна можно ввести название созданного уровня.

Если уровень выстроен правильно, при нажатии на соответствующую кнопку уровень сохранится, а редактор вернется в исходное состояние.

Если же этого не происходит, то не выполнено одно из следующих условий:

  1. На поле ровно один игрок;
  2. На поле имеется хотя бы одна коробка;
  3. Число коробок соответствует числу мест для коробок;
  4. Хотя бы одна коробка находится не на месте.

Это выглядит как-то так:

Иллюстрация к проекту

Установка

Для создания python wheel и документации достаточно написать

ninja wheel

и в папке dist появится wheel проекта, а в _build/html документация.

ninja wheel_clear

также убирает генераты wheel, а

ninja clear

кроме них также стирает документацию.

В нормальных коммитах в папке dist уже должен лежать готовый wheel для текущего состояния проекта, его можно установить командой:

pip install [path_to_project]\dist\Sokoban-0.1-py3-none-any.whl

Для запуска приложения, можно после установки wheel запустить модуль Sokoban командой

python -m Sokoban

Есть немножко юнит-тестов

Их можно выполнить, импортировав модуль Sokoban.tests

Участники:

  1. Конопаткин Олег (524 группа)
  2. Коробова Екатерина (524 группа)
  3. Некрасова Мария (511 группа)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published