diff options
author | Trazom62 <none@none> | 2010-01-09 13:05:47 +0100 |
---|---|---|
committer | Trazom62 <none@none> | 2010-01-09 13:05:47 +0100 |
commit | 12f31a9e87f8af4f4c1a480312f93fa7d29828e1 (patch) | |
tree | 8d7bbcf73beadfa337adf2d932eceed4f561ad95 | |
parent | dcf4883b51e943f2b514166e278fe5fba94e663b (diff) |
*Fix Drakarri Colossus event not starting
- didn't started if the colossus was spawn after the mojo
- avoid hard-coded coord
--HG--
branch : trunk
-rw-r--r-- | src/bindings/scripts/scripts/northrend/gundrak/boss_drakkari_colossus.cpp | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/src/bindings/scripts/scripts/northrend/gundrak/boss_drakkari_colossus.cpp b/src/bindings/scripts/scripts/northrend/gundrak/boss_drakkari_colossus.cpp index 6e5925ac2af..854ed66aaa1 100644 --- a/src/bindings/scripts/scripts/northrend/gundrak/boss_drakkari_colossus.cpp +++ b/src/bindings/scripts/scripts/northrend/gundrak/boss_drakkari_colossus.cpp @@ -224,11 +224,6 @@ struct TRINITY_DLL_DECL npc_living_mojoAI : public ScriptedAI { HeroicMode = pCreature->GetMap()->IsHeroic(); pInstance = pCreature->GetInstanceData(); - if(pInstance) - { - if (pCreature->GetMap()->IsDungeon()) - pColossus = CAST_CRE(pCreature->GetUnit(*pCreature, pInstance->GetData64(DATA_DRAKKARI_COLOSSUS))); - } } Creature* pColossus; @@ -242,22 +237,27 @@ struct TRINITY_DLL_DECL npc_living_mojoAI : public ScriptedAI void Reset() { + uiMojoWaveTimer = 2000; + uiMojoPuddleTimer = 7000; + } + + void EnterCombat(Unit* who) + { + if (pInstance) + pColossus = m_creature->GetCreature(*m_creature, pInstance->GetData64(DATA_DRAKKARI_COLOSSUS)); + //Check if the npc is near of Drakkari Colossus. - if (m_creature->IsInRange3d(1672.959,743.487,143.337,0.0f,17.0f)) + if (pColossus && m_creature->IsInRange3d(pColossus->GetHomePosition().GetPositionX(),pColossus->GetHomePosition().GetPositionY(),pColossus->GetHomePosition().GetPositionZ(),0.0f,17.0f)) m_creature->SetReactState(REACT_PASSIVE); else - { m_creature->SetReactState(REACT_AGGRESSIVE); - uiMojoWaveTimer = 2000; - uiMojoPuddleTimer = 7000; - } } void DamageTaken(Unit* pDone_by, uint32& uiDamage) { if (m_creature->HasReactState(REACT_PASSIVE)) { - if (pColossus && !pColossus->isInCombat()) + if (pColossus && pColossus->isAlive() && !pColossus->isInCombat()) { pColossus->RemoveAura(SPELL_FREEZE_ANIM); pColossus->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_OOC_NOT_ATTACKABLE); |