Skip to content

Rodoro/Sea-Battle

Repository files navigation

Запуск программы

  1. Скачайте среду выполнения node.js
  2. Клонируйте git репозиторий на свое устройство
  3. Откройте консоль в корневой папке и напишите
npm i 
  1. Создайте файл .env и добавте поля со своими значениями
NEXTAUTH_SECRET= #Секрет, например любая комбинация символов
NEXTAUTH_URL=http://localhost:3000/
MONGO_URL= #Ссылка на mongoDB
  1. Запустите сервер разработки
npm run dev
# или
yarn dev
# или
pnpm dev
# или
bun dev

Откройте http://localhost:3000 в браузере, чтобы увидеть результат.

Структура данных

Game

  • id (Number): идентификатор игры
  • creator (String): создатель игры
  • size (Number): размер игры
  • rules (String): правила игры
  • edit (Boolean): возможность редактирования
  • ships (Array): массив кораблей
    • id (Number): идентификатор корабля
    • place (Number): местоположение корабля
    • prizeId (Number): идентификатор приза
  • users (Array): массив пользователей
    • name (String): имя пользователя
    • amount (Number): количество
    • shot (Array): массив выстрелов

Prize

  • id (Number): идентификатор приза
  • creator (String): создатель приза
  • title (String): название приза
  • description (String): описание приза
  • playedout (Boolean): флаг, указывающий, был ли приз вручен
  • playedout_name (String): имя участника, которому был вручен приз

User

  • name (String): имя пользователя
  • password (String): пароль пользователя
  • role (String): роль пользователя

Описание функциональных блоков

Регистрация и аутентификация пользователей

  • Форма регистрации и входа
  • Быстрое встраивание новых провайдеров, таких как google и тд
  • Управление правами доступа и аутентификация игроков

Игровое поле

  • Отображение состояния кораблей
  • Управление выстрелами по нажатию на ячейку поля
  • Проверка правильности ходов (т.е. нельзя стрелять в уже подбитые корабли)
  • Отображение результатов выстрела (попадание, промах, потопление корабля)

Управление состоянием

  • Хранение и обновление данных и состояний игры (например, расположение кораблей, состояние игровых полей)
  • Сохранение и загрузка игровых сессий

Графический интерфейс

  • Отображение игровых элементов и интерфейса
  • Адаптивный и удобный дизайн
  • Легко изменяемый

Скриншоты интерфейса

Форма входа

Изображение

Список призов

Изображение

Форма редактирование призов

Изображение

Игровое поле

Изображение

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •