diff options
| author | Machiavelli <none@none> | 2010-05-22 14:42:13 +0200 |
|---|---|---|
| committer | Machiavelli <none@none> | 2010-05-22 14:42:13 +0200 |
| commit | 8b8466555074c667e868867afc80c18cca2cc121 (patch) | |
| tree | 3105e39426e61009f008c7bdee324f6c8a631f88 /src | |
| parent | fee834cb3cfa121932a0c80ad86ec96b3767f00d (diff) | |
Fix crash in npc_stinkbeardAI
Closes issue #2306
--HG--
branch : trunk
Diffstat (limited to 'src')
| -rw-r--r-- | src/scripts/northrend/zuldrak.cpp | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/src/scripts/northrend/zuldrak.cpp b/src/scripts/northrend/zuldrak.cpp index e35625d3701..a821ea4ffae 100644 --- a/src/scripts/northrend/zuldrak.cpp +++ b/src/scripts/northrend/zuldrak.cpp @@ -900,20 +900,23 @@ struct npc_stinkbeardAI : public npc_escortAI if (!UpdateVictim()) return; - if (me->getVictim()->GetPositionZ() >= 286.276) + if (Unit* victim = me->getVictim()) { - std::list<HostileReference *> t_list = me->getThreatManager().getThreatList(); - for (std::list<HostileReference *>::const_iterator itr = t_list.begin(); itr!= t_list.end(); ++itr) + if (victim->GetPositionZ() >= 286.276) { - if (Unit* pUnit = Unit::GetUnit(*me, (*itr)->getUnitGuid())) + std::list<HostileReference *> t_list = me->getThreatManager().getThreatList(); + for (std::list<HostileReference *>::const_iterator itr = t_list.begin(); itr!= t_list.end(); ++itr) { - if (pUnit->GetPositionZ() <= 286.276) + if (Unit* pUnit = Unit::GetUnit(*me, (*itr)->getUnitGuid())) { - me->getThreatManager().resetAllAggro(); - me->AddThreat(pUnit,5.0f); - break; + if (pUnit->GetPositionZ() <= 286.276) + { + me->getThreatManager().resetAllAggro(); + me->AddThreat(pUnit,5.0f); + break; + } + EnterEvadeMode(); } - EnterEvadeMode(); } } } |
