131 {
133
134
136
138
140
142 FILE* file = fopen(fileName.c_str(), "rb");
143 if (!file)
144 {
145 LOG_DEBUG(
"maps",
"MMAP:loadMap: Could not open mmtile file '{}'", fileName);
146 return false;
147 }
148
149
152 {
154 fclose(file);
155 return false;
156 }
157 fclose(file);
160
165
173
175
177
178
181 if (!navmesh || !navmeshquery)
182 {
184 return true;
185 }
186
187 float const* min = navmesh->getParams()->orig;
188 float x, y, z;
192
195
197
198
201 if (dtStatusFailed(navmeshquery->findNearestPoly(location, extents, &filter, &polyRef, nullptr)))
202 {
203 handler->
PSendSysMessage(
"Dt [??,??] (invalid poly, probably no tile loaded)");
204 return true;
205 }
206
208 handler->
PSendSysMessage(
"Dt [??, ??] (invalid poly, probably no tile loaded)");
209 else
210 {
211 dtMeshTile const* tile;
212 dtPoly const* poly;
213 if (dtStatusSucceed(navmesh->getTileAndPolyByRef(polyRef, &tile, &poly)))
214 {
215 if (tile)
216 {
217 handler->
PSendSysMessage(
"Dt [{},{}]", tile->header->x, tile->header->y);
218 return false;
219 }
220 }
221
223 }
224
225 return true;
226 }
#define LOG_ERROR(filterType__,...)
Definition Log.h:158
#define LOG_DEBUG(filterType__,...)
Definition Log.h:170
#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
GridCoord ComputeGridCoord(float x, float y)
Definition GridDefines.h:185
std::string StringFormat(FormatString< Args... > fmt, Args &&... args)
Default AC string format function.
Definition StringFormat.h:44
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