mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-14 07:21:48 +00:00
GetFreeGrid converted to QueryDatabase
This commit is contained in:
parent
8b69de46e9
commit
2f30488cd5
@ -1315,30 +1315,24 @@ uint32 ZoneDatabase::AddWPForSpawn(Client *client, uint32 spawn2id, float xpos,
|
|||||||
}
|
}
|
||||||
|
|
||||||
uint32 ZoneDatabase::GetFreeGrid(uint16 zoneid) {
|
uint32 ZoneDatabase::GetFreeGrid(uint16 zoneid) {
|
||||||
char *query = 0;
|
|
||||||
char errbuf[MYSQL_ERRMSG_SIZE];
|
std::string query = StringFormat("SELECT max(id) FROM grid WHERE zoneid = %i", zoneid);
|
||||||
MYSQL_RES *result;
|
auto results = QueryDatabase(query);
|
||||||
MYSQL_ROW row;
|
if (!results.Success()) {
|
||||||
if (RunQuery(query, MakeAnyLenString(&query,"SELECT max(id) from grid where zoneid = %i",zoneid),errbuf,&result)) {
|
LogFile->write(EQEMuLog::Error, "Error in GetFreeGrid query '%s': %s", query.c_str(), results.ErrorMessage().c_str());
|
||||||
safe_delete_array(query);
|
|
||||||
if (mysql_num_rows(result) == 1) {
|
|
||||||
row = mysql_fetch_row(result);
|
|
||||||
uint32 tmp=0;
|
|
||||||
if (row[0])
|
|
||||||
tmp = atoi(row[0]);
|
|
||||||
mysql_free_result(result);
|
|
||||||
tmp++;
|
|
||||||
return tmp;
|
|
||||||
}
|
|
||||||
mysql_free_result(result);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
LogFile->write(EQEMuLog::Error, "Error in GetFreeGrid query '%s': %s", query, errbuf);
|
|
||||||
safe_delete_array(query);
|
|
||||||
}
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (results.RowCount() != 1)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
auto row = results.begin();
|
||||||
|
uint32 freeGridID = 1;
|
||||||
|
freeGridID = atoi(row[0]) + 1;
|
||||||
|
|
||||||
|
return freeGridID;
|
||||||
|
}
|
||||||
|
|
||||||
int ZoneDatabase::GetHighestWaypoint(uint32 zoneid, uint32 gridid) {
|
int ZoneDatabase::GetHighestWaypoint(uint32 zoneid, uint32 gridid) {
|
||||||
char *query = 0;
|
char *query = 0;
|
||||||
char errbuff[MYSQL_ERRMSG_SIZE];
|
char errbuff[MYSQL_ERRMSG_SIZE];
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user