aevgarik 770d06b37b
Some checks failed
Deploy to GitHub Pages / build (push) Has been cancelled
Deploy to GitHub Pages / deploy (push) Has been cancelled
feat: деплой на GitHub Pages + обновлён README
- 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

ColorLine98

Классическая логическая игра-головоломка ColorLine98 — набирайте очки, выстраивая линии из одноцветных шаров на игровом поле 9×9.

ColorLine98 Screenshot

Играть

Откройте игру в браузере: https://aevgarik.github.io/colorline98

Технологический стек

  • Vue 3 (Composition API)
  • Vite
  • TypeScript
  • Canvas 2D
  • Vitest

Структура проекта

src/
├── components/
│   └── GameBoard.vue    # Canvas-компонент игрового поля
├── game/
│   ├── Board.ts         # Модель доски и базовые типы
│   ├── PathFinder.ts    # BFS-поиск пути
│   ├── LineChecker.ts   # Проверка линий
│   ├── Game.ts          # Главный класс игры
│   └── Game.test.ts     # Unit-тесты
├── App.vue
└── main.ts

Разработка

Установка

pnpm install

Запуск dev-сервера

pnpm dev

Сборка для продакшена

pnpm build

Линтинг

pnpm lint

Тесты

pnpm test

Правила игры

  • Поле: 9×9 клеток (81 ячейка)
  • Шары: 7 цветов
  • Начало: 5 случайных шаров на поле
  • Ход: Выберите шар и укажите целевую клетку
  • Перемещение: Только по ортогональным направлениям (вверх, вниз, влево, вправо)
  • После хода: Появляются 3 новых шара (показываются в превью)
  • Линии: 5+ шаров одного цвета (горизонталь, вертикаль, диагональ)
  • Очки: За удаление линий (5→10, 6→12, 7→18, 8→28, 9+→формула)
  • Комбо: x1.5 множитель за каждую дополнительную линию в ходе
  • Конец игры: Когда поле заполнено

Система очков

Длина линии Очки
5 шаров 10
6 шаров 12
7 шаров 18
8 шаров 28
9+ шаров (n - 8) × 14 + 42

Лицензия

MIT

Description
Классическая игра ColorLine98 - Vue 3 + Vite + TypeScript
Readme 152 KiB
Languages
Vue 46.5%
TypeScript 39.7%
CSS 12.8%
HTML 1%