Код для этого ежемесячного задания находится в репозитории git . В этом месяце будет создан полноценный сервер и шаблонный клиент для связи с сервером. К сожалению, для этой задачи не будет никакого нового кода на C++. Я не буду представлять никакого решения для этого.
Это Кодовое Додзе – специальное рождественское мероприятие. Это гонка на оленях, кто самый быстрый олень, чтобы помочь Санте доставить подарок всем детям. Но, к сожалению, разыгралась метель, и северный олень ослеп.
Код разделен на две части: Серверную и Клиентскую.
Сервер, который проводит полосу препятствий для оленей, которые хотят посоревноваться в команде Санты. Клиент – это каждый олень, который хочет соревноваться. Один клиент зарегистрируется на Сервере и получит идентификатор UUID, идентифицирующий этого оленя.
Сервер имеет пять конечных точек
@RequestMapping(method = RequestMethod.POST, value = "/{id}/drawMap/{map}") public ResponseEntity drawMap(@PathVariable(value = "id") UUID id, @PathVariable(value = "map") String map); @RequestMapping(method = RequestMethod.POST, value = "/{id}/clear") public ResponseEntity clearMap(@PathVariable(value = "id") UUID id); @RequestMapping(method = RequestMethod.POST, value = "/{id}/startRace") public ResponseEntity startRace(@PathVariable(value = "id") UUID id); @RequestMapping(method = RequestMethod.POST, value = "/createBlindeer/{color}") public ResponseEntitycreateBlindeer(@PathVariable(value = "color") String color); @RequestMapping(method = RequestMethod.POST, value = "/{id}/move/{move}") public ResponseEntity moveRaindeer(@PathVariable(value = "id") UUID id, @PathVariable(value = "move") Move move);
Основной идентификатор сервера: 0ef506e8-5f6b-45ed-a81a-53eab6d7eb6b. Используйте это при общении с конечными точками, к которым клиент не должен прикасаться. Уже реализованы три карты с двумя типами препятствий и одним типом окружающей среды, но вы можете добавлять их столько, сколько захотите. Ледяная среда заставляет северного оленя двигаться быстрее в том направлении, в котором он движется.
Конечная точка очистить
состоит в том, чтобы стереть экран.
Начальный путь
конечная точка выпускает оленей из их коробок, и они могут начать спускаться по трассе.
создать слепой глаз
взять цвет в качестве переменной пути. Это может быть любой из стандартных цветов. И ответом будет идентификатор, идентифицирующий оленя.
конечная точка перемещения
имеет две переменные пути: одну, которая идентифицирует оленя, и переменную перемещения. Реализованы четыре хода: Вверх, Вниз, Влево и Вправо. Северный олень не может двигаться, пока не начнется гонка. Ответ будет 200 с телом. Тело добьется УСПЕХА, если движение удастся, или ПОТЕРПИТ НЕУДАЧУ, если олень во что-то врежется. Тело также сообщит координаты, где находится северный олень.
Чтобы запустить программу, выполните следующие действия:
- Запустите сервер на стороне сервера
- Нарисуйте карту на стороне сервера
- Создать оленя на стороне клиента
- Начните гонку – на стороне сервера
- Переместите оленя на сторону клиента
Настройте сервер, соберите несколько друзей, каждый из которых реализует клиент с алгоритмом маршрутизации, и посмотрите, кто сможет быстрее проехать по трассе.
Оригинал: “https://dev.to/nchrisz/code-dojo-4-christmas-special-reindeer-race-43nd”