diff --git a/src/server/game/Entities/Creature/Creature.cpp b/src/server/game/Entities/Creature/Creature.cpp index 9e1b3ab12..e168e35ad 100644 --- a/src/server/game/Entities/Creature/Creature.cpp +++ b/src/server/game/Entities/Creature/Creature.cpp @@ -577,6 +577,12 @@ void Creature::Update(uint32 diff) SelectVictim(); } + Unit* owner = GetCharmerOrOwner(); + if (IsCharmed() && !IsWithinDistInMap(owner, GetMap()->GetVisibilityRange())) + { + RemoveCharmAuras(); + } + if (!IsInEvadeMode() && IsAIEnabled) { // do not allow the AI to be changed during update