Дело было вечером, делать было нечего (с). Ну не то чтобы совсем нечего, но выдалась свободное немножко время, поэтому для того чтобы не забыть (да уж чего там, и вспомнить уже) окончательно Python, решил сделать маленький движёк для текстовых квестов с выполняющихся в консоли (квест в консоли).
Сначала определимся что где и как:
Локации будем описывать в формате json
Локации будем складывать в папку locations. Имена файлов — номер локации.
В ходе квеста можно «сохраняться», чтобы была возможность продолжить квест
Сохранения будем хранить в папке saves
Все классы храним в папке classes
В результате у меня получилась такая структура папок и файлов:
Первым делом нарисую минимальный json стартовой локации:
1
2
3
4
5
6
7
8
9
10
{
"title":"Стартовая страница",
"description":"Стартовая страница описание",
"available_locations":{
"left":1,
"right":2,
"forward":3,
"back":4
}
}
Т.е. начинаем на стартовой локации (0), доступны переходы в локации 1,2,3 и 4.
Далее реализуем класс игрока, с реализацией функционала сохранения и стадии прохождения квеста:
Уведомление: Квест в консоли на Python. Часть 2