mirror of
https://github.com/EQEmu/Server.git
synced 2026-03-04 04:12:25 +00:00
GetGroupLeadershipInfo converted to QueryDatabase
This commit is contained in:
parent
2afd05de98
commit
2278ec023f
@ -1862,60 +1862,50 @@ void Database::SetGroupLeaderName(uint32 gid, const char* name) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
char *Database::GetGroupLeadershipInfo(uint32 gid, char* leaderbuf, char* maintank, char* assist, char* puller, char *marknpc, GroupLeadershipAA_Struct* GLAA){
|
char *Database::GetGroupLeadershipInfo(uint32 gid, char* leaderbuf, char* maintank, char* assist, char* puller, char *marknpc, GroupLeadershipAA_Struct* GLAA){
|
||||||
char errbuf[MYSQL_ERRMSG_SIZE];
|
char* query = nullptr;
|
||||||
char* query = 0;
|
|
||||||
MYSQL_RES* result;
|
|
||||||
MYSQL_ROW row;
|
|
||||||
|
|
||||||
if (RunQuery(query, MakeAnyLenString(&query, "SELECT leadername, maintank, assist, puller, marknpc, leadershipaa FROM group_leaders WHERE gid=%lu",(unsigned long)gid),
|
auto results = QueryDatabase(query, MakeAnyLenString(&query, "SELECT leadername, maintank, assist, puller, marknpc, leadershipaa FROM group_leaders WHERE gid=%lu",(unsigned long)gid));
|
||||||
errbuf, &result)) {
|
safe_delete_array(query);
|
||||||
|
|
||||||
safe_delete_array(query);
|
if (!results.Success() || results.RowCount() == 0)
|
||||||
|
{
|
||||||
|
if(leaderbuf)
|
||||||
|
strcpy(leaderbuf, "UNKNOWN");
|
||||||
|
|
||||||
row = mysql_fetch_row(result);
|
if(maintank)
|
||||||
unsigned long* Lengths = mysql_fetch_lengths(result);
|
maintank[0] = '\0';
|
||||||
|
|
||||||
if(row != nullptr){
|
if(assist)
|
||||||
|
assist[0] = '\0';
|
||||||
|
|
||||||
if(leaderbuf)
|
if(puller)
|
||||||
strcpy(leaderbuf, row[0]);
|
puller[0] = '\0';
|
||||||
|
|
||||||
if(maintank)
|
if(marknpc)
|
||||||
strcpy(maintank, row[1]);
|
marknpc[0] = '\0';
|
||||||
|
|
||||||
if(assist)
|
return leaderbuf;
|
||||||
strcpy(assist, row[2]);
|
|
||||||
|
|
||||||
if(puller)
|
|
||||||
strcpy(puller, row[3]);
|
|
||||||
|
|
||||||
if(marknpc)
|
|
||||||
strcpy(marknpc, row[4]);
|
|
||||||
|
|
||||||
if(GLAA && (Lengths[5] == sizeof(GroupLeadershipAA_Struct)))
|
|
||||||
memcpy(GLAA, row[5], sizeof(GroupLeadershipAA_Struct));
|
|
||||||
|
|
||||||
mysql_free_result(result);
|
|
||||||
return leaderbuf;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
|
||||||
safe_delete_array(query);
|
auto row = results.begin();
|
||||||
|
|
||||||
if(leaderbuf)
|
if(leaderbuf)
|
||||||
strcpy(leaderbuf, "UNKNOWN");
|
strcpy(leaderbuf, row[0]);
|
||||||
|
|
||||||
if(maintank)
|
if(maintank)
|
||||||
maintank[0] = 0;
|
strcpy(maintank, row[1]);
|
||||||
|
|
||||||
if(assist)
|
if(assist)
|
||||||
assist[0] = 0;
|
strcpy(assist, row[2]);
|
||||||
|
|
||||||
if(puller)
|
if(puller)
|
||||||
puller[0] = 0;
|
strcpy(puller, row[3]);
|
||||||
|
|
||||||
if(marknpc)
|
if(marknpc)
|
||||||
marknpc[0] = 0;
|
strcpy(marknpc, row[4]);
|
||||||
|
|
||||||
|
if(GLAA && results.LengthOfColumn(5) == sizeof(GroupLeadershipAA_Struct))
|
||||||
|
memcpy(GLAA, row[5], sizeof(GroupLeadershipAA_Struct));
|
||||||
|
|
||||||
return leaderbuf;
|
return leaderbuf;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user