diff options
author | n0n4m3 <none@none> | 2009-12-25 18:28:29 +0100 |
---|---|---|
committer | n0n4m3 <none@none> | 2009-12-25 18:28:29 +0100 |
commit | 4dae4e4083a13f18bdf0873a88fd0de10edb7fa2 (patch) | |
tree | 226917fd2188dd2448b268c685fb46954cde3a01 | |
parent | 7fbab0f69e95f20838c1a7c6912046a085282317 (diff) |
Apply code style for my prev. commit and fixed spell anti-magic zone
--HG--
branch : trunk
5 files changed, 545 insertions, 504 deletions
diff --git a/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/boss_argent_challenge.cpp b/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/boss_argent_challenge.cpp index 02ad675e8b7..55639eb4eb7 100644 --- a/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/boss_argent_challenge.cpp +++ b/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/boss_argent_challenge.cpp @@ -27,28 +27,27 @@ EndScriptData */ enum { //yells - //eadric - SPELL_VENGEANCE = 66889, - SPELL_RADIANCE = 66862, + SPELL_VENGEANCE = 66889, + SPELL_RADIANCE = 66862, SPELL_RADIANCE_H = 67681, - SPELL_HAMMER_OF_JUSTICE = 66940, + SPELL_HAMMER_OF_JUSTICE = 66940, SPELL_HAMMER = 67680, //paletress SPELL_SMITE = 66536, SPELL_SMITE_H = 67674, - SPELL_HOLY_FIRE = 66538, + SPELL_HOLY_FIRE = 66538, SPELL_HOLY_FIRE_H = 67676, SPELL_RENEW = 66537, SPELL_RENEW_H = 67675, - SPELL_HOLY_NOVA = 66546, + SPELL_HOLY_NOVA = 66546, SPELL_SHIELD = 66515, SPELL_CONFESS = 66547, //memory SPELL_FEAR = 66552, SPELL_FEAR_H = 67677, SPELL_SHADOWS = 66619, - SPELL_SHADOWS_H = 67678, + SPELL_SHADOWS_H = 67678, SPELL_OLD_WOUNDS = 66620, SPELL_OLD_WOUNDS_H = 67679, }; @@ -99,6 +98,7 @@ struct TRINITY_DLL_DECL boss_eadricAI : public ScriptedAI { if (!m_pInstance) return; + if (m_pInstance->GetData(TYPE_ARGENT_CHALLENGE) == DONE) m_creature->ForcedDespawn(); else @@ -109,35 +109,42 @@ struct TRINITY_DLL_DECL boss_eadricAI : public ScriptedAI { if (!m_pInstance) return; + m_pInstance->SetData(TYPE_ARGENT_CHALLENGE, DONE); } void UpdateAI(const uint32 diff) { - if (!m_creature->SelectVictim() || !m_creature->getVictim()) - return; + if (!m_creature->SelectVictim() || !m_creature->getVictim()) + return; if (Vengeance_Timer < diff) - { + { DoCast(m_creature, SPELL_VENGEANCE); - Vengeance_Timer = 12000; - }else Vengeance_Timer -= diff; + Vengeance_Timer = 12000; + } + else + Vengeance_Timer -= diff; if (Radiance_Timer < diff) - { + { DoCast(m_creature, m_bIsRegularMode ? SPELL_RADIANCE : SPELL_RADIANCE_H); - Radiance_Timer = 20000; - }else Radiance_Timer -= diff; + Radiance_Timer = 20000; + } + else + Radiance_Timer -= diff; if (Hammer_Timer < diff) - { - if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,0)) + { + if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,0)) { DoCast(target, SPELL_HAMMER_OF_JUSTICE); HammerTarget = target->GetGUID(); } - Hammer_Timer = 50000; - }else Hammer_Timer -= diff; + Hammer_Timer = 50000; + } + else + Hammer_Timer -= diff; if (Hammer_Dmg_Timer < diff) { @@ -145,10 +152,11 @@ struct TRINITY_DLL_DECL boss_eadricAI : public ScriptedAI DoCast(pHammerTarget, SPELL_HAMMER); Hammer_Dmg_Timer = 50000; } - else Hammer_Dmg_Timer -= diff; + else + Hammer_Dmg_Timer -= diff; - DoMeleeAttackIfReady(); - } + DoMeleeAttackIfReady(); + } }; CreatureAI* GetAI_boss_eadric(Creature* pCreature) @@ -160,301 +168,313 @@ CreatureAI* GetAI_boss_eadric(Creature* pCreature) struct TRINITY_DLL_DECL boss_paletressAI : public ScriptedAI { boss_paletressAI(Creature* pCreature) : ScriptedAI(pCreature) - { - Reset(); - m_pInstance = (ScriptedInstance*)pCreature->GetInstanceData(); - } + { + Reset(); + m_pInstance = (ScriptedInstance*)pCreature->GetInstanceData(); + } - ScriptedInstance* m_pInstance; + ScriptedInstance* m_pInstance; bool m_bIsRegularMode; - uint32 Smite_Timer; - uint32 Holy_Fire_Timer; - uint32 Renew_Timer; - uint32 Shield_Delay; - uint32 Shield_Check; + uint32 Smite_Timer; + uint32 Holy_Fire_Timer; + uint32 Renew_Timer; + uint32 Shield_Delay; + uint32 Shield_Check; - bool summoned; - bool shielded; + bool summoned; + bool shielded; void Reset() { - m_creature->SetRespawnDelay(999999999); - m_creature->RemoveAurasDueToSpell(SPELL_SHIELD); - Smite_Timer = 5000; - Holy_Fire_Timer = 10000; - Renew_Timer = 7000; - Shield_Delay = 0; - Shield_Check = 1000; - summoned = false; - shielded = false; + m_creature->SetRespawnDelay(999999999); + m_creature->RemoveAurasDueToSpell(SPELL_SHIELD); + Smite_Timer = 5000; + Holy_Fire_Timer = 10000; + Renew_Timer = 7000; + Shield_Delay = 0; + Shield_Check = 1000; + summoned = false; + shielded = false; } - void EnterEvadeMode() - { - m_creature->RemoveAurasDueToSpell(SPELL_SHIELD); - Smite_Timer = 2000; - Holy_Fire_Timer = 10000; - Renew_Timer = 7000; - Shield_Delay = 0; - Shield_Check = 1000; - summoned = false; - shielded = false; - m_creature->RemoveArenaAuras(true); - m_creature->SendMonsterMove(746.864441, 660.918762, 411.695465, 4.698700, m_creature->GetDefaultMovementType(), 1); - m_creature->GetMap()->CreatureRelocation(m_creature, 754.360779, 660.816162, 412.395996, 4.698700); - m_creature->SetHealth(m_creature->GetMaxHealth()); - } + void EnterEvadeMode() + { + m_creature->RemoveAurasDueToSpell(SPELL_SHIELD); + Smite_Timer = 2000; + Holy_Fire_Timer = 10000; + Renew_Timer = 7000; + Shield_Delay = 0; + Shield_Check = 1000; + summoned = false; + shielded = false; + m_creature->RemoveArenaAuras(true); + m_creature->SendMonsterMove(746.864441, 660.918762, 411.695465, 4.698700, m_creature->GetDefaultMovementType(), 1); + m_creature->GetMap()->CreatureRelocation(m_creature, 754.360779, 660.816162, 412.395996, 4.698700); + m_creature->SetHealth(m_creature->GetMaxHealth()); + } - void Aggro(Unit* pWho) - { - if (!m_pInstance) - return; - m_pInstance->SetData(TYPE_ARGENT_CHALLENGE, IN_PROGRESS); - } + void Aggro(Unit* pWho) + { + if (!m_pInstance) + return; - void JustDied(Unit* pKiller) - { - if (!m_pInstance) - return; - m_pInstance->SetData(TYPE_ARGENT_CHALLENGE, DONE); - } + m_pInstance->SetData(TYPE_ARGENT_CHALLENGE, IN_PROGRESS); + } - void UpdateAI(const uint32 diff) + void JustDied(Unit* pKiller) + { + if (!m_pInstance) + return; + + m_pInstance->SetData(TYPE_ARGENT_CHALLENGE, DONE); + } + + void UpdateAI(const uint32 diff) { if (!m_creature->SelectVictim() || !m_creature->getVictim()) return; - if (Smite_Timer < diff) + if (Smite_Timer < diff) { - if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(target, m_bIsRegularMode ? SPELL_SMITE : SPELL_SMITE_H); + if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,0)) + DoCast(target, m_bIsRegularMode ? SPELL_SMITE : SPELL_SMITE_H); Smite_Timer = 2000; - }else Smite_Timer -= diff; + } + else + Smite_Timer -= diff; - if (Holy_Fire_Timer < diff) + if (Holy_Fire_Timer < diff) { - m_creature->CastStop(m_bIsRegularMode ? SPELL_SMITE : SPELL_SMITE_H); - if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(target, m_bIsRegularMode ? SPELL_HOLY_FIRE : SPELL_HOLY_FIRE_H); + m_creature->CastStop(m_bIsRegularMode ? SPELL_SMITE : SPELL_SMITE_H); + if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,0)) + DoCast(target, m_bIsRegularMode ? SPELL_HOLY_FIRE : SPELL_HOLY_FIRE_H); Holy_Fire_Timer = 10000; - }else Holy_Fire_Timer -= diff; + } + else + Holy_Fire_Timer -= diff; - if (Renew_Timer < diff) + if (Renew_Timer < diff) { - m_creature->CastStop(m_bIsRegularMode ? SPELL_SMITE : SPELL_SMITE_H); - m_creature->CastStop(m_bIsRegularMode ? SPELL_HOLY_FIRE : SPELL_HOLY_FIRE_H); - switch(urand(0, 1)) + m_creature->CastStop(m_bIsRegularMode ? SPELL_SMITE : SPELL_SMITE_H); + m_creature->CastStop(m_bIsRegularMode ? SPELL_HOLY_FIRE : SPELL_HOLY_FIRE_H); + switch(urand(0, 1)) { case 0: - if (Creature* pTemp = ((Creature*)Unit::GetUnit((*m_creature), m_pInstance->GetData64(DATA_MEMORY)))) - if (pTemp->isAlive()) - DoCast(pTemp, m_bIsRegularMode ? SPELL_RENEW : SPELL_RENEW_H); - else - DoCast(pTemp, m_bIsRegularMode ? SPELL_RENEW : SPELL_RENEW_H); + { + if (Creature* pTemp = ((Creature*)Unit::GetUnit((*m_creature), m_pInstance->GetData64(DATA_MEMORY)))) + if (pTemp->isAlive()) + DoCast(pTemp, m_bIsRegularMode ? SPELL_RENEW : SPELL_RENEW_H); + else + DoCast(pTemp, m_bIsRegularMode ? SPELL_RENEW : SPELL_RENEW_H); + } break; - case 1: - DoCast(m_creature, m_bIsRegularMode ? SPELL_RENEW : SPELL_RENEW_H); + case 1: + DoCast(m_creature, m_bIsRegularMode ? SPELL_RENEW : SPELL_RENEW_H); break; - } + } Renew_Timer = 15000; - }else Renew_Timer -= diff; - - if ((m_creature->GetHealth()*100 / m_creature->GetMaxHealth()) < 35 && !summoned) - { - m_creature->CastStop(m_bIsRegularMode ? SPELL_SMITE : SPELL_SMITE_H); - m_creature->CastStop(m_bIsRegularMode ? SPELL_HOLY_FIRE : SPELL_HOLY_FIRE_H); - DoCast(m_creature, SPELL_HOLY_NOVA); - switch(urand(0, 24)) + } + else + Renew_Timer -= diff; + + if ((m_creature->GetHealth()*100 / m_creature->GetMaxHealth()) < 35 && !summoned) + { + m_creature->CastStop(m_bIsRegularMode ? SPELL_SMITE : SPELL_SMITE_H); + m_creature->CastStop(m_bIsRegularMode ? SPELL_HOLY_FIRE : SPELL_HOLY_FIRE_H); + DoCast(m_creature, SPELL_HOLY_NOVA); + switch(urand(0, 24)) { case 0: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_ALGALON, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 1: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_CHROMAGGUS, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 2: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_CYANIGOSA, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 3: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_DELRISSA, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 4: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_ECK, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 5: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_ENTROPIUS, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 6: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_GRUUL, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 7: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_HAKKAR, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 8: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_HEIGAN, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 9: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_HEROD, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 10: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_HOGGER, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 11: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_IGNIS, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 12: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_ILLIDAN, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 13: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_INGVAR, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 14: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_KALITHRESH, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 15: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_LUCIFRON, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 16: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_MALCHEZAAR, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 17: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_MUTANUS, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 18: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_ONYXIA, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 19: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_THUNDERAAN, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 20: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_VANCLEEF, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 21: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_VASHJ, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 22: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_VEKNILASH, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 23: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_VEZAX, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - case 24: - if (Creature* pTemp = m_creature->SummonCreature(MEMORY_ARCHIMONDE, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) - { - pTemp->AddThreat(m_creature->getVictim(),1000.0f); - pTemp->AI()->AttackStart(m_creature->getVictim()); - } - break; - } - summoned = true; - Shield_Delay = 1000; + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_ALGALON, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 1: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_CHROMAGGUS, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 2: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_CYANIGOSA, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 3: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_DELRISSA, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 4: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_ECK, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 5: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_ENTROPIUS, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 6: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_GRUUL, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 7: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_HAKKAR, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 8: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_HEIGAN, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 9: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_HEROD, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 10: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_HOGGER, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 11: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_IGNIS, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 12: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_ILLIDAN, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 13: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_INGVAR, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 14: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_KALITHRESH, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 15: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_LUCIFRON, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 16: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_MALCHEZAAR, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 17: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_MUTANUS, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 18: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_ONYXIA, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 19: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_THUNDERAAN, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 20: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_VANCLEEF, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 21: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_VASHJ, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 22: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_VEKNILASH, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 23: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_VEZAX, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; + case 24: + if (Creature* pTemp = m_creature->SummonCreature(MEMORY_ARCHIMONDE, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000)) + { + pTemp->AddThreat(m_creature->getVictim(),1000.0f); + pTemp->AI()->AttackStart(m_creature->getVictim()); + } + break; } + summoned = true; + Shield_Delay = 1000; + } if (Shield_Delay < diff && !shielded && summoned) - { + { m_creature->CastStop(m_bIsRegularMode ? SPELL_SMITE : SPELL_SMITE_H); m_creature->CastStop(m_bIsRegularMode ? SPELL_HOLY_FIRE : SPELL_HOLY_FIRE_H); DoCast(m_creature, SPELL_SHIELD); - shielded = true; + shielded = true; Shield_Check = 1000; - }else Shield_Delay -= diff; + } + else + Shield_Delay -= diff; if (!m_creature->FindNearestCreature(35052, 200, true) && !m_creature->FindNearestCreature(35041, 200, true) && !m_creature->FindNearestCreature(35033, 200, true) && !m_creature->FindNearestCreature(35046, 200, true) && !m_creature->FindNearestCreature(35043, 200, true) && !m_creature->FindNearestCreature(35047, 200, true) && @@ -483,52 +503,58 @@ CreatureAI* GetAI_boss_paletress(Creature* pCreature) struct TRINITY_DLL_DECL mob_toc5_memoryAI : public ScriptedAI { mob_toc5_memoryAI(Creature* pCreature) : ScriptedAI(pCreature) - { - Reset(); - m_pInstance = (ScriptedInstance*)pCreature->GetInstanceData(); - } + { + Reset(); + m_pInstance = (ScriptedInstance*)pCreature->GetInstanceData(); + } - ScriptedInstance* m_pInstance; + ScriptedInstance* m_pInstance; bool m_bIsRegularMode; - uint32 Old_Wounds_Timer; - uint32 Shadows_Timer; - uint32 Fear_Timer; + uint32 Old_Wounds_Timer; + uint32 Shadows_Timer; + uint32 Fear_Timer; void Reset() { - Old_Wounds_Timer = 5000; - Shadows_Timer = 8000; - Fear_Timer = 13000; + Old_Wounds_Timer = 5000; + Shadows_Timer = 8000; + Fear_Timer = 13000; } - void UpdateAI(const uint32 diff) + void UpdateAI(const uint32 diff) { if (!m_creature->SelectVictim() || !m_creature->getVictim()) return; - if (Old_Wounds_Timer < diff) + if (Old_Wounds_Timer < diff) { - if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(target, m_bIsRegularMode ? SPELL_OLD_WOUNDS : SPELL_OLD_WOUNDS_H); + if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,0)) + DoCast(target, m_bIsRegularMode ? SPELL_OLD_WOUNDS : SPELL_OLD_WOUNDS_H); Old_Wounds_Timer = 10000; - }else Old_Wounds_Timer -= diff; + } + else + Old_Wounds_Timer -= diff; - if (Fear_Timer < diff) + if (Fear_Timer < diff) { - DoCast(m_creature, m_bIsRegularMode ? SPELL_FEAR : SPELL_FEAR_H); + DoCast(m_creature, m_bIsRegularMode ? SPELL_FEAR : SPELL_FEAR_H); Fear_Timer = 40000; - }else Fear_Timer -= diff; + } + else + Fear_Timer -= diff; - if (Shadows_Timer < diff) + if (Shadows_Timer < diff) { - if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,1)) - DoCast(target, m_bIsRegularMode ? SPELL_SHADOWS : SPELL_SHADOWS_H); + if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,1)) + DoCast(target, m_bIsRegularMode ? SPELL_SHADOWS : SPELL_SHADOWS_H); Shadows_Timer = 10000; - }else Shadows_Timer -= diff; + } + else + Shadows_Timer -= diff; - DoMeleeAttackIfReady(); - } + DoMeleeAttackIfReady(); + } }; CreatureAI* GetAI_mob_toc5_memory(Creature* pCreature) @@ -542,16 +568,16 @@ void AddSC_boss_argent_challenge() NewScript = new Script; NewScript->Name = "boss_eadric"; - NewScript->GetAI = &GetAI_boss_eadric; + NewScript->GetAI = &GetAI_boss_eadric; NewScript->RegisterSelf(); - NewScript = new Script; + NewScript = new Script; NewScript->Name = "boss_paletress"; - NewScript->GetAI = &GetAI_boss_paletress; + NewScript->GetAI = &GetAI_boss_paletress; NewScript->RegisterSelf(); - NewScript = new Script; + NewScript = new Script; NewScript->Name = "mob_toc5_memory"; - NewScript->GetAI = &GetAI_mob_toc5_memory; + NewScript->GetAI = &GetAI_mob_toc5_memory; NewScript->RegisterSelf(); } diff --git a/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/boss_black_knight.cpp b/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/boss_black_knight.cpp index eda17bf49c9..255adceecec 100644 --- a/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/boss_black_knight.cpp +++ b/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/boss_black_knight.cpp @@ -31,78 +31,81 @@ enum //undead SPELL_PLAGUE_STRIKE = 67724, SPELL_PLAGUE_STRIKE_H = 67884, - SPELL_ICY_TOUCH = 67718, + SPELL_ICY_TOUCH = 67718, SPELL_ICY_TOUCH_H = 67881, SPELL_OBLITERATE = 67725, SPELL_OBLITERATE_H = 67883, - SPELL_CHOKE = 68306, + SPELL_CHOKE = 68306, //skeleton - SPELL_ARMY = 42650, //replacing original one, since that one spawns millions of ghouls!! + SPELL_ARMY = 42650, //replacing original one, since that one spawns millions of ghouls!! //ghost SPELL_DEATH = 67808, SPELL_DEATH_H = 67875, - SPELL_MARK = 67823, + SPELL_MARK = 67823, //risen ghoul - SPELL_CLAW = 67879, + SPELL_CLAW = 67879, SPELL_EXPLODE = 67729, - SPELL_EXPLODE_H = 67886, - SPELL_LEAP = 67749, + SPELL_EXPLODE_H = 67886, + SPELL_LEAP = 67749, SPELL_LEAP_H = 67880, //sword ID - EQUIP_SWORD = 40343 + EQUIP_SWORD = 40343 }; // Risen Ghoul struct TRINITY_DLL_DECL mob_toc5_risen_ghoulAI : public ScriptedAI { mob_toc5_risen_ghoulAI(Creature* pCreature) : ScriptedAI(pCreature) - { - Reset(); - m_pInstance = (ScriptedInstance*)pCreature->GetInstanceData(); - } + { + Reset(); + m_pInstance = (ScriptedInstance*)pCreature->GetInstanceData(); + } - ScriptedInstance* m_pInstance; + ScriptedInstance* m_pInstance; bool m_bIsRegularMode; - uint32 Attack; + uint32 Attack; void Reset() { - Attack = 2500; + Attack = 2500; } - void UpdateAI(const uint32 diff) + void UpdateAI(const uint32 diff) { if (!m_creature->SelectVictim() || !m_creature->getVictim()) return; - if (Attack < diff) + if (Attack < diff) { - if (Creature* pTemp = ((Creature*)Unit::GetUnit((*m_creature), m_pInstance->GetData64(DATA_BLACK_KNIGHT)))) - if (pTemp->isAlive()) - if ((pTemp->GetHealth()*100 / pTemp->GetMaxHealth()) < 25) - DoCast(m_creature, m_bIsRegularMode ? SPELL_EXPLODE : SPELL_EXPLODE_H); - if (m_creature->IsWithinDistInMap(m_creature->getVictim(), 4)) - { - DoCast(m_creature->getVictim(), SPELL_CLAW); - if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,1)) - m_creature->AI()->AttackStart(target); - Attack = 2500; - }else - if (m_creature->IsWithinDistInMap(m_creature->getVictim(), 30)) - { - DoCast(m_creature->getVictim(), m_bIsRegularMode ? SPELL_LEAP : SPELL_LEAP_H); - Attack = 2500; - } - }else Attack -= diff; - - if ((m_creature->GetHealth()*100 / m_creature->GetMaxHealth()) < 25) - DoCast(m_creature, m_bIsRegularMode ? SPELL_EXPLODE : SPELL_EXPLODE_H); + if (Creature* pTemp = ((Creature*)Unit::GetUnit((*m_creature), m_pInstance->GetData64(DATA_BLACK_KNIGHT)))) + if (pTemp->isAlive()) + if ((pTemp->GetHealth()*100 / pTemp->GetMaxHealth()) < 25) + DoCast(m_creature, m_bIsRegularMode ? SPELL_EXPLODE : SPELL_EXPLODE_H); + if (m_creature->IsWithinDistInMap(m_creature->getVictim(), 4)) + { + DoCast(m_creature->getVictim(), SPELL_CLAW); + if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,1)) + m_creature->AI()->AttackStart(target); + Attack = 2500; + } + else + if (m_creature->IsWithinDistInMap(m_creature->getVictim(), 30)) + { + DoCast(m_creature->getVictim(), m_bIsRegularMode ? SPELL_LEAP : SPELL_LEAP_H); + Attack = 2500; + } + } + else + Attack -= diff; + + if ((m_creature->GetHealth()*100 / m_creature->GetMaxHealth()) < 25) + DoCast(m_creature, m_bIsRegularMode ? SPELL_EXPLODE : SPELL_EXPLODE_H); - DoMeleeAttackIfReady(); - } + DoMeleeAttackIfReady(); + } }; CreatureAI* GetAI_mob_toc5_risen_ghoul(Creature* pCreature) @@ -114,106 +117,105 @@ CreatureAI* GetAI_mob_toc5_risen_ghoul(Creature* pCreature) struct TRINITY_DLL_DECL boss_black_knightAI : public ScriptedAI { boss_black_knightAI(Creature* pCreature) : ScriptedAI(pCreature) - { - Reset(); - m_pInstance = (ScriptedInstance*)pCreature->GetInstanceData(); - } + { + Reset(); + m_pInstance = (ScriptedInstance*)pCreature->GetInstanceData(); + } ScriptedInstance* m_pInstance; bool m_bIsRegularMode; - uint32 Plague_Strike_Timer; - uint32 Icy_Touch_Timer; - uint32 Obliterate_Timer; - uint32 Choke_Timer; - uint32 Death_Timer; - uint32 Mark_Timer; - uint32 Phase_Delay; - uint32 Summon_Ghoul; + uint32 Plague_Strike_Timer; + uint32 Icy_Touch_Timer; + uint32 Obliterate_Timer; + uint32 Choke_Timer; + uint32 Death_Timer; + uint32 Mark_Timer; + uint32 Phase_Delay; + uint32 Summon_Ghoul; - bool phase1; - bool phase2; - bool phase3; - bool ghoul; + bool phase1; + bool phase2; + bool phase3; + bool ghoul; void Reset() { - m_creature->SetRespawnDelay(999999999); - m_creature->SetDisplayId(29837); - SetEquipmentSlots(false, EQUIP_SWORD, EQUIP_NO_CHANGE, EQUIP_NO_CHANGE); - Plague_Strike_Timer = 5000; - Icy_Touch_Timer = 10000; - Obliterate_Timer = 16000; - Choke_Timer = 15000; - Summon_Ghoul = 4000; - phase1 = true; - phase2 = false; - phase3 = false; - ghoul = false; + m_creature->SetRespawnDelay(999999999); + m_creature->SetDisplayId(29837); + SetEquipmentSlots(false, EQUIP_SWORD, EQUIP_NO_CHANGE, EQUIP_NO_CHANGE); + Plague_Strike_Timer = 5000; + Icy_Touch_Timer = 10000; + Obliterate_Timer = 16000; + Choke_Timer = 15000; + Summon_Ghoul = 4000; + phase1 = true; + phase2 = false; + phase3 = false; + ghoul = false; } - void EnterEvadeMode() - { - m_creature->SetDisplayId(29837); - Plague_Strike_Timer = 5000; - Icy_Touch_Timer = 10000; - Obliterate_Timer = 16000; - Choke_Timer = 15000; - Summon_Ghoul = 4000; - phase1 = true; - phase2 = false; - phase3 = false; - ghoul = false; - m_creature->RemoveArenaAuras(true); - m_creature->SendMonsterMove(746.864441, 660.918762, 411.695465, 4.698700, m_creature->GetDefaultMovementType(), 1); - m_creature->GetMap()->CreatureRelocation(m_creature, 754.360779, 660.816162, 412.395996, 4.698700); - m_creature->SetHealth(m_creature->GetMaxHealth()); - } + void EnterEvadeMode() + { + m_creature->SetDisplayId(29837); + Plague_Strike_Timer = 5000; + Icy_Touch_Timer = 10000; + Obliterate_Timer = 16000; + Choke_Timer = 15000; + Summon_Ghoul = 4000; + phase1 = true; + phase2 = false; + phase3 = false; + ghoul = false; + m_creature->RemoveArenaAuras(true); + m_creature->SendMonsterMove(746.864441, 660.918762, 411.695465, 4.698700, m_creature->GetDefaultMovementType(), 1); + m_creature->GetMap()->CreatureRelocation(m_creature, 754.360779, 660.816162, 412.395996, 4.698700); + m_creature->SetHealth(m_creature->GetMaxHealth()); + } - void Aggro(Unit* pWho) + void Aggro(Unit* pWho) { - if (!m_pInstance) - return; - if (m_pInstance->GetData(TYPE_BLACK_KNIGHT) == DONE) - m_creature->ForcedDespawn(); - else - m_pInstance->SetData(TYPE_BLACK_KNIGHT, IN_PROGRESS); + if (!m_pInstance) + return; + + if (m_pInstance->GetData(TYPE_BLACK_KNIGHT) == DONE) + m_creature->ForcedDespawn(); + else + m_pInstance->SetData(TYPE_BLACK_KNIGHT, IN_PROGRESS); } - void DamageTaken(Unit* pDoneBy, uint32& uiDamage) + void DamageTaken(Unit* pDoneBy, uint32& uiDamage) { - if (uiDamage > m_creature->GetHealth() && !phase3){ - uiDamage = 0; - if (phase2) - StartPhase3(); - if (phase1) - StartPhase2(); - } + if (uiDamage > m_creature->GetHealth() && !phase3){ + uiDamage = 0; + if (phase2) + StartPhase3(); + if (phase1) + StartPhase2(); } - void JustDied(Unit* pKiller) + void JustDied(Unit* pKiller) { - if (!m_pInstance) - return; - if (phase3) - { - m_pInstance->SetData(TYPE_BLACK_KNIGHT, DONE); - } - if (phase2) - if (!m_creature->isAlive()) - { - m_creature->Respawn(); - StartPhase3(); - } - if (phase1) - if (!m_creature->isAlive()) - { - m_creature->Respawn(); - StartPhase2(); - } - } + if (!m_pInstance) + return; - void StartPhase2() + if (phase3) + m_pInstance->SetData(TYPE_BLACK_KNIGHT, DONE); + if (phase2) + if (!m_creature->isAlive()) + { + m_creature->Respawn(); + StartPhase3(); + } + if (phase1) + if (!m_creature->isAlive()) + { + m_creature->Respawn(); + StartPhase2(); + } + } + + void StartPhase2() { m_creature->SetHealth(m_creature->GetMaxHealth()); m_creature->SetDisplayId(27550); @@ -238,60 +240,74 @@ struct TRINITY_DLL_DECL boss_black_knightAI : public ScriptedAI Mark_Timer = 9000; } - void UpdateAI(const uint32 diff) + void UpdateAI(const uint32 diff) { if (!m_creature->SelectVictim() || !m_creature->getVictim()) return; - if (Plague_Strike_Timer < diff && !phase3) + if (Plague_Strike_Timer < diff && !phase3) { - DoCast(m_creature->getVictim(), m_bIsRegularMode ? SPELL_PLAGUE_STRIKE : SPELL_PLAGUE_STRIKE_H); + DoCast(m_creature->getVictim(), m_bIsRegularMode ? SPELL_PLAGUE_STRIKE : SPELL_PLAGUE_STRIKE_H); Plague_Strike_Timer = 10500; - }else Plague_Strike_Timer -= diff; + } + else + Plague_Strike_Timer -= diff; - if (Icy_Touch_Timer < diff && !phase3) + if (Icy_Touch_Timer < diff && !phase3) { - DoCast(m_creature->getVictim(), m_bIsRegularMode ? SPELL_ICY_TOUCH : SPELL_ICY_TOUCH_H); + DoCast(m_creature->getVictim(), m_bIsRegularMode ? SPELL_ICY_TOUCH : SPELL_ICY_TOUCH_H); Icy_Touch_Timer = 10000; - }else Icy_Touch_Timer -= diff; + } + else + Icy_Touch_Timer -= diff; - if (Obliterate_Timer < diff && !phase3) + if (Obliterate_Timer < diff && !phase3) { - DoCast(m_creature->getVictim(), m_bIsRegularMode ? SPELL_OBLITERATE : SPELL_OBLITERATE_H); + DoCast(m_creature->getVictim(), m_bIsRegularMode ? SPELL_OBLITERATE : SPELL_OBLITERATE_H); Obliterate_Timer = 11000; - }else Obliterate_Timer -= diff; + } + else + Obliterate_Timer -= diff; - if (Choke_Timer < diff && phase1) + if (Choke_Timer < diff && phase1) { - if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,1)) - DoCast(m_creature->getVictim(), SPELL_CHOKE); - Choke_Timer = 15000; - }else Choke_Timer -= diff; - - if (Summon_Ghoul < diff && phase1 && !ghoul) + if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,1)) + DoCast(m_creature->getVictim(), SPELL_CHOKE); + Choke_Timer = 15000; + } + else + Choke_Timer -= diff; + + if (Summon_Ghoul < diff && phase1 && !ghoul) { - if (m_pInstance->GetData(DATA_TOC5_ANNOUNCER) == m_pInstance->GetData(DATA_JAEREN)) - m_creature->SummonCreature(NPC_RISEN_JAEREN, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000); - else - m_creature->SummonCreature(NPC_RISEN_ARELAS, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000); - ghoul = true; - }else Summon_Ghoul -= diff; - - if (Mark_Timer < diff && phase3) + if (m_pInstance->GetData(DATA_TOC5_ANNOUNCER) == m_pInstance->GetData(DATA_JAEREN)) + m_creature->SummonCreature(NPC_RISEN_JAEREN, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000); + else + m_creature->SummonCreature(NPC_RISEN_ARELAS, 0.0f, 0.0f, 0.0f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000); + ghoul = true; + } + else + Summon_Ghoul -= diff; + + if (Mark_Timer < diff && phase3) { - if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,1)) - DoCast(target, SPELL_MARK); - Mark_Timer = 15000; - }else Mark_Timer -= diff; - - if (Death_Timer < diff && phase3) + if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,1)) + DoCast(target, SPELL_MARK); + Mark_Timer = 15000; + } + else + Mark_Timer -= diff; + + if (Death_Timer < diff && phase3) { - DoCast(m_creature, m_bIsRegularMode ? SPELL_DEATH : SPELL_DEATH_H); - Death_Timer = 3500; - }else Death_Timer -= diff; + DoCast(m_creature, m_bIsRegularMode ? SPELL_DEATH : SPELL_DEATH_H); + Death_Timer = 3500; + } + else + Death_Timer -= diff; - DoMeleeAttackIfReady(); - } + DoMeleeAttackIfReady(); + } }; CreatureAI* GetAI_boss_black_knight(Creature* pCreature) @@ -305,11 +321,11 @@ void AddSC_boss_black_knight() NewScript = new Script; NewScript->Name = "mob_toc5_risen_ghoul"; - NewScript->GetAI = &GetAI_mob_toc5_risen_ghoul; + NewScript->GetAI = &GetAI_mob_toc5_risen_ghoul; NewScript->RegisterSelf(); - NewScript = new Script; + NewScript = new Script; NewScript->Name = "boss_black_knight"; - NewScript->GetAI = &GetAI_boss_black_knight; + NewScript->GetAI = &GetAI_boss_black_knight; NewScript->RegisterSelf(); } diff --git a/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/trial_of_the_champion.cpp b/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/trial_of_the_champion.cpp index 4d35f54daf0..15df0fbc5f9 100644 --- a/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/trial_of_the_champion.cpp +++ b/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/trial_of_the_champion.cpp @@ -69,16 +69,16 @@ struct TRINITY_DLL_DECL npc_toc5_announcerAI : public ScriptedAI if(pInstance->GetData(TYPE_GRAND_CHAMPIONS) == DONE && pInstance->GetData(TYPE_ARGENT_CHALLENGE) == NOT_STARTED && pInstance->GetData(TYPE_BLACK_KNIGHT) == NOT_STARTED) { - argent = RAND(35119,34928); + argent = RAND(35119,34928); m_creature->SummonCreature(argent, 746.864441, 660.918762, 411.695465, 4.698700, TEMPSUMMON_MANUAL_DESPAWN, 0); - pInstance->SetData(TYPE_ARGENT_CHALLENGE, IN_PROGRESS); + pInstance->SetData(TYPE_ARGENT_CHALLENGE, IN_PROGRESS); } if(pInstance->GetData(TYPE_GRAND_CHAMPIONS) == DONE && pInstance->GetData(TYPE_ARGENT_CHALLENGE) == DONE && pInstance->GetData(TYPE_BLACK_KNIGHT) == NOT_STARTED) { m_creature->SummonCreature(NPC_BLACK_KNIGHT, 746.864441, 660.918762, 411.695465, 4.698700, TEMPSUMMON_MANUAL_DESPAWN, 0); pInstance->SetData(TYPE_BLACK_KNIGHT, IN_PROGRESS); - m_creature->DealDamage(m_creature, m_creature->GetHealth(), NULL, DIRECT_DAMAGE, SPELL_SCHOOL_MASK_NORMAL, NULL, false); + m_creature->DealDamage(m_creature, m_creature->GetHealth(), NULL, DIRECT_DAMAGE, SPELL_SCHOOL_MASK_NORMAL, NULL, false); } } @@ -123,7 +123,7 @@ void AddSC_trial_of_the_champion() NewScript = new Script; NewScript->Name = "npc_toc5_announcer"; - NewScript->GetAI = &GetAI_npc_toc5_announcer; + NewScript->GetAI = &GetAI_npc_toc5_announcer; NewScript->pGossipHello = &GossipHello_npc_toc5_announcer; NewScript->pGossipSelect = &GossipSelect_npc_toc5_announcer; NewScript->RegisterSelf(); diff --git a/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/trial_of_the_champion.h b/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/trial_of_the_champion.h index a7043a5e61b..5b76bd8e7d8 100644 --- a/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/trial_of_the_champion.h +++ b/src/bindings/scripts/scripts/northrend/crusaders_coliseum/trial_of_the_champion/trial_of_the_champion.h @@ -21,8 +21,8 @@ enum DATA_CHAMPIONID_1 = 11, DATA_CHAMPIONID_2 = 12, DATA_CHAMPIONID_3 = 13, - DATA_MEMORY = 14, - DATA_ARGENT_CHALLENGER = 15, + DATA_MEMORY = 14, + DATA_ARGENT_CHALLENGER = 15, NPC_JACOB = 34705, NPC_AMBROSE = 34702, @@ -41,38 +41,38 @@ enum NPC_RISEN_ARELAS = 35564, NPC_JAEREN = 35004, NPC_ARELAS = 35005, - MEMORY_ALGALON = 35052, - MEMORY_ARCHIMONDE = 35041, - MEMORY_CHROMAGGUS = 35033, - MEMORY_CYANIGOSA = 35046, - MEMORY_DELRISSA = 35043, - MEMORY_ECK = 35047, - MEMORY_ENTROPIUS = 35044, - MEMORY_GRUUL = 35039, - MEMORY_HAKKAR = 35034, - MEMORY_HEIGAN = 35049, - MEMORY_HEROD = 35030, - MEMORY_HOGGER = 34942, - MEMORY_IGNIS = 35050, - MEMORY_ILLIDAN = 35042, - MEMORY_INGVAR = 35045, - MEMORY_KALITHRESH = 35037, - MEMORY_LUCIFRON = 35031, - MEMORY_MALCHEZAAR = 35038, - MEMORY_MUTANUS = 35029, - MEMORY_ONYXIA = 35048, - MEMORY_THUNDERAAN = 35032, - MEMORY_VANCLEEF = 35028, - MEMORY_VASHJ = 35040, - MEMORY_VEKNILASH = 35036, - MEMORY_VEZAX = 35051, + MEMORY_ALGALON = 35052, + MEMORY_ARCHIMONDE = 35041, + MEMORY_CHROMAGGUS = 35033, + MEMORY_CYANIGOSA = 35046, + MEMORY_DELRISSA = 35043, + MEMORY_ECK = 35047, + MEMORY_ENTROPIUS = 35044, + MEMORY_GRUUL = 35039, + MEMORY_HAKKAR = 35034, + MEMORY_HEIGAN = 35049, + MEMORY_HEROD = 35030, + MEMORY_HOGGER = 34942, + MEMORY_IGNIS = 35050, + MEMORY_ILLIDAN = 35042, + MEMORY_INGVAR = 35045, + MEMORY_KALITHRESH = 35037, + MEMORY_LUCIFRON = 35031, + MEMORY_MALCHEZAAR = 35038, + MEMORY_MUTANUS = 35029, + MEMORY_ONYXIA = 35048, + MEMORY_THUNDERAAN = 35032, + MEMORY_VANCLEEF = 35028, + MEMORY_VASHJ = 35040, + MEMORY_VEKNILASH = 35036, + MEMORY_VEZAX = 35051, GO_CHAMPIONS_LOOT = 195709, - GO_CHAMPIONS_LOOT_H = 195710, + GO_CHAMPIONS_LOOT_H = 195710, GO_EADRIC_LOOT = 195374, - GO_EADRIC_LOOT_H = 195375, + GO_EADRIC_LOOT_H = 195375, GO_PALETRESS_LOOT = 195323, - GO_PALETRESS_LOOT_H = 195324 + GO_PALETRESS_LOOT_H = 195324 }; #endif diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index 888f51ce201..7ea832d2477 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -2071,7 +2071,6 @@ void Unit::CalcAbsorbResist(Unit *pVictim, SpellSchoolMask schoolMask, DamageEff absorbed = canabsorb; RemainingDamage -= absorbed; - triggeredSpells.push_back(TriggeredSpellInfo(0, this, caster, absorbed, *i)); } continue; default: |