Skip to content

PyQT5 проект для Яндекс Лицея 2022/2023

License

Notifications You must be signed in to change notification settings

K1rL3s/BlindTyping

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Тренажёр для печати «Слепопечать v0.1»

Приложение для тренировки скорости набора символов на клавиатуре

Функционал:

  • 11 собственных виджетов (7 основных окон, 2 окна-диалога, 2 qt-виджета)
  • Создание, редактирование и удаление кастомных уровней
  • Смена имени, уровня, фона
  • Сохранение и просмотр рекордов (имя/символы в секунду) по категориям
  • Возможность скрыть изображение клавиатуры и рук
  • Отображение текста и процент прохождения уровня "in real-time"
  • Отображение таймера с текущим затраченным временем на уровень

Начать Игру
Чтобы начать игру, достаточно нажать на "Играть" в главном меню, выбрать уровень и нажать "Вперёд".

Рекорды
Все рекорды представлены в меню рекордов. После прохождения уровня можно сохранить свой результат.

Уровни
В игре есть встроенные и кастомные уровни. Последние можно добавлять, изменять и редактировать в отдельном меню.

Запуск

Установить python версии 3.10+ (Тестировалось на версии 3.10.5)

Склонировать репозиторий и перейти в него:

git clone https://github.com/K1rL3s/BlindTyping.git
cd ./BlindTyping

Установить все библиотеки, перечисленные в requiremenets.txt файле с помощью (python -m pip install -r ./requirements или pip install -r requirements.txt)

Запустить игру с помощью команды python main.py

Первый запуск может быть долгим, так как идёт загрузка русских слов из сети

Описание модулей

  • Главное меню
    Кнопки переходов в меню настроек, выбора уровня и рекордов.

  • Меню настроек
    Смена имени игрока и фона игры.

  • Меню рекордов
    Таблица рекордов с выбором категорий.

  • Меню выбора уровня
    Выбор встроенных уровней и кнопка перехода в меню кастомных уровней.

  • Меню кастомных уровней
    Выбор кастомных уровней и кнопки перехода в меню Create-Update-Delete.

  • CUD Меню
    Создание/Изменение выбранного кастомного уровня.

  • Меню игры
    Игровое меню, где и происходит вся магия.

Другие модули

  • DisplayText
    Модуль для удобного отображения текущего текста

  • TypingFilter
    Не даёт пользователю ввести неверный текст

  • InfoConfirm
    Диалоговое окно для подтверждения действия

  • RecordConfirm
    Диалоговое окно для сохранения результата после уровня

Дальнейшие планы

  • Добавление кастомных фонов
  • Удаление и редактирование рекордов
  • Много, много другого...

Скриншоты

main_iwtjDycFBe main_EDJzWu6j0O main_vVVnvovtpa main_hyeEx1cRzG

Пояснительная часть

Тренажёр «Слепопечать v0.1» был создан Лесовым Кириллом в рамках Лицея Академии Яндекса (и для индивидуального проекта Лесового Кирилла и Набиева Идэля).
Идея для проекта была подана Максимом Казаку, учеником первого года ЛАЯ (на момент октября 2022). Изначально планировалась копия онлайн-игры "Клавогонки", но для облегчения задачи был выбран формат одиночного тренажёра.
Проект старался быть реализован модульно, то есть каждый модуль стремиться отвечать только за себя (автор также пытался использовать сигналы qt для связи между виджетами). Основные классы находятся в src/widgets, из них 7 меню, 2 окна-диалога и 2 вспомогательных виджета для игры.
Основной фреймворк - PyQt5. Для базы данных (сохранение рекордов и кастомных уровней) использовалась встроенная библиотека sqlite3. Для запуска необходимо установить все библиотеки из requirements.txt

About

PyQT5 проект для Яндекс Лицея 2022/2023

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages