modrakir / cold-hot-game
Console implementation of Cold-Hot game
Installs: 3
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Type:project
pkg:composer/modrakir/cold-hot-game
Requires
- php: ^7.4 || ^8.0
- wp-cli/php-cli-tools: ^0.12
Requires (Dev)
README
Описание проекта
Проект включает разработку игры "Холодно-Горячо" (Cold-Hot) с использованием реляционной базы данных для сохранения результатов игр. Игра реализована на языке PHP с использованием базы данных SQLite. Пользователям предоставляется возможность просматривать историю игр и воспроизводить ранее сыгранные партии.
Цель игры - угадать трехзначное число с уникальными цифрами, загаданное компьютером. После каждой попытки компьютер предоставляет игроку подсказки, которые помогают сузить круг возможных чисел.
Правила игры
- Компьютер загадывает случайное трехзначное число без повторяющихся цифр (первая цифра не может быть 0)
- Игрок вводит свои предположения в виде трехзначных чисел
- После каждой попытки выдаются подсказки трех типов:
- "Холодно" - ни одна цифра не отгадана
- "Тепло" - одна цифра отгадана, но не отгадана ее позиция
- "Горячо" - одна цифра и ее позиция отгадана
- На каждом ходе компьютер выдает три подсказки, отсортированные в алфавитном порядке
- Игра продолжается до угадывания числа
Требования
- Формат чисел: Трехзначные числа с уникальными цифрами, первая цифра не 0
- Подсказки: Всегда три подсказки, отсортированные в алфавитном порядке
- Сохранение данных: Вся информация об играх и попытках сохраняется в базе данных SQLite
- Хранение данных:
- Дата игры
- Имя игрока
- Загаданное компьютером число
- Исход игры (угадал/не угадал)
- Запись попыток в формате:
номер попытки | предложенное число | результат
- Режимы игры:
- Новая игра
- Вывод списка всех сохраненных партий
- Повтор любой сохраненной партии (воспроизведение всех ходов)
Окружение и требования для запуска
-
PHP:
- Версия: 7.4 или выше.
- Настройки в
php.ini
:- Включите SQLite (
extension=sqlite3
). - Убедитесь, что настройки отображения ошибок (
display_errors
) включены в режиме разработки.
- Включите SQLite (
-
SQLite:
- Версия: 3.x.
- Проверьте наличие прав записи в каталоге, где находятся файлы баз данных.
-
Composer:
- Composer должен быть установлен глобально.
- Используйте команду
composer
для управления зависимостями. - Для установки Composer следуйте официальной документации.
Установка и запуск проекта
-
Склонируйте репозиторий:
git clone https://github.com/your-username/cold-hot-game
-
Перейдите в каталог проекта:
cd cold-hot-game/Task03
-
Установите зависимости через Composer:
composer install
-
Запуск игры: Выполните команду для запуска игры:
php bin/cold-hot
- Или если ваш пакет опубликован на Packagist, установите его глобально:
composer global require your-username/cold-hot-game
- И затем выполните команду:
cold-hot
Примечания
-
Проверьте права на запись в каталог с базой данных SQLite.
-
В текущей версии игра пока не сохраняется в базе данных (реализация в процессе)
-
Для выхода из игры введите
quit
илиexit
-
Дополнительную информацию можно найти в документации PHP, SQLite и Composer: