6 Commits

Author SHA1 Message Date
aevgarik
770d06b37b feat: деплой на GitHub Pages + обновлён README
Some checks failed
Deploy to GitHub Pages / build (push) Has been cancelled
Deploy to GitHub Pages / deploy (push) Has been cancelled
- GitHub Actions workflow для автоматического деплоя
- Base path /colorline98/ для GitHub Pages
- Обновлён README с:
  - Ссылкой на игру
  - Инструкциями по разработке
  - Описанием правил и системы очков

Refs: [GAM-10](/GAM/issues/GAM-10)

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-22 22:02:34 +03:00
aevgarik
4e89c60e34 test: добавлены unit-тесты для игровой логики
- Vitest + happy-dom для тестирования
- 17 тестов для Board, PathFinder, LineChecker:
  - Board: создание поля, генерация цветов, поиск пустых клеток
  - PathFinder: поиск пути на пустом поле, недоступность занятых клеток, отсутствие пути через стену, ортогональность
  - LineChecker: горизонтали, вертикали, диагонали, линии <5, линии 7, пересекающиеся линии

Refs: [GAM-10](/GAM/issues/GAM-10)

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-22 21:56:32 +03:00
aevgarik
2bdab2972e feat(ui): полировка - адаптивный дизайн, рекорды, touch events
- Touch events для мобильных устройств
- Таблица рекордов (localStorage, top-10)
  - Ввод имени при новом рекорде
  - Отображение рейтинга с датами
- CSS-переходы и анимации:
  - fadeIn для overlays
  - slideIn для модальных окон
  - hover-эффекты для кнопок
- Адаптивный дизайн:
  - Масштабирование canvas под экран
  - Media queries для мобильных
  - Оптимизация UI для touch

Refs: [GAM-10](/GAM/issues/GAM-10)

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-22 21:54:38 +03:00
aevgarik
2f0d36352c feat(ui): реализация Canvas-рендеринга и UI для ColorLine98
- Canvas 2D компонент GameBoard.vue:
  - Отрисовка поля 9×9 с сеткой
  - Отрисовка шаров (7 цветов с градиентами)
  - Клик-выделение шара (оранжевая обводка)
  - Клик-перемещение в целевую клетку
  - Панель очков (текущий счёт)
  - Превью следующих 3 шаров (цветные круги)
  - Кнопка "Новая игра"
  - Экран Game Over с финальным счётом

- Обновлён App.vue:
  - Заголовок ColorLine98
  - Градиентный фон
  - Центрированный layout

Refs: [GAM-9](/GAM/issues/GAM-9)

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-22 21:50:46 +03:00
aevgarik
7c987be2c1 feat(game): реализация ядра игровой логики ColorLine98
- Добавлен класс Game для управления состоянием игры
- Реализованы: генерация шаров, превью следующих 3 шаров
- Подсчёт очков по таблице из GDD (5→10, 6→12, 7→18, 8→28, 9+→формула)
- Комбо-множитель x1.5 за каждую дополнительную линию
- Условие окончания игры (поле заполнено)
- Исправлены type imports для verbatimModuleSyntax

Refs: [GAM-8](/GAM/issues/GAM-8)

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-22 21:48:10 +03:00
aevgarik
463d09bbc2 feat: initialize ColorLine98 project with Vue 3 + Vite + TypeScript
- Scaffold Vue 3 + Vite + TypeScript project
- Add ESLint + Prettier configuration
- Create project structure: src/game/, src/components/, src/assets/
- Implement core game modules: Board, PathFinder (BFS), LineChecker
- Add README with project description and setup instructions

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-22 18:07:30 +03:00