Данный репозиторий содержит игру по мотивам игры в кости. Цель оригинальной игры — бросать кости, пока все они не покажут одинаковое число. Помимо традиционной игры, эта реализация предоставляет игроку новый режим, направленный на тренировку памяти.
Два режима игры:
- Simple mode
- Бросайте кости, пока все они не покажут одинаковое число.
- Нажатие на кубик фиксирует или разблокирует его значение
- Нажатие на кнопку перебрасывает незафиксированные кубики
- Победой считается
- Classic mode
- Запомните все серии кубиков за ограниченное время и затем повторите конфигурацию
- Серия кубиков - это последовательность из всех кубиков на игровом поле с одинаковым значением
- При нажатии на кубик начинается серия кубиков с соответствующим нажатому кубику значением
- Если при нажатии на кубик с другим значением еще не закрыта серия кубиков, серия считается прерванной, а уровень проваленным
- Чтобы пройти уровень, необходимо закрыть все серии кубиков. Например, на уровне 6 кубиков: два со значением "7", три со значением "5" и один со значением "2". Пусть игрок при первом нажатии попал на кубик со значением "5". Значит следующим нажатием нужно снова попасть на кубик со значением "5". Таким образом серия кубиков будет закрыта
- Серия с одним кубиком закроется сразу при нажатии на него. - Серии можно закрывать в любом порядке
- Если серия открыта, ее нужно довести до конца
- С каждым уровнем количество кубиков увеличивается
- С каждым уровнем возможный диапазон значений увеличивается
- Зарегистрируйся и сохраняй прогресс игры, либо играй без сохранения
- Визуальная и звуковая обратная связь с анимациями и звуковыми эффектами.
- Сохранение и получение данных игры с помощью Firebase.
- Выбор языка, кастомизация
- Адаптивный интерфейс
Для установки зависимостей используйте npm
npm installИли yarn
yarn installПроект использует несколько сторонних библиотек для своей работы. Вот список основных зависимостей:
- classnames: Утилита для условного объединения classNames.
- firebase: Firebase SDK для бэкенд-сервисов, таких как аутентификация, база данных и др.
- firebase-functions: SDK для развертывания серверного кода на Firebase Functions.
- nanoid: Маленький, безопасный генератор уникальных строковых идентификаторов.
- react: Библиотека JavaScript для создания пользовательских интерфейсов.
- react-confetti: Компонент React для анимаций конфетти.
- react-dom: Точка входа для рендеринга React в DOM.
- react-use: Набор необходимых хуков React.
- styled-components: Библиотека для стилизации компонентов React с использованием шаблонных литералов.
- use-sound: Хук React для воспроизведения звуковых эффектов.