From 27a0df43b33b712462ab5be65462162b9e4bcd29 Mon Sep 17 00:00:00 2001 From: fusion32 Date: Thu, 23 Oct 2025 04:26:11 -0300 Subject: change how guild data is stored --- src/query.cc | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'src/query.cc') diff --git a/src/query.cc b/src/query.cc index 52bda66..827d638 100644 --- a/src/query.cc +++ b/src/query.cc @@ -679,6 +679,9 @@ static void LoginGameTx(TDatabase *Database, TQuery *Query, QUERY_ERROR_IF(!GamemasterOutfit, 14); } + TCharacterGuildData GuildData; + QUERY_STOP_IF(!GetCharacterGuildData(Database, Character.CharacterID, &GuildData)); + DynamicArray Buddies; QUERY_STOP_IF(!GetBuddies(Database, Query->WorldID, Account.AccountID, &Buddies)); @@ -704,9 +707,9 @@ static void LoginGameTx(TDatabase *Database, TQuery *Query, Response->Write32((uint32)Character.CharacterID); Response->WriteString(Character.Name); Response->Write8((uint8)Character.Sex); - Response->WriteString(Character.Guild); - Response->WriteString(Character.Rank); - Response->WriteString(Character.Title); + Response->WriteString(GuildData.GuildName); + Response->WriteString(GuildData.RankName); + Response->WriteString(GuildData.Title); int NumBuddies = std::min(Buddies.Length(), UINT8_MAX); Response->Write8((uint8)NumBuddies); @@ -1478,15 +1481,18 @@ void ProcessGetCharacterProfile(TDatabase *Database, TQuery *Query){ TCharacterProfile Character; QUERY_STOP_IF(!GetCharacterProfile(Database, CharacterName, &Character)); - QUERY_ERROR_IF(!StringEqCI(Character.Name, CharacterName), 1); + QUERY_ERROR_IF(Character.CharacterID == 0, 1); + + TCharacterGuildData GuildData; + QUERY_STOP_IF(!GetCharacterGuildData(Database, Character.CharacterID, &GuildData)); TWriteBuffer *Response = QueryBeginResponse(Query, QUERY_STATUS_OK); Response->WriteString(Character.Name); Response->WriteString(Character.World); Response->Write8((uint8)Character.Sex); - Response->WriteString(Character.Guild); - Response->WriteString(Character.Rank); - Response->WriteString(Character.Title); + Response->WriteString(GuildData.GuildName); + Response->WriteString(GuildData.RankName); + Response->WriteString(GuildData.Title); Response->Write16((uint16)Character.Level); Response->WriteString(Character.Profession); Response->WriteString(Character.Residence); -- cgit v1.2.3