10 #ifndef Navigation_NavTag_H
11 #define Navigation_NavTag_H
30 NAVTAG_IS_EXCLUSIVE_BIT = 0,
31 NAVTAG_IS_ON_NAVGRAPH_BIT = 1,
32 NAVTAG_IS_FROM_GENERATION = 2,
33 NAVTAG_IS_GENERATION_DEFAULT = 3,
48 void InitFromBlob(
const NavTag& navTag);
50 bool operator <(
const DynamicNavTag& other)
const;
51 bool operator!=(
const DynamicNavTag& other)
const;
52 bool operator==(
const DynamicNavTag& other)
const;
54 bool operator <(
const NavTag& other)
const;
55 bool operator!=(
const NavTag& other)
const;
56 bool operator==(
const NavTag& other)
const;
58 bool IsEqualToNavTag(
const NavTag& other)
const;
65 bool IsExclusive()
const;
66 bool IsWalkable()
const;
67 bool IsOnNavGraph()
const;
68 bool IsOnNavMesh()
const;
69 bool IsFromGeneration()
const;
70 bool IsFromRuntime()
const;
71 bool IsGenerationDefault()
const;
73 VisualColor GetColor()
const;
75 void SetAsExclusive();
77 void SetColor(VisualColor color);
81 KY_DEPRECATED(VisualColor GetVisualColor()
const) {
return GetColor(); }
82 KY_DEPRECATED(
static VisualColor GetDefaultVisualColor()) {
return GetDefaultColor(); }
83 KY_DEPRECATED(
static VisualColor GetExclusiveVisualColor()) {
return GetExclusiveColor(); }
88 void SetFromGeneration();
89 void SetAsGenerationDefault();
92 KyArrayPOD<KyUInt32> m_blindDataArray;
102 KY_ROOT_BLOB_CLASS(NavData, NavTag, 1)
105 static VisualColor GetDefaultColor() {
return DynamicNavTag::GetDefaultColor(); }
106 static VisualColor GetExclusiveColor() {
return DynamicNavTag::GetExclusiveColor(); }
110 bool operator!=(
const NavTag& other)
const;
111 bool operator==(
const NavTag& other)
const;
112 bool operator<(
const NavTag& other)
const;
114 bool operator <(
const DynamicNavTag& other)
const;
115 bool operator!=(
const DynamicNavTag& other)
const;
116 bool operator==(
const DynamicNavTag& other)
const;
123 bool IsWalkable()
const;
124 bool IsOnNavMesh()
const;
125 bool IsExclusive()
const;
126 bool IsOnNavGraph()
const;
127 bool IsFromGeneration()
const;
128 bool IsFromRuntime()
const;
129 bool IsGenerationDefault()
const;
131 VisualColor GetColor()
const;
134 KY_DEPRECATED(VisualColor GetVisualColor()
const) {
return GetColor(); }
135 KY_DEPRECATED(
static VisualColor GetDefaultVisualColor()) {
return GetDefaultColor(); }
136 KY_DEPRECATED(
static VisualColor GetExclusivetVisualColor()) {
return GetExclusiveColor(); }
140 BlobArray<KyUInt32> m_blindData;
150 SwapEndianness(e,
self.m_blindData);
151 SwapEndianness(e,
self.m_flags);
152 SwapEndianness(e,
self.m_colorR);
153 SwapEndianness(e,
self.m_colorG);
154 SwapEndianness(e,
self.m_colorB);
157 class NavTagBlobBuilder :
public BaseBlobBuilder<NavTag>
160 NavTagBlobBuilder(
const DynamicNavTag& navTag) : m_navTag(&navTag) {}
164 const DynamicNavTag* m_navTag;
167 class NavTagCopier :
public BaseBlobBuilder<NavTag>
170 NavTagCopier(
const NavTag& navTag) : m_navTag(&navTag) {}
173 const NavTag* m_navTag;
static const VisualColor Red
Represents the color with RGBA values (255, 0, 0, 255).
Definition: visualcolor.h:209
#define KY_CLASS_WITHOUT_COPY(ClassName)
Define to forbid copy constructor and copy assignment.
Definition: types.h:387
static const VisualColor DarkOrange
Represents the color with RGBA values (255, 140, 0, 255).
Definition: visualcolor.h:125
Target
Enumerates the possible endianness types relative to the current platform.
Definition: endianness.h:35
unsigned char KyUInt8
Type used internally to represent an unsigned 8-bit integer.
Definition: types.h:41
Definition: gamekitcrowddispersion.h:20
#define KY_DEFINE_NEW_DELETE_OPERATORS(MemStat)
This macro defines new and delete operators.
Definition: memory.h:137
#define KY_DEPRECATED(f)
Macro to mark a function, class or method as deprecated.
Definition: types.h:289
unsigned int KyUInt32
Type used internally to represent an unsigned 32-bit integer.
Definition: types.h:36
#define KyUInt32MAXVAL
The maximum value that can be stored in the KyUInt32 variable type.
Definition: types.h:226