From 163f44c1b08cc043b114585922bd08664434bf92 Mon Sep 17 00:00:00 2001 From: Treeston Date: Mon, 29 Jul 2019 00:13:40 +0200 Subject: [PATCH] Core/AI: No longer do strange things when told to enter evade mode while there's no need to do so, typically by terrible legacy code. --- src/common/Utilities/FuzzyFind.h | 4 ++++ src/server/game/AI/CreatureAI.cpp | 2 +- src/server/game/Grids/ObjectGridLoader.cpp | 3 --- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/common/Utilities/FuzzyFind.h b/src/common/Utilities/FuzzyFind.h index 2380e65b66e..d65a3bcbda1 100644 --- a/src/common/Utilities/FuzzyFind.h +++ b/src/common/Utilities/FuzzyFind.h @@ -18,6 +18,10 @@ #ifndef TRINITY_FUZZYFIND_H #define TRINITY_FUZZYFIND_H +#include "advstd.h" +#include +#include + namespace Trinity { namespace Containers diff --git a/src/server/game/AI/CreatureAI.cpp b/src/server/game/AI/CreatureAI.cpp index 760517851f6..141b0a82082 100644 --- a/src/server/game/AI/CreatureAI.cpp +++ b/src/server/game/AI/CreatureAI.cpp @@ -285,7 +285,7 @@ void CreatureAI::EngagementOver() bool CreatureAI::_EnterEvadeMode(EvadeReason /*why*/) { - if (me->IsInEvadeMode()) + if (!IsEngaged()) return false; if (!me->IsAlive()) diff --git a/src/server/game/Grids/ObjectGridLoader.cpp b/src/server/game/Grids/ObjectGridLoader.cpp index ea973df374c..07c36351339 100644 --- a/src/server/game/Grids/ObjectGridLoader.cpp +++ b/src/server/game/Grids/ObjectGridLoader.cpp @@ -250,10 +250,7 @@ void ObjectGridStoper::Visit(CreatureMapType &m) { iter->GetSource()->RemoveAllDynObjects(); if (iter->GetSource()->IsInCombat()) - { iter->GetSource()->CombatStop(); - iter->GetSource()->AI()->EnterEvadeMode(); - } } }