Core/Misc: Fix various crashes, also related to multithreading

Port From (https://github.com/TrinityCore/TrinityCore/commit/ad008c43b75080ec59aa973f1e2e4424332c34a4)
This commit is contained in:
hondacrx
2019-08-16 22:03:02 -04:00
parent 653a9bb035
commit d3bce6a75c
19 changed files with 174 additions and 117 deletions
@@ -153,7 +153,8 @@ namespace Game.AI
{
Player member = groupRef.GetSource();
if (member)
member.FailQuest(m_pQuestForFollow.Id);
if (member.IsInMap(player))
member.FailQuest(m_pQuestForFollow.Id);
}
}
else
@@ -343,8 +344,7 @@ namespace Game.AI
for (GroupReference groupRef = group.GetFirstMember(); groupRef != null; groupRef = groupRef.next())
{
Player member = groupRef.GetSource();
if (member && member.IsAlive() && me.IsWithinDistInMap(member, 100.0f))
if (member && me.IsWithinDistInMap(member, 100.0f) && member.IsAlive())
{
Log.outDebug(LogFilter.Scripts, "FollowerAI GetLeader changed and returned new leader.");
m_uiLeaderGUID = member.GetGUID();