aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/QueryHandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Handlers/QueryHandler.cpp')
-rw-r--r--src/server/game/Handlers/QueryHandler.cpp24
1 files changed, 2 insertions, 22 deletions
diff --git a/src/server/game/Handlers/QueryHandler.cpp b/src/server/game/Handlers/QueryHandler.cpp
index 49ac42f0abf..4afb2826889 100644
--- a/src/server/game/Handlers/QueryHandler.cpp
+++ b/src/server/game/Handlers/QueryHandler.cpp
@@ -30,38 +30,18 @@
#include "NPCHandler.h"
#include "Pet.h"
#include "MapManager.h"
-#include "BattlenetAccountMgr.h"
#include "CharacterPackets.h"
#include "QueryPackets.h"
void WorldSession::SendNameQueryOpcode(ObjectGuid guid)
{
Player* player = ObjectAccessor::FindConnectedPlayer(guid);
- CharacterInfo const* characterInfo = sWorld->GetCharacterInfo(guid);
WorldPackets::Query::QueryPlayerNameResponse response;
response.Player = guid;
- if (characterInfo)
- {
- uint32 accountId = player ? player->GetSession()->GetAccountId() : ObjectMgr::GetPlayerAccountIdByGUID(guid);
- uint32 bnetAccountId = player ? player->GetSession()->GetBattlenetAccountId() : Battlenet::AccountMgr::GetIdByGameAccount(accountId);
-
- response.Result = RESPONSE_SUCCESS; // name known
- response.Data.IsDeleted = characterInfo->IsDeleted;
- response.Data.AccountID = ObjectGuid::Create<HighGuid::WowAccount>(accountId);
- response.Data.BnetAccountID = ObjectGuid::Create<HighGuid::BNetAccount>(bnetAccountId);
- response.Data.Name = characterInfo->Name;
- response.Data.VirtualRealmAddress = GetVirtualRealmAddress();
- response.Data.Race = characterInfo->Race;
- response.Data.Sex = characterInfo->Sex;
- response.Data.ClassID = characterInfo->Class;
- response.Data.Level = characterInfo->Level;
-
- if (DeclinedName const* names = (player ? player->GetDeclinedNames() : nullptr))
- for (uint8 i = 0; i < MAX_DECLINED_NAME_CASES; ++i)
- response.Data.DeclinedNames.name[i] = names->name[i];
- }
+ if (response.Data.Initialize(guid, player))
+ response.Result = RESPONSE_SUCCESS; // name known
else
response.Result = RESPONSE_FAILURE; // name unknown