定制 antonizsar13/minesweeper 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

antonizsar13/minesweeper

Composer 安装命令:

composer create-project antonizsar13/minesweeper

包简介

README 文档

README

Описание проекта

Проект включает разработку игры "Сапер" (Minesweeper) с использованием реляционной базы данных для сохранения результатов игр. Игра реализована на языке PHP с использованием базы данных SQLite. Пользователям предоставляется возможность просматривать историю игр и воспроизводить ранее сыгранные партии.

Цель игры - открыть все ячейки, не содержащие мины. Если игрок открывает ячейку с миной, он проигрывает. Если ячейка не заминирована, в ней отображается количество мин, соседствующих с этой ячейкой.

Правила игры

  • Игрок открывает ячейки, избегая мин. Открыв мину, игрок проигрывает.
  • Если мины нет, ячейка отображает число соседних заминированных ячеек.
  • Если рядом с открытой ячейкой нет мин, открывается область незаминированных ячеек до тех пор, пока не встретится ячейка с цифрой.

Игровой процесс

Начало игры

Перед началом партии пользователю будет предложено ввести следующие параметры:

  1. Размер поля: Укажите размер игрового поля в формате ширина высота (например, 10 10 для поля 10x10).
  2. Количество мин: Укажите общее количество мин на поле (например, 20).

Ввод координат

Игрок открывает ячейки, вводя координаты в формате X Y, где:

  • X — номер столбца (от 1 до ширины поля).
  • Y — номер строки (от 1 до высоты поля).

Пример ввода координат для открытия ячейки на позиции (3, 5):

3 5

Игровые действия

  • Открытие ячейки: Введите координаты ячейки, чтобы открыть её.
  • Проигрыш: Если игрок открыл ячейку с миной, игра заканчивается, и выводится сообщение о проигрыше.
  • Выигрыш: Игра завершается, когда все ячейки без мин открыты.

Просмотр сохраненных игр

После завершения игры пользователю будет предложено:

  • Просмотреть список сохраненных игр, в котором будут указаны дата игры, имя игрока и исход.
  • Повторить ранее сыгранную партию, вводя номер соответствующей игры из списка.

Требования

  • Размер поля и количество мин: Вводятся пользователем перед началом игры.
  • Сохранение данных: Вся информация об играх и ходах сохраняется в базе данных SQLite.
  • Хранение данных:
    • Дата игры
    • Имя игрока
    • Размер поля и количество мин
    • Расположение мин
    • Исход игры
    • Запись ходов в формате: номер хода | координаты ячейки | результат (мимо/взорвался/выиграл)
  • Режимы игры:
    • Новая игра
    • Просмотр списка сохраненных игр
    • Повтор сохраненной партии (воспроизведение ходов)

Окружение и требования для запуска

  1. PHP:

    • Версия: 7.4 или выше.
    • Настройки в php.ini:
      • Включите SQLite (extension=sqlite3).
      • Убедитесь, что настройки отображения ошибок (display_errors) включены в режиме разработки.
  2. SQLite:

    • Версия: 3.x.
    • Проверьте наличие прав записи в каталоге, где находятся файлы баз данных.
  3. Composer:

    • Composer должен быть установлен глобально.
    • Используйте команду composer для управления зависимостями.
    • Для установки Composer следуйте официальной документации.

Игровой процесс

Начало игры

Перед началом партии пользователю будет предложено ввести следующие параметры:

  1. Размер поля: Укажите размер игрового квадратного поля в формате размер (например, 10 для поля 10x10).
  2. Количество мин: Укажите общее количество мин на поле (например, 20).

Ввод координат

Игрок открывает ячейки, вводя координаты в формате X, Y, где:

  • X — номер столбца (от 1 до ширины поля).
  • Y — номер строки (от 1 до высоты поля).

Пример ввода координат для открытия ячейки на позиции (3, 5):

3, 5

Игровые действия

  • Открытие ячейки: Введите координаты ячейки, чтобы открыть её.
  • Проигрыш: Если игрок открыл ячейку с миной, игра заканчивается, и выводится сообщение о проигрыше.
  • Выигрыш: Игра завершается, когда все ячейки без мин открыты.

Установка и запуск проекта

  1. Склонируйте репозиторий:

    git clone https://github.com/Antonizsar13/Minesweeper
  2. Перейдите в каталог проекта:

    cd \...\minesweeper
  3. Установите зависимости через Composer:

    composer install
  4. Запуск игры: Выполните команду для запуска игры:

    php bin/minesweeper.php
    • Или если ваш пакет опубликован на Packagist, установите его глобально:
    composer global require antonizsar13/minesweeper
    • И затем выполните команду:
    minesweeper
    • игра поддеживает дургие режимы:
      minesweeper -h

Примечания

Ссылки на пакеты

antonizsar13/minesweeper 适用场景与选型建议

antonizsar13/minesweeper 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 9 次下载、GitHub Stars 达 0, 最近一次更新时间为 2024 年 10 月 05 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 antonizsar13/minesweeper 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 antonizsar13/minesweeper 我们能提供哪些服务?
定制开发 / 二次开发

基于 antonizsar13/minesweeper 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 9
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 22
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-10-05