Отправится в путь до указаной точки или объекта.
Если целью перемещения является некий неизвестный интерактивный объект, принимающий сделанное задание (квестфинишер), тонужно передать идентификатор ресурса этого задания.
После окончания автобега генерируется событие ''' EVENT_NAVIGATOR_OBJECT_REACHED'''.
Поле id этого события содержит :
id ближайшего не враждебного интерактивного объекта, если goal - GamePosition
id интерактивного объекта, если goal - QuestId и игрок действительно подбежал к требуемуму квест-финишеру
id интерактивного объекта на который указывает goal, если goal - ObjectId.
Чтобы узнать, можно ли найти путь для этой карты, используйте cartographer.CanNavigateToPoint( zonesMapId ).
Состояние бега можно узнать по avatar.IsNavigateToPoint().
ВНИМАНИЕ! В пользовательских аддонах есть ограничение: этот метод будет работать только в обработчиках реакции на действия (не перемещение) мыши. То есть на нажатие кнопки.
-- библиотека: cartographer -- объявление: function NavigateToObject( zonesMapId, goal ) -- параметры: zonesMapId: ObjectId - идентификатор интерфейсной карты goal: GamePosition/ObjectId/QuestId - координаты точки / идентификатор интерактивного объекта / завершенный квест, к которому бежим -- возвращаемые значения нет --}
Пример:
Начнется движение в координаты questLocation.position. По достижению этих координат прийдет событие, поле id будет содержать ObjectId ближайшего не враждебного InteractiveObject. if cartographer.CanNavigateToPoint( questLocation.zonesMapId ) then cartographer.NavigateToObject( questLocation.zonesMapId, questLocation.position ) end if cartographer.CanNavigateToPoint( questLocation.zonesMapId ) then cartographer.NavigateToObject( questLocation.zonesMapId, objectId ) end