diff options
| author | jackpoz <giacomopoz@gmail.com> | 2020-03-02 20:43:52 +0100 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2021-12-22 21:00:14 +0100 |
| commit | dab7e5688c55d4b785a9277d15ea55e075870849 (patch) | |
| tree | f72c11b958ff7b057faa70b97b61afc2fc28ea5f /src | |
| parent | 93e66f3f3e8bdcf0138ab67c3edda948d6f97b00 (diff) | |
Core/AI: Fix remaining charming issue
Make creatures evade when a charming expires and they cannot attack the charmer (i.e. charmer with .gm on)
(cherry picked from commit 69809d12031d055d8d0cffb5a187d9af09dd0efe)
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/game/AI/CreatureAI.cpp | 3 | ||||
| -rw-r--r-- | src/server/game/AI/SmartScripts/SmartAI.cpp | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/server/game/AI/CreatureAI.cpp b/src/server/game/AI/CreatureAI.cpp index a5760026a3b..e4048e907a6 100644 --- a/src/server/game/AI/CreatureAI.cpp +++ b/src/server/game/AI/CreatureAI.cpp @@ -70,6 +70,9 @@ void CreatureAI::OnCharmed(bool isNew) } me->LastCharmerGUID.Clear(); + + if (!me->IsInCombat()) + EnterEvadeMode(EVADE_REASON_NO_HOSTILES); } UnitAI::OnCharmed(isNew); diff --git a/src/server/game/AI/SmartScripts/SmartAI.cpp b/src/server/game/AI/SmartScripts/SmartAI.cpp index aac8edd3a37..8ff5acde3ae 100644 --- a/src/server/game/AI/SmartScripts/SmartAI.cpp +++ b/src/server/game/AI/SmartScripts/SmartAI.cpp @@ -708,6 +708,9 @@ void SmartAI::OnCharmed(bool /*isNew*/) if (Unit* lastCharmer = ObjectAccessor::GetUnit(*me, me->LastCharmerGUID)) me->EngageWithTarget(lastCharmer); me->LastCharmerGUID.Clear(); + + if (!me->IsInCombat()) + EnterEvadeMode(EVADE_REASON_NO_HOSTILES); } } |
