mirror of
https://github.com/mod-playerbots/mod-playerbots
synced 2025-11-29 15:58:20 +08:00
Move LoadFromDB from player session to world session (#1173)
This commit is contained in:
@@ -116,19 +116,11 @@ void PlayerbotHolder::AddPlayerBot(ObjectGuid playerGuid, uint32 masterAccountId
|
|||||||
|
|
||||||
botLoading.insert(playerGuid);
|
botLoading.insert(playerGuid);
|
||||||
|
|
||||||
if (WorldSession* masterSession = sWorldSessionMgr->FindSession(masterAccountId))
|
// Always login in with world session to avoid race condition
|
||||||
{
|
|
||||||
masterSession->AddQueryHolderCallback(CharacterDatabase.DelayQueryHolder(holder))
|
|
||||||
.AfterComplete([this](SQLQueryHolderBase const& holder)
|
|
||||||
{ HandlePlayerBotLoginCallback(static_cast<PlayerbotLoginQueryHolder const&>(holder)); });
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
sWorld->AddQueryHolderCallback(CharacterDatabase.DelayQueryHolder(holder))
|
sWorld->AddQueryHolderCallback(CharacterDatabase.DelayQueryHolder(holder))
|
||||||
.AfterComplete([this](SQLQueryHolderBase const& holder)
|
.AfterComplete([this](SQLQueryHolderBase const& holder)
|
||||||
{ HandlePlayerBotLoginCallback(static_cast<PlayerbotLoginQueryHolder const&>(holder)); });
|
{ HandlePlayerBotLoginCallback(static_cast<PlayerbotLoginQueryHolder const&>(holder)); });
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
void PlayerbotHolder::HandlePlayerBotLoginCallback(PlayerbotLoginQueryHolder const& holder)
|
void PlayerbotHolder::HandlePlayerBotLoginCallback(PlayerbotLoginQueryHolder const& holder)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -48,6 +48,9 @@ bool CastCustomSpellAction::Execute(Event event)
|
|||||||
if (!target)
|
if (!target)
|
||||||
target = botAI->GetUnit(go);
|
target = botAI->GetUnit(go);
|
||||||
|
|
||||||
|
if (!botAI->GetUnit(go) || !botAI->GetUnit(go)->IsInWorld())
|
||||||
|
continue;
|
||||||
|
|
||||||
chat->eraseAllSubStr(text, chat->FormatWorldobject(botAI->GetUnit(go)));
|
chat->eraseAllSubStr(text, chat->FormatWorldobject(botAI->GetUnit(go)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user