From fd8c091872710b73964b745cd3f8cc78e8222490 Mon Sep 17 00:00:00 2001 From: Damianson Pochette Date: Thu, 11 Jun 2026 15:52:55 +0500 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=BA=D1=83=D0=BC=D0=B5=D0=BD?= =?UTF-8?q?=D1=82=D0=B0=D1=86=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 23 +++++++++++++++++++++-- docs/classes.md | 26 ++++++++++++++++++++++++++ docs/methods.md | 29 +++++++++++++++++++++++++++++ docs/user_manual.md | 9 +++++++++ 4 files changed, 85 insertions(+), 2 deletions(-) create mode 100644 docs/classes.md create mode 100644 docs/methods.md create mode 100644 docs/user_manual.md diff --git a/README.md b/README.md index a0b0c75..0d3870b 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,22 @@ -# ASCII-G +# ASCII-G - The Cookies Edition -A Super Cool Initial (not so) Interesting Game. Simple and turn-based. \ No newline at end of file +Текстовый квест в терминале. Игрок исследует подземный лабиринт, решает головоломки, открывает сундуки, взаимодействует с NPC и участвует в боях. + +## Возможности + +- 5 ASCII-локаций +- головоломки +- сундуки +- инвентарь +- зелья лечения +- оружие +- NPC и диалоги +- боевая система +- сохранение и загрузка +- логирование событий + +## Сборка + +```bash +make run +``` \ No newline at end of file diff --git a/docs/classes.md b/docs/classes.md new file mode 100644 index 0000000..5ebc503 --- /dev/null +++ b/docs/classes.md @@ -0,0 +1,26 @@ +# Документация классов + +## Game + +Основной класс игры. Управляет игровым циклом, загрузкой данных, обработкой команд игрока, перемещением, взаимодействием с сундуками, NPC и боевой системой. + +### Поля + +| Поле | Тип | Описание | +|---|---|---| +| player | Player | Игрок | +| locations | vector | Список игровых локаций | +| itemDatabase | vector | База предметов | +| isRunning | bool | Флаг работы игры | + +### Методы + +| Метод | Описание | +|---|---| +| run() | Запускает игру | +| loadLocations() | Загружает локации из файлов | +| loadItems() | Загружает предметы | +| processCommand() | Обрабатывает команды игрока | +| movePlayer() | Перемещает игрока | +| openChest() | Открывает сундук | +| startCombat() | Запускает бой | \ No newline at end of file diff --git a/docs/methods.md b/docs/methods.md new file mode 100644 index 0000000..60ef5f9 --- /dev/null +++ b/docs/methods.md @@ -0,0 +1,29 @@ +# Описание методов + +## Game::movePlayer(int dx, int dy) + +Перемещает игрока на указанное смещение. + +### Входные данные + +| Параметр | Тип | Описание | +|---|---|---| +| dx | int | Смещение по X | +| dy | int | Смещение по Y | + +### Возвращаемое значение + +Метод ничего не возвращает. + +--- + +## Player::usePotion(int itemId, const vector& itemDatabase) + +Использует зелье из инвентаря игрока. + +### Входные данные + +| Параметр | Тип | Описание | +|---|---|---| +| itemId | int | ID предмета | +| itemDatabase | vector | База всех предметов | \ No newline at end of file diff --git a/docs/user_manual.md b/docs/user_manual.md new file mode 100644 index 0000000..4ed0690 --- /dev/null +++ b/docs/user_manual.md @@ -0,0 +1,9 @@ +# Инструкция пользователя + +## Запуск игры + +### Windows / Linux + +```bash +make run +``` \ No newline at end of file