2f0d36352ca8c8f9608138c6b7d766e4cb579022
- 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>
ColorLine98
Классическая логическая игра-головоломка ColorLine98.
Описание
Цель игры — набрать максимальное количество очков, выстраивая линии из одноцветных шаров на игровом поле 9×9.
Технологический стек
- Vue 3 (Composition API)
- Vite
- TypeScript
- Canvas 2D
Структура проекта
src/
├── assets/ # Статические ресурсы (изображения, звуки)
├── components/ # Vue компоненты
├── game/ # Игровая логика
│ ├── Board.ts
│ ├── Ball.ts
│ ├── PathFinder.ts
│ └── LineChecker.ts
├── App.vue
├── main.ts
└── style.css
Установка
pnpm install
Запуск
pnpm dev
Сборка
pnpm build
Линтинг
pnpm lint
Правила игры
- Поле: 9×9 клеток
- 7 цветов шаров
- За ход появляются 3 новых шара
- Линия из 5+ шаров одного цвета исчезает
- Перемещение шаров только по ортогональным направлениям
Лицензия
MIT
Description
Languages
Vue
46.5%
TypeScript
39.7%
CSS
12.8%
HTML
1%