Делаю сетевую миссию с ботами. Им ставлю маршрутные точки. Если бот погибает, он спавниться и идет на маршрутную точку, которая была активирована в момент его смерти. Подскажите, как сделать, чтобы бот после смерти выполнял маршрутные точки с самой первой.
Боты в сетевой игре.
#1 OFFLINE
Отправлено 27 August 2015 - 19:55
#2 OFFLINE
Отправлено 27 August 2015 - 20:56
Если маршрутные точки не удаляются по их достижении, то указать AI первую маршрутную точку. Если удаляются, то удалить оставшиеся и создать все маршрутные точки заново.
Актуальные маршрутные точки можно получить с помощью команды
#4 OFFLINE
Отправлено 27 August 2015 - 21:32
Команда addWaypoint возвращает информацию о маршрутной точке. Эту информацию нужно сохранить.
После возрождения AI нужно удалить оставшиеся маршрутные точки и добавить новые по ранее сохранённой информации.
AI, кстати, в группе или по-одному?
Сообщение отредактировал Schatten: 27 August 2015 - 21:32
#6 OFFLINE
Отправлено 27 August 2015 - 21:49
И как это сделать, удалить оставшиеся и добавить новые?
Сохранение:
savedWaypoints = []; {savedWaypoints pushBack (patrolGroup addWaypoint _x)} forEach waypointsParameters;
Удаление оставшихся:
{deleteWaypoint _x} forEach (waypoints patrolGroup);
Добавление ранее сохранённых:
{patrolGroup addWaypoint _x} forEach savedWaypoints;
Schatten, в группе.
А вот это проблема. Команды для работы с маршрутными точками распространяются на группу, а не отдельного юнита. Так что вышеперечисленные действия отразятся на всей группе.
Можно попробовать исключить убитого юнита из группы, а когда он догонит группу - включить.