mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-14 07:21:48 +00:00
LoadStaticZonePoints converted to QueryDatabase
This commit is contained in:
parent
b36cc3ab08
commit
3d1521857e
@ -1678,22 +1678,23 @@ ZonePoint* Zone::GetClosestZonePointWithoutZone(float x, float y, float z, Clien
|
|||||||
|
|
||||||
bool ZoneDatabase::LoadStaticZonePoints(LinkedList<ZonePoint*>* zone_point_list, const char* zonename, uint32 version)
|
bool ZoneDatabase::LoadStaticZonePoints(LinkedList<ZonePoint*>* zone_point_list, const char* zonename, uint32 version)
|
||||||
{
|
{
|
||||||
char errbuf[MYSQL_ERRMSG_SIZE];
|
|
||||||
char *query = 0;
|
|
||||||
MYSQL_RES *result;
|
|
||||||
MYSQL_ROW row;
|
|
||||||
zone_point_list->Clear();
|
zone_point_list->Clear();
|
||||||
zone->numzonepoints = 0;
|
zone->numzonepoints = 0;
|
||||||
MakeAnyLenString(&query, "SELECT x, y, z, target_x, target_y, "
|
std::string query = StringFormat("SELECT x, y, z, target_x, target_y, "
|
||||||
"target_z, target_zone_id, heading, target_heading, number, "
|
"target_z, target_zone_id, heading, target_heading, "
|
||||||
"target_instance, client_version_mask FROM zone_points "
|
"number, target_instance, client_version_mask "
|
||||||
"WHERE zone='%s' AND (version=%i OR version=-1) order by number", zonename, version);
|
"FROM zone_points WHERE zone='%s' AND (version=%i OR version=-1) "
|
||||||
if (RunQuery(query, strlen(query), errbuf, &result))
|
"ORDER BY number", zonename, version);
|
||||||
{
|
auto results = QueryDatabase(query);
|
||||||
safe_delete_array(query);
|
if (!results.Success()) {
|
||||||
while((row = mysql_fetch_row(result)))
|
std::cerr << "Error1 in LoadStaticZonePoints query '" << query << "' " << results.ErrorMessage() << std::endl;
|
||||||
{
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (auto row = results.begin(); row != results.end(); ++row) {
|
||||||
ZonePoint* zp = new ZonePoint;
|
ZonePoint* zp = new ZonePoint;
|
||||||
|
|
||||||
zp->x = atof(row[0]);
|
zp->x = atof(row[0]);
|
||||||
zp->y = atof(row[1]);
|
zp->y = atof(row[1]);
|
||||||
zp->z = atof(row[2]);
|
zp->z = atof(row[2]);
|
||||||
@ -1706,17 +1707,12 @@ bool ZoneDatabase::LoadStaticZonePoints(LinkedList<ZonePoint*>* zone_point_list,
|
|||||||
zp->number = atoi(row[9]);
|
zp->number = atoi(row[9]);
|
||||||
zp->target_zone_instance = atoi(row[10]);
|
zp->target_zone_instance = atoi(row[10]);
|
||||||
zp->client_version_mask = (uint32)strtoul(row[11], nullptr, 0);
|
zp->client_version_mask = (uint32)strtoul(row[11], nullptr, 0);
|
||||||
|
|
||||||
zone_point_list->Insert(zp);
|
zone_point_list->Insert(zp);
|
||||||
|
|
||||||
zone->numzonepoints++;
|
zone->numzonepoints++;
|
||||||
}
|
}
|
||||||
mysql_free_result(result);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
std::cerr << "Error1 in LoadStaticZonePoints query '" << query << "' " << errbuf << std::endl;
|
|
||||||
safe_delete_array(query);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user