From b5b7ce44cfeb98bf47eb6c9e0c926994ad53ede8 Mon Sep 17 00:00:00 2001 From: treeston Date: Mon, 22 Feb 2016 23:00:15 +0100 Subject: Core/Threat: Prevent bosses (and other stuff using DoZoneInCombat) from switching off of the person pulling if they are pulled without generating threat. --- src/server/game/AI/CreatureAI.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/server/game/AI/CreatureAI.cpp') diff --git a/src/server/game/AI/CreatureAI.cpp b/src/server/game/AI/CreatureAI.cpp index 352ae635878..33de8b09123 100644 --- a/src/server/game/AI/CreatureAI.cpp +++ b/src/server/game/AI/CreatureAI.cpp @@ -134,7 +134,10 @@ void CreatureAI::MoveInLineOfSight(Unit* who) return; if (me->HasReactState(REACT_AGGRESSIVE) && me->CanStartAttack(who, false)) + { + me->AddThreat(who, 0.0f); // ensure our initial target is the first thing added to threat list so we don't randomly switch off if DoZoneInCombat is called during the EnterCombat hook AttackStart(who); + } //else if (who->GetVictim() && me->IsFriendlyTo(who) // && me->IsWithinDistInMap(who, sWorld->getIntConfig(CONFIG_CREATURE_FAMILY_ASSISTANCE_RADIUS)) // && me->CanStartAttack(who->GetVictim(), true)) /// @todo if we use true, it will not attack it when it arrives -- cgit v1.2.3