Skip to content

KuznetsovVadim/Nival

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nival

Traineeship

Тестовое задание:

Создать прототип игры на движке Unity.

Описание задачи:

Квадратное игровое поле состоит из квадратов одного цвета.

Размер стороны игрового поля определяется при старте приложения случайным образом в диапазоне от 5 до 10 клеток.

Нажатие правой клавишей мыши на любую клетку поля помечает её, как клетку, в которой могут останавливаться юниты.

Количество помеченных клеток на карте ограничено только общим количеством клеток на карте.

Нажатие правой клавишей мыши на помеченную клетку переводит клетку в начальное состояние.

Выбор визуализации изменения состояния клетки - на усмотрение выполняющего задание (анимация/цвет).

Нажатие левой клавишей мыши на любую клетку поля создаёт в этой клетке куб.

Нажатие левой клавишей мыши на куб - удаляет его.

На карте присутствуют "юниты". Их количество определяется случайным образом при старте приложения в диапазоне от 1 до 5.

Каждый юнит выбирает случайную клетку на карте и движется к ней. Юнит не может передвигаться по клеткам, в которых есть кубы и останавливаться в них.

При достижении юнитом целевой клетки он выбирает новую случайную и продолжает движение.

При передвижении по карте юнит игнорирует других юнитов и может проходить сквозь них.

Случай, при котором юнит не может добраться до выбранной клетки, когда она заблокирована кубами, обрабатывать на усмотрение выполняющего задание (выбирать новую клетку, идти до ближайшей к целевой достижимой клетки, другое).

Реализовать UI элемент (button/toggle), по нажатию на который все юниты стремятся занять помеченные клетки и остановиться в них.

В одной клетке должен останавливаться только один юнит.

Повторное нажатие на UI элемент возвращает юнитам обычное поведение перемещения по карте.

Случай, в котором юнитов больше целевых клеток, обрабатывать на усмотрение выполняющего задание.

Допускается использовать готовые ассеты для поля и юнитов, а также алгоритмы для поиска путей юнитами.

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

Releases

No releases published

Packages

No packages published

Languages