diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/AI/ScriptedAI/ScriptedCreature.cpp | 8 | ||||
-rw-r--r-- | src/server/scripts/Northrend/Ulduar/ulduar/boss_ignis.cpp | 2 |
2 files changed, 7 insertions, 3 deletions
diff --git a/src/server/game/AI/ScriptedAI/ScriptedCreature.cpp b/src/server/game/AI/ScriptedAI/ScriptedCreature.cpp index 8443c4b1bfb..ecdae923a9d 100644 --- a/src/server/game/AI/ScriptedAI/ScriptedCreature.cpp +++ b/src/server/game/AI/ScriptedAI/ScriptedCreature.cpp @@ -454,9 +454,11 @@ bool ScriptedAI::EnterEvadeIfOutOfCombatArea(uint32 const diff) if (x > 3218.86f && x < 3275.69f && y < 572.40f && y > 484.68f) return false; break; - default: - sLog->outError("TSCR: EnterEvadeIfOutOfCombatArea used for creature entry %u, but does not have any definition.", me->GetEntry()); - return false; + default: // For most of creatures that certain area is their home area. + sLog->outDetail("TSCR: EnterEvadeIfOutOfCombatArea used for creature entry %u, but does not have any definition. Using the default one.", me->GetEntry()); + uint32 homeAreaId = me->GetMap()->GetAreaId(me->GetHomePosition().GetPositionX(), me->GetHomePosition().GetPositionY(), me->GetHomePosition().GetPositionZ()); + if(me->GetAreaId() == homeAreaId) + return false; } EnterEvadeMode(); diff --git a/src/server/scripts/Northrend/Ulduar/ulduar/boss_ignis.cpp b/src/server/scripts/Northrend/Ulduar/ulduar/boss_ignis.cpp index 53c19b00ee4..2331cc9a68c 100644 --- a/src/server/scripts/Northrend/Ulduar/ulduar/boss_ignis.cpp +++ b/src/server/scripts/Northrend/Ulduar/ulduar/boss_ignis.cpp @@ -273,6 +273,8 @@ class boss_ignis : public CreatureScript } DoMeleeAttackIfReady(); + + EnterEvadeIfOutOfCombatArea(diff); } private: |