--HG--
branch : trunk
This commit is contained in:
megamage
2009-04-24 11:12:01 -05:00
5 changed files with 1456 additions and 6 deletions
File diff suppressed because it is too large Load Diff
@@ -217,7 +217,7 @@ struct EventAI_CreatureError
extern UNORDERED_MAP<uint32, EventAI_CreatureError> EventAI_CreatureErrorPreventionList; extern UNORDERED_MAP<uint32, EventAI_CreatureError> EventAI_CreatureErrorPreventionList;
//Defines //Defines
#define EVENTAI_EMPTY_EVENTLIST "SD2: Eventlist for Creature %i is empty but creature is using Mob_EventAI. Preventing EventAI on this creature." #define EVENTAI_EMPTY_EVENTLIST "TSCR: Eventlist for Creature %i is empty but creature is using Mob_EventAI. Preventing EventAI on this creature."
*/ */
#endif #endif
@@ -247,10 +247,11 @@ struct TRINITY_DLL_DECL boss_chromaggusAI : public ScriptedAI
std::list<HostilReference*>::iterator i; std::list<HostilReference*>::iterator i;
for (i = m_creature->getThreatManager().getThreatList().begin();i != m_creature->getThreatManager().getThreatList().end(); ++i) for (i = m_creature->getThreatManager().getThreatList().begin();i != m_creature->getThreatManager().getThreatList().end();)
{ {
Unit* pUnit = NULL; Unit* pUnit = NULL;
pUnit = Unit::GetUnit((*m_creature), (*i)->getUnitGuid()); pUnit = Unit::GetUnit((*m_creature), (*i)->getUnitGuid());
++i;
if (pUnit) if (pUnit)
{ {
@@ -94,9 +94,10 @@ struct TRINITY_DLL_DECL boss_patchwerkAI : public ScriptedAI
Unit* pTemp = NULL; Unit* pTemp = NULL;
std::list<HostilReference*>::iterator i = m_creature->getThreatManager().getThreatList().begin(); std::list<HostilReference*>::iterator i = m_creature->getThreatManager().getThreatList().begin();
for (i = m_creature->getThreatManager().getThreatList().begin(); i!=m_creature->getThreatManager().getThreatList().end(); ++i) for (i = m_creature->getThreatManager().getThreatList().begin(); i!=m_creature->getThreatManager().getThreatList().end();)
{ {
pTemp = Unit::GetUnit((*m_creature),(*i)->getUnitGuid()); pTemp = Unit::GetUnit((*m_creature),(*i)->getUnitGuid());
++i;
if (pTemp && pTemp->isAlive() && pTemp->GetHealth() > MostHP && m_creature->GetDistance2d(pTemp) < 5) if (pTemp && pTemp->isAlive() && pTemp->GetHealth() > MostHP && m_creature->GetDistance2d(pTemp) < 5)
{ {
MostHP = pTemp->GetHealth(); MostHP = pTemp->GetHealth();
@@ -913,9 +913,10 @@ struct TRINITY_DLL_DECL boss_kaelthasAI : public ScriptedAI
m_creature->GetMotionMaster()->MoveIdle(); m_creature->GetMotionMaster()->MoveIdle();
DoTeleportTo(GRAVITY_X, GRAVITY_Y, GRAVITY_Z); DoTeleportTo(GRAVITY_X, GRAVITY_Y, GRAVITY_Z);
// 1) Kael'thas will portal the whole raid right into his body // 1) Kael'thas will portal the whole raid right into his body
for (i = m_creature->getThreatManager().getThreatList().begin(); i!= m_creature->getThreatManager().getThreatList().end();++i) for (i = m_creature->getThreatManager().getThreatList().begin(); i!= m_creature->getThreatManager().getThreatList().end();)
{ {
Unit* pUnit = Unit::GetUnit((*m_creature), (*i)->getUnitGuid()); Unit* pUnit = Unit::GetUnit((*m_creature), (*i)->getUnitGuid());
++i;
if(pUnit && (pUnit->GetTypeId() == TYPEID_PLAYER)) if(pUnit && (pUnit->GetTypeId() == TYPEID_PLAYER))
{ {
//Use work around packet to prevent player from being dropped from combat //Use work around packet to prevent player from being dropped from combat
@@ -937,9 +938,10 @@ struct TRINITY_DLL_DECL boss_kaelthasAI : public ScriptedAI
} }
// 2) At that point he will put a Gravity Lapse debuff on everyone // 2) At that point he will put a Gravity Lapse debuff on everyone
for (i = m_creature->getThreatManager().getThreatList().begin(); i!= m_creature->getThreatManager().getThreatList().end();i++) for (i = m_creature->getThreatManager().getThreatList().begin(); i!= m_creature->getThreatManager().getThreatList().end();)
{ {
Unit* pUnit = Unit::GetUnit((*m_creature), (*i)->getUnitGuid()); Unit* pUnit = Unit::GetUnit((*m_creature), (*i)->getUnitGuid());
++i;
if(pUnit && pUnit->GetTypeId() == TYPEID_PLAYER) if(pUnit && pUnit->GetTypeId() == TYPEID_PLAYER)
{ {
m_creature->CastSpell(pUnit, SPELL_KNOCKBACK, true); m_creature->CastSpell(pUnit, SPELL_KNOCKBACK, true);
@@ -971,9 +973,10 @@ struct TRINITY_DLL_DECL boss_kaelthasAI : public ScriptedAI
case 3: case 3:
//Remove flight //Remove flight
for (i = m_creature->getThreatManager().getThreatList().begin(); i!= m_creature->getThreatManager().getThreatList().end();i++) for (i = m_creature->getThreatManager().getThreatList().begin(); i!= m_creature->getThreatManager().getThreatList().end();)
{ {
Unit* pUnit = Unit::GetUnit((*m_creature), (*i)->getUnitGuid()); Unit* pUnit = Unit::GetUnit((*m_creature), (*i)->getUnitGuid());
++i;
if(pUnit && pUnit->GetTypeId() == TYPEID_PLAYER) if(pUnit && pUnit->GetTypeId() == TYPEID_PLAYER)
{ {
//Using packet workaround //Using packet workaround