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
176
179 if (!navmesh || !navmeshquery)
180 {
182 return true;
183 }
184
185 float const* min = navmesh->getParams()->orig;
186 float x, y, z;
190
193
195
196
199 if (dtStatusFailed(navmeshquery->findNearestPoly(location, extents, &filter, &polyRef, nullptr)))
200 {
201 handler->
PSendSysMessage(
"Dt [??,??] (invalid poly, probably no tile loaded)");
202 return true;
203 }
204
206 handler->
PSendSysMessage(
"Dt [??, ??] (invalid poly, probably no tile loaded)");
207 else
208 {
209 dtMeshTile const* tile;
210 dtPoly const* poly;
211 if (dtStatusSucceed(navmesh->getTileAndPolyByRef(polyRef, &tile, &poly)))
212 {
213 if (tile)
214 {
215 handler->
PSendSysMessage(
"Dt [{},{}]", tile->header->x, tile->header->y);
216 return false;
217 }
218 }
219
221 }
222
223 return true;
224 }
#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
Definition DetourExtended.h:11
#define sConfigMgr
Definition Config.h:74
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:34
static char const *const TILE_FILE_NAME_FORMAT
Definition MMapMgr.h:43
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