132 {
134
135
137
139
141
143 FILE* file = fopen(fileName.c_str(), "rb");
144 if (!file)
145 {
146 LOG_DEBUG(
"maps",
"MMAP:loadMap: Could not open mmtile file '{}'", fileName);
147 return false;
148 }
149
150
153 {
155 fclose(file);
156 return false;
157 }
158 fclose(file);
161
166
174
176
178
179
182 if (!navmesh || !navmeshquery)
183 {
185 return true;
186 }
187
188 float const* min = navmesh->getParams()->orig;
189 float x, y, z;
193
196
198
199
202 if (dtStatusFailed(navmeshquery->findNearestPoly(location, extents, &filter, &polyRef, nullptr)))
203 {
204 handler->
PSendSysMessage(
"Dt [??,??] (invalid poly, probably no tile loaded)");
205 return true;
206 }
207
209 handler->
PSendSysMessage(
"Dt [??, ??] (invalid poly, probably no tile loaded)");
210 else
211 {
212 dtMeshTile const* tile;
213 dtPoly const* poly;
214 if (dtStatusSucceed(navmesh->getTileAndPolyByRef(polyRef, &tile, &poly)))
215 {
216 if (tile)
217 {
218 handler->
PSendSysMessage(
"Dt [{},{}]", tile->header->x, tile->header->y);
219 return false;
220 }
221 }
222
224 }
225
226 return true;
227 }
#define LOG_ERROR(filterType__,...)
Definition Log.h:145
#define LOG_DEBUG(filterType__,...)
Definition Log.h:157
#define SIZE_OF_GRIDS
Definition MapDefines.h:26
#define MMAP_MAGIC
Definition MapDefines.h:28
#define VERTEX_SIZE
Definition PathGenerator.h:41
#define INVALID_POLYREF
Definition PathGenerator.h:42
uint32 GetMapId() const
Definition Position.h:281
Definition DetourExtended.h:11
#define sConfigMgr
Definition Config.h:93
std::string StringFormat(FormatStringView fmt, Args &&... args)
Default AC string format function.
Definition StringFormat.h:44
GridCoord ComputeGridCoord(float x, float y)
Definition GridDefines.h:185
static char const *const TILE_FILE_NAME_FORMAT
Definition MMapMgr.h:49
Definition GridDefines.h:88
uint32 x_coord
Definition GridDefines.h:155
uint32 y_coord
Definition GridDefines.h:156
uint8 walkableRadius
Definition MapDefines.h:35
float cellSizeHorizontal
Definition MapDefines.h:44
float baseUnitDim
Definition MapDefines.h:43
uint32 tilesPerMapEdge
Definition MapDefines.h:42
uint32 vertexPerMapEdge
Definition MapDefines.h:40
uint8 walkableClimb
Definition MapDefines.h:37
uint32 vertexPerTileEdge
Definition MapDefines.h:41
float cellSizeVertical
Definition MapDefines.h:45
uint8 walkableHeight
Definition MapDefines.h:36
float walkableSlopeAngle
Definition MapDefines.h:33
float maxSimplificationError
Definition MapDefines.h:46
float GetPositionX() const
Definition Position.h:121
void GetPosition(float &x, float &y) const
Definition Position.h:126
float GetPositionY() const
Definition Position.h:122