NavigationLink2D
Связь между двумя позициями в NavigationRegion2D, между которыми агенты могут быть перенаправлены.
Связь между двумя позициями в NavigationRegion2D, между которыми агенты могут быть перенаправлены.
Связь между двумя позициями на NavigationRegion2D, через которые могут быть направлены агенты. Эти позиции могут быть на одном и том же NavigationRegion2D или на двух разных. Связи полезны для выражения методов навигации, отличных от перемещения по поверхности навигационного полигона, таких как зиплайны, телепорты или разрывы, через которые можно перепрыгивать.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
NavigationLink2DКонструктор
public NavigationLink2D();Свойства7
BidirectionalСвойство
public bool Bidirectional { get; set; }Можно ли перемещаться по этой ссылке в обоих направлениях или только от NavigationLink2D.StartPosition до NavigationLink2D.EndPosition.
EnabledСвойство
public bool Enabled { get; set; }Активна ли эта ссылка в данный момент. Если false, NavigationServer2D.MapGetPath проигнорирует эту ссылку.
EndPositionСвойство
public Vector2 EndPosition { get; set; }Конечный конец в локальных координатах Entity связи. Перемещение Entity обновляет глобальные концы на сервере; эта позиция не задаёт телепортацию игрового тела.
EnterCostСвойство
public float EnterCost { get; set; }Когда поиск путей входит в эту связь с судовождения другого региона, NavigationLink2D.EnterCost Для определения кратчайшего пути увеличивается значение этого пути.
NavigationLayersСвойство
public uint NavigationLayers { get; set; }Битовое поле, определяющее все навигационные слои, к которым принадлежит ссылка. Эти навигационные слои будут проверены при запросе пути с помощью NavigationServer2D.MapGetPath.
StartPositionСвойство
public Vector2 StartPosition { get; set; }Стартовый конец в локальных координатах Entity связи. При передаче серверу преобразуется глобальным трансформом Entity. Для серверного LinkSetStartPosition передавайте уже глобальную позицию.
TravelCostСвойство
public float TravelCost { get; set; }При поиске пути по ссылке пройденное расстояние умножается на NavigationLink2D.TravelCost для определения кратчайшего пути.
Методы23
GetEndPositionVector2
public Vector2 GetEndPosition();Vector2GetEnterCostfloat
public float GetEnterCost();floatGetGlobalEndPositionVector2
public Vector2 GetGlobalEndPosition();Возвращает NavigationLink2D.EndPosition, который относится к ссылке как к глобальной позиции.
Vector2GetGlobalStartPositionVector2
public Vector2 GetGlobalStartPosition();Возвращает NavigationLink2D.StartPosition, которая относится к ссылке как к глобальной позиции.
Vector2GetNavigationLayerValuebool
public bool GetNavigationLayerValue(int layerNumber);Возвращает, включен ли указанный слой битовой маски NavigationLink2D.NavigationLayers, учитывая layer_number от 1 до 32.
| Имя | Тип | По умолчанию |
|---|---|---|
layerNumber | int | — |
boolGetNavigationLayersuint
public uint GetNavigationLayers();uintGetNavigationMapRid
public Rid GetNavigationMap();Возвращает текущую навигационную карту Rid, используемую этой ссылкой.
RidGetRidRid
public Rid GetRid();Возвращает Rid этой ссылки на NavigationServer2D.
RidGetStartPositionVector2
public Vector2 GetStartPosition();Vector2GetTravelCostfloat
public float GetTravelCost();floatIsBidirectionalbool
public bool IsBidirectional();boolIsEnabledbool
public bool IsEnabled();boolSetBidirectionalvoid
public void SetBidirectional(bool bidirectional);| Имя | Тип | По умолчанию |
|---|---|---|
bidirectional | bool | — |
SetEnabledvoid
public void SetEnabled(bool enabled);| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
SetEndPositionvoid
public void SetEndPosition(Vector2 position);| Имя | Тип | По умолчанию |
|---|---|---|
position | Vector2 | — |
SetEnterCostvoid
public void SetEnterCost(float enterCost);| Имя | Тип | По умолчанию |
|---|---|---|
enterCost | float | — |
SetGlobalEndPositionvoid
public void SetGlobalEndPosition(Vector2 position);Устанавливает NavigationLink2D.EndPosition относительно ссылки из глобального position.
| Имя | Тип | По умолчанию |
|---|---|---|
position | Vector2 | — |
SetGlobalStartPositionvoid
public void SetGlobalStartPosition(Vector2 position);Устанавливает NavigationLink2D.StartPosition относительно ссылки из глобальной position.
| Имя | Тип | По умолчанию |
|---|---|---|
position | Vector2 | — |
SetNavigationLayerValuevoid
public void SetNavigationLayerValue(int layerNumber, bool value);На основе value включает или отключает указанный слой в битовой маске NavigationLink2D.NavigationLayers, учитывая layer_number от 1 до 32.
| Имя | Тип | По умолчанию |
|---|---|---|
layerNumber | int | — |
value | bool | — |
SetNavigationLayersvoid
public void SetNavigationLayers(uint navigationLayers);| Имя | Тип | По умолчанию |
|---|---|---|
navigationLayers | uint | — |
SetNavigationMapvoid
public void SetNavigationMap(Rid navigationMap);Устанавливает Rid навигационной карты, которую должна использовать эта ссылка. По умолчанию ссылка автоматически присоединится к навигационной карте по умолчанию World2D, поэтому эта функция требуется только для переопределения карты по умолчанию.
| Имя | Тип | По умолчанию |
|---|---|---|
navigationMap | Rid | — |
SetStartPositionvoid
public void SetStartPosition(Vector2 position);| Имя | Тип | По умолчанию |
|---|---|---|
position | Vector2 | — |
SetTravelCostvoid
public void SetTravelCost(float travelCost);| Имя | Тип | По умолчанию |
|---|---|---|
travelCost | float | — |