58 TargetOnPath() { Clear(); }
62 m_positionOnLivePath.Clear();
65 m_nextShortcutSqDistTrigger = -1.f;
69 bool IsTargetNotReachableOnNavMesh(
const Bot* bot)
const
74 (bot->GetNavTrianglePtr().IsValid() ==
true) &&
75 (bot->GetProgressOnLivePathStatus() == ProgressOnPathOnNavMesh)));
79 PositionOnLivePath& PosLive() {
return m_positionOnLivePath; }
80 const PositionOnLivePath& PosLive()
const {
return m_positionOnLivePath; }
82 void BindToPathEventList(PathEventList* pathEventList) { m_positionOnLivePath.BindToPathEventList(pathEventList); }
84 PathEventList* GetPathEventList()
const {
return m_positionOnLivePath.GetPathEventList(); }
86 Path* GetPath() {
return m_positionOnLivePath.GetPath(); }
87 const Path* GetPath()
const {
return m_positionOnLivePath.GetPath(); }
88 const Vec3f& GetPosition()
const {
return m_positionOnLivePath.GetPosition(); }
89 const PositionOnPath& GetPositionOnPath()
const {
return m_positionOnLivePath.GetPositionOnPath(); }
90 PositionOnPathStatus GetPositionOnPathStatus()
const {
return m_positionOnLivePath.GetPositionOnPathStatus(); }
91 PathEdgeType GetPathEdgeType()
const {
return m_positionOnLivePath.GetPathEdgeType(); }
92 bool IsAtFirstNodeOfPath()
const {
return m_positionOnLivePath.IsAtFirstNodeOfPath(); }
93 bool IsAtLastNodeOfPath()
const {
return m_positionOnLivePath.IsAtLastNodeOfPath(); }
94 bool IsAtFirstEdgeOfPath()
const {
return m_positionOnLivePath.IsAtFirstEdgeOfPath(); }
95 bool IsAtLastEdgeOfPath()
const {
return m_positionOnLivePath.IsAtLastEdgeOfPath(); }
96 KyUInt32 GetPathEdgeIndex()
const {
return m_positionOnLivePath.GetPathEdgeIndex(); }
97 KyUInt32 GetEdgeIdxToMoveOnForward()
const {
return m_positionOnLivePath.GetEdgeIdxToMoveOnForward(); }
98 PathEdgeType GetEdgeTypeToMoveOnForward()
const {
return m_positionOnLivePath.GetEdgeTypeToMoveOnForward(); }
99 PathEdgeType GetEdgeTypeToMoveOnBackward()
const {
return m_positionOnLivePath.GetEdgeTypeToMoveOnBackward(); }
100 KyUInt32 GetEdgeIdxToMoveOnBackward()
const {
return m_positionOnLivePath.GetEdgeIdxToMoveOnBackward(); }
102 OnEventListStatus GetOnEventListStatus()
const {
return m_positionOnLivePath.GetOnEventListStatus(); }
103 KyUInt32 GetOnEventListIndex()
const {
return m_positionOnLivePath.GetOnEventListIndex(); }
105 bool IsAtUpperBoundOfLivePath()
const {
return m_positionOnLivePath.IsAtUpperBoundOfLivePath(); }
106 bool IsAtACheckPoint()
const {
return m_positionOnLivePath.IsAtACheckPoint(); }
108 void MoveForward_StopAtCheckPoint(
KyFloat32 distanceMove) { m_positionOnLivePath.MoveForward_StopAtCheckPoint(distanceMove); }
110 bool IsAtLowerBoundOfLivePath()
const {
return m_positionOnLivePath.IsAtLowerBoundOfLivePath(); }
111 void SetNewPositionOnPathBackward(
const PositionOnPath& posPath) { m_positionOnLivePath.SetNewPositionOnPathBackward(posPath); }
115 PositionOnLivePath m_positionOnLivePath;
OnEventListStatus
Enumerates the admissible values for PositionOnLivePath status accordingly to its position relatively...
Definition: positiononlivepath.h:24
Target on path is initialized but not validated.
Definition: targetonpath.h:27
std::uint32_t KyUInt32
uint32_t
Definition: types.h:29
PositionOnPathStatus
< enumerates="" the="" different="" status="" an="" objectpositiononpath="" can="" have="" on="" its="" path.="" />
Definition: positiononpath.h:17
Target on path is reachable in straight line.
Definition: targetonpath.h:40
TargetOnPathStatus
Enumerates the possible status values of Bot Position on path.
Definition: targetonpath.h:18
The PositionOnPath is not yet defined.
Definition: positiononpath.h:19
Target on path was on a valid NavData that has been streamed out (due to explicit streaming or Dynami...
Definition: targetonpath.h:32
Target on path is no more reachable in straight line.
Definition: targetonpath.h:37
RayCanGoMarginMode
Defines the different mode for the NavMesh border margin to be used in RayCanGo queries.
Definition: database.h:37
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17
Margin to be used to get ray can go exactly on the NavMesh borders.
Definition: database.h:39
The PathEdge has been computed on the NavMesh.
Definition: path.h:25
Position on path has not been yet initialized at all.
Definition: targetonpath.h:22
float KyFloat32
float
Definition: types.h:32