Ссылка для игры https://hermer29.github.io/playable-project-2/web/web-mobile/
Кнопка "A" английская - добавить по бонусу
Реализовать прототип игры в жанре “головоломка с механикой Blast”.
Перед выполнением тестового задания, советуем ознакомиться с играми механики “Blast” для лучшего понимания игрового процесса, например: https://play.google.com/store/apps/details?id=com.rovio.blast https://play.google.com/store/apps/details?id=net.peakgames.toonblast
- Генерируется игровое поле размера N*M.
- В каждой ячейке поля находится объект определенного цвета (далее тайл).
- При клике на тайл, сгорает вся группа прилегающих тайлов того же цвета.
- После сгорания оставшиеся тайлы опускаются вниз на свободные места.
- Пустые ячейки вверху поля также заполняются новыми тайлами.
Цель игры – набрать X очков за Y ходов, иначе проигрыш. Если нельзя сжечь тайл – проигрыш. Значение количества очков и ходов для выигрыша, а также формула начисления очков остается на усмотрение соискателя.
Для перехода к этапу собеседования необходимо выполнить основное задание, выполнение дополнительных заданий остается на усмотрение кандидата.
- Механика сжигания и падения тайлов
- Подсчет оставшихся ходов и набранных очков
- Обработка выигрыша и проигрыша
- Технологический стек: TypeScript + CocosCreator 2.4.x
- Использовать приложенный набор ассетов с макетом (необходима регистрация)
- Запрещено использование физического движка
- Руководствоваться принципами ООП и SOLID при разработке
- Исходники выложить на github.com
- Предоставить ссылку на рабочий проект в pages.github.com с поддержкой десктопного и мобильного браузера
- Выполнить дополнительное задание на выбор или все
- Разделить логику игры и отображение
- Красивые анимации
- Автоматическое перемешивание поля, если нет возможности сжечь тайлы. До 3 раз, далее проигрыш.
- Реализовать “бустер бомба” – при активации бустера и клика по полю, в данной клетке сжигаются тайлы в радиусе R клеток.
- Реализовать “бустер телепорт” – позволяет поменять два тайла местами.
- Реализовать механику “супер тайла ”– если при уничтожении размер группы тайлов больше чем N, то тогда на месте клетки, по которой был клик, появится новый тайл. По клику на него активизируется определенная логика, возможные варианты:
- Сжигается вся строка, в которой находится тайл
- Сжигается весь столбец, в котором находится тайл
- Сжигаются тайлы в радиусе R клеток
- Сжигается всё поле
Все спорные или неописанные моменты остаются на усмотрение исполнителя.