NavigationLink2D
Экспериментальное: This class may be changed or removed in future versions.
Наследует: Node2D < CanvasItem < Node < Object
Связь между двумя позициями в NavigationRegion2D, между которыми агенты могут быть перенаправлены.
Описание
Связь между двумя позициями на NavigationRegion2D, через которые могут быть направлены агенты. Эти позиции могут быть на одном и том же NavigationRegion2D или на двух разных. Связи полезны для выражения методов навигации, отличных от перемещения по поверхности навигационного полигона, таких как зиплайны, телепорты или разрывы, через которые можно перепрыгивать.
Обучающие материалы
Свойства
|
||
|
||
|
||
|
||
|
||
|
||
|
Методы
get_global_end_position() const |
|
get_global_start_position() const |
|
get_navigation_layer_value(layer_number: int) const |
|
get_navigation_map() const |
|
get_rid() const |
|
void |
set_global_end_position(position: Vector2) |
void |
set_global_start_position(position: Vector2) |
void |
set_navigation_layer_value(layer_number: int, value: bool) |
void |
set_navigation_map(navigation_map: RID) |
Описания свойств
Можно ли перемещаться по этой ссылке в обоих направлениях или только от start_position до end_position.
Активна ли эта ссылка в данный момент. Если false, NavigationServer2D.map_get_path() проигнорирует эту ссылку.
Vector2 end_position = Vector2(0, 0) 🔗
Конечная позиция ссылки.
Эта позиция будет искать ближайший полигон в навигационной сетке для присоединения.
Расстояние, на котором будет искать ссылка, контролируется NavigationServer2D.map_set_link_connection_radius().
Когда поиск пути заходит на эту ссылку из навигационной сетки другого региона, значение enter_cost добавляется к расстоянию пути для определения кратчайшего пути.
Битовое поле, определяющее все навигационные слои, к которым принадлежит ссылка. Эти навигационные слои будут проверены при запросе пути с помощью NavigationServer2D.map_get_path().
Vector2 start_position = Vector2(0, 0) 🔗
Начальная позиция ссылки.
Эта позиция будет искать ближайший полигон в навигационной сетке для присоединения.
Расстояние, на котором будет искать ссылка, контролируется NavigationServer2D.map_set_link_connection_radius().
При поиске пути по ссылке пройденное расстояние умножается на travel_cost для определения кратчайшего пути.
Описания метода
Vector2 get_global_end_position() const 🔗
Возвращает end_position, который относится к ссылке как к глобальной позиции.
Vector2 get_global_start_position() const 🔗
Возвращает start_position, которая относится к ссылке как к глобальной позиции.
bool get_navigation_layer_value(layer_number: int) const 🔗
Возвращает, включен ли указанный слой битовой маски navigation_layers, учитывая layer_number от 1 до 32.
RID get_navigation_map() const 🔗
Возвращает текущую навигационную карту RID, используемую этой ссылкой.
Возвращает RID этой ссылки на NavigationServer2D.
void set_global_end_position(position: Vector2) 🔗
Устанавливает end_position относительно ссылки из глобального position.
void set_global_start_position(position: Vector2) 🔗
Устанавливает start_position относительно ссылки из глобальной position.
void set_navigation_layer_value(layer_number: int, value: bool) 🔗
На основе value включает или отключает указанный слой в битовой маске navigation_layers, учитывая layer_number от 1 до 32.
void set_navigation_map(navigation_map: RID) 🔗
Устанавливает RID навигационной карты, которую должна использовать эта ссылка. По умолчанию ссылка автоматически присоединится к навигационной карте по умолчанию World2D, поэтому эта функция требуется только для переопределения карты по умолчанию.