diff options
8 files changed, 1345 insertions, 1231 deletions
diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_anubarak_trial.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_anubarak_trial.cpp index e605b050b7e..ce60df4fdc0 100755 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_anubarak_trial.cpp +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_anubarak_trial.cpp @@ -187,7 +187,7 @@ public: { if (pWho->GetTypeId() == TYPEID_PLAYER) { - DoScriptText(urand(0,1) ? SAY_KILL1 : SAY_KILL2,me); + DoScriptText(urand(0, 1) ? SAY_KILL1 : SAY_KILL2, me); if (m_pInstance) m_pInstance->SetData(DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE, 0); } @@ -197,7 +197,7 @@ public: { if (!m_bIntro) { - DoScriptText(SAY_INTRO,me); + DoScriptText(SAY_INTRO, me); m_bIntro = false; } } @@ -208,14 +208,14 @@ public: m_pInstance->SetData(TYPE_ANUBARAK, FAIL); //Summon Scarab Swarms neutral at random places for (int i=0; i < 10; i++) - if (Creature* pTemp = me->SummonCreature(NPC_SCARAB,AnubarakLoc[1].GetPositionX()+urand(0,50)-25,AnubarakLoc[1].GetPositionY()+urand(0,50)-25,AnubarakLoc[1].GetPositionZ())) + if (Creature* pTemp = me->SummonCreature(NPC_SCARAB, AnubarakLoc[1].GetPositionX()+urand(0, 50)-25, AnubarakLoc[1].GetPositionY()+urand(0, 50)-25, AnubarakLoc[1].GetPositionZ())) pTemp->setFaction(31); } void JustDied(Unit* /*pKiller*/) { Summons.DespawnAll(); - DoScriptText(SAY_DEATH,me); + DoScriptText(SAY_DEATH, me); if (m_pInstance) m_pInstance->SetData(TYPE_ANUBARAK, DONE); } @@ -223,16 +223,16 @@ public: void JustSummoned(Creature* pSummoned) { Unit *pTarget = SelectTarget(SELECT_TARGET_RANDOM); - switch(pSummoned->GetEntry()) + switch (pSummoned->GetEntry()) { case NPC_BURROW: m_vBurrowGUID.push_back(pSummoned->GetGUID()); pSummoned->SetReactState(REACT_PASSIVE); - pSummoned->CastSpell(pSummoned,SPELL_CHURNING_GROUND,false); + pSummoned->CastSpell(pSummoned, SPELL_CHURNING_GROUND, false); break; case NPC_SPIKE: pSummoned->CombatStart(pTarget); - DoScriptText(EMOTE_SPIKE,me,pTarget); + DoScriptText(EMOTE_SPIKE, me, pTarget); break; } Summons.Summon(pSummoned); @@ -240,7 +240,7 @@ public: void SummonedCreatureDespawn(Creature* pSummoned) { - switch(pSummoned->GetEntry()) + switch (pSummoned->GetEntry()) { case NPC_SPIKE: m_uiPursuingSpikeTimer = 2*IN_MILLISECONDS; @@ -250,19 +250,19 @@ public: void EnterCombat(Unit* /*pWho*/) { - DoScriptText(SAY_AGGRO,me); + DoScriptText(SAY_AGGRO, me); me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); me->SetInCombatWithZone(); if (m_pInstance) m_pInstance->SetData(TYPE_ANUBARAK, IN_PROGRESS); //Despawn Scarab Swarms neutral - Summons.DoAction(NPC_SCARAB,ACTION_SCARAB_SUBMERGE); + Summons.DoAction(NPC_SCARAB, ACTION_SCARAB_SUBMERGE); //Spawn Burrow for (int i=0; i < 4; i++) - me->SummonCreature(NPC_BURROW,AnubarakLoc[i+2]); + me->SummonCreature(NPC_BURROW, AnubarakLoc[i+2]); //Spawn Frost Spheres for (int i=0; i < 6; i++) - if (Unit *pSummoned = me->SummonCreature(NPC_FROST_SPHERE,SphereSpawn[i])) + if (Unit *pSummoned = me->SummonCreature(NPC_FROST_SPHERE, SphereSpawn[i])) m_aSphereGUID[i] = pSummoned->GetGUID(); } @@ -271,7 +271,7 @@ public: if (!UpdateVictim()) return; - switch(m_uiStage) + switch (m_uiStage) { case 0: if (m_uiFreezeSlashTimer <= uiDiff) @@ -282,19 +282,19 @@ public: if (m_uiPenetratingColdTimer <= uiDiff) { - me->CastCustomSpell(SPELL_PENETRATING_COLD, SPELLVALUE_MAX_TARGETS, RAID_MODE(2,5)); + me->CastCustomSpell(SPELL_PENETRATING_COLD, SPELLVALUE_MAX_TARGETS, RAID_MODE(2, 5)); m_uiPenetratingColdTimer = 20*IN_MILLISECONDS; } else m_uiPenetratingColdTimer -= uiDiff; if (m_uiSummonNerubianTimer <= uiDiff && (IsHeroic() || !m_bReachedPhase3)) { - me->CastCustomSpell(SPELL_SUMMON_BURROWER, SPELLVALUE_MAX_TARGETS, RAID_MODE(1,2,2,4)); + me->CastCustomSpell(SPELL_SUMMON_BURROWER, SPELLVALUE_MAX_TARGETS, RAID_MODE(1, 2, 2, 4)); m_uiSummonNerubianTimer = 45*IN_MILLISECONDS; } else m_uiSummonNerubianTimer -= uiDiff; if (IsHeroic() && m_uiNerubianShadowStrikeTimer <= uiDiff) { - Summons.DoAction(NPC_BURROWER,ACTION_SHADOW_STRIKE); + Summons.DoAction(NPC_BURROWER, ACTION_SHADOW_STRIKE); m_uiNerubianShadowStrikeTimer = 30*IN_MILLISECONDS; } else m_uiNerubianShadowStrikeTimer -= uiDiff; @@ -305,10 +305,10 @@ public: } else m_uiSubmergeTimer -= uiDiff; break; case 1: - DoCast(me,SPELL_SUBMERGE_ANUBARAK); - DoCast(me,SPELL_CLEAR_ALL_DEBUFFS); - me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); - DoScriptText(SAY_BURROWER,me); + DoCast(me, SPELL_SUBMERGE_ANUBARAK); + DoCast(me, SPELL_CLEAR_ALL_DEBUFFS); + me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); + DoScriptText(SAY_BURROWER, me); m_uiScarabSummoned = 0; m_uiSummonScarabTimer = 4*IN_MILLISECONDS; m_uiStage = 2; @@ -327,14 +327,14 @@ public: * - The correct implementation is more likely the comment below but it needs spell knowledge */ std::list<uint64>::iterator i = m_vBurrowGUID.begin(); - uint32 at = urand(0,m_vBurrowGUID.size()-1); + uint32 at = urand(0, m_vBurrowGUID.size()-1); for (uint32 k = 0; k < at; k++) ++i; if (Creature *pBurrow = Unit::GetCreature(*me, *i)) - pBurrow->CastSpell(pBurrow,66340,false); + pBurrow->CastSpell(pBurrow, 66340, false); m_uiScarabSummoned++; m_uiSummonScarabTimer = 4*IN_MILLISECONDS; - if (m_uiScarabSummoned == 4) m_uiSummonScarabTimer = RAID_MODE(4,20)*IN_MILLISECONDS; + if (m_uiScarabSummoned == 4) m_uiSummonScarabTimer = RAID_MODE(4, 20)*IN_MILLISECONDS; /*It seems that this spell have something more that needs to be taken into account //Need more sniff info @@ -354,8 +354,8 @@ public: DoCast(SPELL_SPIKE_TELE); Summons.DespawnEntry(NPC_SPIKE); me->RemoveAurasDueToSpell(SPELL_SUBMERGE_ANUBARAK); - me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); - DoCast(me,SPELL_EMERGE_ANUBARAK); + me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); + DoCast(me, SPELL_EMERGE_ANUBARAK); me->GetMotionMaster()->MoveChase(me->getVictim()); m_uiSummonNerubianTimer = 10*IN_MILLISECONDS; m_uiNerubianShadowStrikeTimer = 30*IN_MILLISECONDS; @@ -367,22 +367,22 @@ public: { if (m_uiSummonFrostSphereTimer <= uiDiff) { - uint8 startAt = urand(0,5); + uint8 startAt = urand(0, 5); uint8 i = startAt; do { - if (Unit *pSphere = Unit::GetCreature(*me,m_aSphereGUID[i])) + if (Unit *pSphere = Unit::GetCreature(*me, m_aSphereGUID[i])) { if (!pSphere->HasAura(SPELL_FROST_SPHERE)) { - if (Creature *pSummon = me->SummonCreature(NPC_FROST_SPHERE,SphereSpawn[i])) + if (Creature *pSummon = me->SummonCreature(NPC_FROST_SPHERE, SphereSpawn[i])) m_aSphereGUID[i] = pSummon->GetGUID(); break; } } i = (i+1)%6; } while (i != startAt); - m_uiSummonFrostSphereTimer = urand(20,30)*IN_MILLISECONDS; + m_uiSummonFrostSphereTimer = urand(20, 30)*IN_MILLISECONDS; } else m_uiSummonFrostSphereTimer -= uiDiff; } @@ -390,13 +390,13 @@ public: { m_bReachedPhase3 = true; DoCastAOE(SPELL_LEECHING_SWARM); - DoScriptText(EMOTE_LEECHING_SWARM,me); - DoScriptText(SAY_LEECHING_SWARM,me); + DoScriptText(EMOTE_LEECHING_SWARM, me); + DoScriptText(SAY_LEECHING_SWARM, me); } if (m_uiBerserkTimer <= uiDiff && !me->HasAura(SPELL_BERSERK)) { - DoCast(me,SPELL_BERSERK); + DoCast(me, SPELL_BERSERK); } else m_uiBerserkTimer -= uiDiff; DoMeleeAttackIfReady(); @@ -430,18 +430,18 @@ public: void Reset() { me->SetCorpseDelay(0); - m_uiDeterminationTimer = urand(5*IN_MILLISECONDS,60*IN_MILLISECONDS); - DoCast(me,SPELL_ACID_MANDIBLE); + m_uiDeterminationTimer = urand(5*IN_MILLISECONDS, 60*IN_MILLISECONDS); + DoCast(me, SPELL_ACID_MANDIBLE); me->SetInCombatWithZone(); if (Unit *pTarget = SelectTarget(SELECT_TARGET_RANDOM)) - me->AddThreat(pTarget,20000.0f); + me->AddThreat(pTarget, 20000.0f); if (!me->isInCombat()) me->DisappearAndDie(); } void DoAction(const int32 actionId) { - switch(actionId) + switch (actionId) { case ACTION_SCARAB_SUBMERGE: DoCast(SPELL_SUBMERGE_EFFECT); @@ -452,7 +452,7 @@ public: void JustDied(Unit* pKiller) { - DoCast(pKiller,RAID_MODE(SPELL_TRAITOR_KING_10,SPELL_TRAITOR_KING_25)); + DoCast(pKiller, RAID_MODE(SPELL_TRAITOR_KING_10, SPELL_TRAITOR_KING_25)); } void UpdateAI(const uint32 uiDiff) @@ -463,8 +463,8 @@ public: /* Bosskillers don't recognize */ if (m_uiDeterminationTimer <= uiDiff) { - DoCast(me,SPELL_DETERMINATION); - m_uiDeterminationTimer = urand(10*IN_MILLISECONDS,60*IN_MILLISECONDS); + DoCast(me, SPELL_DETERMINATION); + m_uiDeterminationTimer = urand(10*IN_MILLISECONDS, 60*IN_MILLISECONDS); } else m_uiDeterminationTimer -= uiDiff; DoMeleeAttackIfReady(); @@ -499,10 +499,10 @@ public: void Reset() { me->SetCorpseDelay(0); - m_uiSpiderFrenzyTimer = urand(10*IN_MILLISECONDS,20*IN_MILLISECONDS); + m_uiSpiderFrenzyTimer = urand(10*IN_MILLISECONDS, 20*IN_MILLISECONDS); m_uiSubmergeTimer = 30*IN_MILLISECONDS; - DoCast(me,SPELL_EXPOSE_WEAKNESS); - DoCast(me,SPELL_SPIDER_FRENZY); + DoCast(me, SPELL_EXPOSE_WEAKNESS); + DoCast(me, SPELL_SPIDER_FRENZY); me->SetInCombatWithZone(); if (!me->isInCombat()) me->DisappearAndDie(); @@ -510,11 +510,11 @@ public: void DoAction(const int32 actionId) { - switch(actionId) + switch (actionId) { case ACTION_SHADOW_STRIKE: - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_SHADOW_STRIKE); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_SHADOW_STRIKE); break; } } @@ -529,16 +529,16 @@ public: if (me->HasAura(SPELL_SUBMERGE_EFFECT)) { me->RemoveAurasDueToSpell(SPELL_SUBMERGE_EFFECT); - DoCast(me,SPELL_EMERGE_EFFECT); - me->RemoveFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); + DoCast(me, SPELL_EMERGE_EFFECT); + me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); me->CombatStart(me->SelectNearestTarget()); } else { if (!me->HasAura(SPELL_PERMAFROST)) { - DoCast(me,SPELL_SUBMERGE_EFFECT); - me->SetFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); + DoCast(me, SPELL_SUBMERGE_EFFECT); + me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); me->CombatStop(); } } @@ -593,7 +593,7 @@ public: m_bFall = true; me->SetFlying(false); me->GetMotionMaster()->MoveIdle(); - me->SetFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NOT_SELECTABLE); + me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); //At hit the ground me->GetMotionMaster()->MoveFall(142.2f, 0); //me->FallGround(); //need correct vmap use (i believe it isn't working properly right now) @@ -665,7 +665,7 @@ public: void EnterCombat(Unit *pWho) { m_uiTargetGUID = pWho->GetGUID(); - DoCast(pWho,SPELL_MARK); + DoCast(pWho, SPELL_MARK); me->SetSpeed(MOVE_RUN, 0.5f); m_uiSpeed = 0; m_uiIncreaseSpeedTimer = 1*IN_MILLISECONDS; @@ -682,8 +682,8 @@ public: Unit* pTarget = Unit::GetPlayer(*me, m_uiTargetGUID); if (!pTarget || !pTarget->isAlive() || !pTarget->HasAura(SPELL_MARK)) { - if (Creature* pAnubarak = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_ANUBARAK))) - pAnubarak->CastSpell(pAnubarak,SPELL_SPIKE_TELE,false); + if (Creature* pAnubarak = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_ANUBARAK))) + pAnubarak->CastSpell(pAnubarak, SPELL_SPIKE_TELE, false); me->DisappearAndDie(); return; } @@ -695,18 +695,18 @@ public: switch (m_uiSpeed) { case 0: - DoCast(me,SPELL_SPIKE_SPEED1); - DoCast(me,SPELL_SPIKE_TRAIL); + DoCast(me, SPELL_SPIKE_SPEED1); + DoCast(me, SPELL_SPIKE_TRAIL); m_uiSpeed = 1; m_uiIncreaseSpeedTimer = 7*IN_MILLISECONDS; break; case 1: - DoCast(me,SPELL_SPIKE_SPEED2); + DoCast(me, SPELL_SPIKE_SPEED2); m_uiSpeed = 2; m_uiIncreaseSpeedTimer = 7*IN_MILLISECONDS; break; case 2: - DoCast(me,SPELL_SPIKE_SPEED3); + DoCast(me, SPELL_SPIKE_SPEED3); m_uiIncreaseSpeedTimer = 0; break; } diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_faction_champions.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_faction_champions.cpp index 3822265b2f6..5b73b399106 100755 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_faction_champions.cpp +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_faction_champions.cpp @@ -108,14 +108,30 @@ public: uint8 pos = urand(0, vHealersEntries.size()-1); switch (vHealersEntries[pos]) { - case NPC_ALLIANCE_DRUID_RESTORATION: vOtherEntries.push_back(NPC_ALLIANCE_DRUID_BALANCE); break; - case NPC_HORDE_DRUID_RESTORATION: vOtherEntries.push_back(NPC_HORDE_DRUID_BALANCE); break; - case NPC_ALLIANCE_PALADIN_HOLY: vOtherEntries.push_back(NPC_ALLIANCE_PALADIN_RETRIBUTION); break; - case NPC_HORDE_PALADIN_HOLY: vOtherEntries.push_back(NPC_HORDE_PALADIN_RETRIBUTION); break; - case NPC_ALLIANCE_PRIEST_DISCIPLINE: vOtherEntries.push_back(NPC_ALLIANCE_PRIEST_SHADOW); break; - case NPC_HORDE_PRIEST_DISCIPLINE: vOtherEntries.push_back(NPC_HORDE_PRIEST_SHADOW); break; - case NPC_ALLIANCE_SHAMAN_RESTORATION: vOtherEntries.push_back(NPC_ALLIANCE_SHAMAN_ENHANCEMENT); break; - case NPC_HORDE_SHAMAN_RESTORATION: vOtherEntries.push_back(NPC_HORDE_SHAMAN_ENHANCEMENT); break; + case NPC_ALLIANCE_DRUID_RESTORATION: + vOtherEntries.push_back(NPC_ALLIANCE_DRUID_BALANCE); + break; + case NPC_HORDE_DRUID_RESTORATION: + vOtherEntries.push_back(NPC_HORDE_DRUID_BALANCE); + break; + case NPC_ALLIANCE_PALADIN_HOLY: + vOtherEntries.push_back(NPC_ALLIANCE_PALADIN_RETRIBUTION); + break; + case NPC_HORDE_PALADIN_HOLY: + vOtherEntries.push_back(NPC_HORDE_PALADIN_RETRIBUTION); + break; + case NPC_ALLIANCE_PRIEST_DISCIPLINE: + vOtherEntries.push_back(NPC_ALLIANCE_PRIEST_SHADOW); + break; + case NPC_HORDE_PRIEST_DISCIPLINE: + vOtherEntries.push_back(NPC_HORDE_PRIEST_SHADOW); + break; + case NPC_ALLIANCE_SHAMAN_RESTORATION: + vOtherEntries.push_back(NPC_ALLIANCE_SHAMAN_ENHANCEMENT); + break; + case NPC_HORDE_SHAMAN_RESTORATION: + vOtherEntries.push_back(NPC_HORDE_SHAMAN_ENHANCEMENT); + break; } vHealersEntries.erase(vHealersEntries.begin()+pos); } @@ -152,20 +168,20 @@ public: for (uint8 i = 0; i < vChampionEntries.size(); ++i) { uint8 pos = urand(0, vChampionJumpTarget.size()-1); - if (Creature* pTemp = me->SummonCreature(vChampionEntries[i], vChampionJumpOrigin[urand(0,vChampionJumpOrigin.size()-1)], TEMPSUMMON_MANUAL_DESPAWN)) + if (Creature* pTemp = me->SummonCreature(vChampionEntries[i], vChampionJumpOrigin[urand(0, vChampionJumpOrigin.size()-1)], TEMPSUMMON_MANUAL_DESPAWN)) { Summons.Summon(pTemp); pTemp->SetReactState(REACT_PASSIVE); - pTemp->SetFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE); + pTemp->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE); if (playerTeam == ALLIANCE) { - pTemp->SetHomePosition(vChampionJumpTarget[pos].GetPositionX(), vChampionJumpTarget[pos].GetPositionY(), vChampionJumpTarget[pos].GetPositionZ(),0); + pTemp->SetHomePosition(vChampionJumpTarget[pos].GetPositionX(), vChampionJumpTarget[pos].GetPositionY(), vChampionJumpTarget[pos].GetPositionZ(), 0); pTemp->GetMotionMaster()->MoveJump(vChampionJumpTarget[pos].GetPositionX(), vChampionJumpTarget[pos].GetPositionY(), vChampionJumpTarget[pos].GetPositionZ(), 20.0f, 20.0f); pTemp->SetOrientation(0); } else { - pTemp->SetHomePosition((ToCCommonLoc[1].GetPositionX()*2)-vChampionJumpTarget[pos].GetPositionX(), vChampionJumpTarget[pos].GetPositionY(), vChampionJumpTarget[pos].GetPositionZ(),3); + pTemp->SetHomePosition((ToCCommonLoc[1].GetPositionX()*2)-vChampionJumpTarget[pos].GetPositionX(), vChampionJumpTarget[pos].GetPositionY(), vChampionJumpTarget[pos].GetPositionZ(), 3); pTemp->GetMotionMaster()->MoveJump((ToCCommonLoc[1].GetPositionX()*2)-vChampionJumpTarget[pos].GetPositionX(), vChampionJumpTarget[pos].GetPositionY(), vChampionJumpTarget[pos].GetPositionZ(), 20.0f, 20.0f); pTemp->SetOrientation(3); } @@ -176,7 +192,7 @@ public: void SetData(uint32 uiType, uint32 uiData) { - switch(uiType) + switch (uiType) { case 0: SummonChampions((Team)uiData); @@ -187,12 +203,12 @@ public: if (Creature* pTemp = Unit::GetCreature(*me, *i)) { pTemp->SetReactState(REACT_AGGRESSIVE); - pTemp->RemoveFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE); + pTemp->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE); } } break; case 2: - switch(uiData) + switch (uiData) { case FAIL: m_uiChampionsFailed++; @@ -259,7 +275,7 @@ struct boss_faction_championsAI : public ScriptedAI void JustReachedHome() { if (m_pInstance) - if (Creature* pChampionController = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_CHAMPIONS_CONTROLLER))) + if (Creature* pChampionController = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_CHAMPIONS_CONTROLLER))) pChampionController->AI()->SetData(2, FAIL); me->ForcedDespawn(); } @@ -312,7 +328,7 @@ struct boss_faction_championsAI : public ScriptedAI { if (mAIType != AI_PET) if (m_pInstance) - if (Creature* pChampionController = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_CHAMPIONS_CONTROLLER))) + if (Creature* pChampionController = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_CHAMPIONS_CONTROLLER))) pChampionController->AI()->SetData(2, DONE); } @@ -321,7 +337,7 @@ struct boss_faction_championsAI : public ScriptedAI DoCast(me, SPELL_ANTI_AOE, true); me->SetInCombatWithZone(); if (m_pInstance) - if (Creature* pChampionController = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_CHAMPIONS_CONTROLLER))) + if (Creature* pChampionController = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_CHAMPIONS_CONTROLLER))) pChampionController->AI()->SetData(2, IN_PROGRESS); } @@ -340,12 +356,12 @@ struct boss_faction_championsAI : public ScriptedAI { if (TeamInInstance == ALLIANCE) { - if (Creature* pTemp = Unit::GetCreature(*me,m_pInstance->GetData64(NPC_VARIAN))) - DoScriptText(SAY_VARIAN_KILL_HORDE_PLAYER4+urand(0,3), pTemp); // + cause we are on negative + if (Creature* pTemp = Unit::GetCreature(*me, m_pInstance->GetData64(NPC_VARIAN))) + DoScriptText(SAY_VARIAN_KILL_HORDE_PLAYER4+urand(0, 3), pTemp); // + cause we are on negative } else if (Creature* pTemp = me->FindNearestCreature(NPC_GARROSH, 300.f)) - DoScriptText(SAY_GARROSH_KILL_ALLIANCE_PLAYER4+urand(0,3), pTemp); // + cause we are on negative + DoScriptText(SAY_GARROSH_KILL_ALLIANCE_PLAYER4+urand(0, 3), pTemp); // + cause we are on negative m_pInstance->SetData(DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE, 0); } @@ -369,7 +385,7 @@ struct boss_faction_championsAI : public ScriptedAI Unit *target; for (iter = tList.begin(); iter!=tList.end(); ++iter) { - target = Unit::GetUnit((*me),(*iter)->getUnitGuid()); + target = Unit::GetUnit((*me), (*iter)->getUnitGuid()); if (target && target->getPowerType() == POWER_MANA) return target; } @@ -384,7 +400,7 @@ struct boss_faction_championsAI : public ScriptedAI Unit *target; for (iter = tList.begin(); iter!=tList.end(); ++iter) { - target = Unit::GetUnit((*me),(*iter)->getUnitGuid()); + target = Unit::GetUnit((*me), (*iter)->getUnitGuid()); if (target && me->GetDistance2d(target) < distance) ++count; } @@ -483,45 +499,45 @@ public: if (m_uiNatureGraspTimer <= uiDiff) { - DoCast(me,SPELL_NATURE_GRASP); - m_uiNatureGraspTimer = urand(40*IN_MILLISECONDS,80*IN_MILLISECONDS); + DoCast(me, SPELL_NATURE_GRASP); + m_uiNatureGraspTimer = urand(40*IN_MILLISECONDS, 80*IN_MILLISECONDS); } else m_uiNatureGraspTimer -= uiDiff; if (m_uiTranquilityTimer <= uiDiff) { DoCastAOE(SPELL_TRANQUILITY); - m_uiTranquilityTimer = urand(40*IN_MILLISECONDS,90*IN_MILLISECONDS); + m_uiTranquilityTimer = urand(40*IN_MILLISECONDS, 90*IN_MILLISECONDS); } else m_uiTranquilityTimer -= uiDiff; if (m_uiBarkskinTimer <= uiDiff) { if (HealthBelowPct(50)) - DoCast(me,SPELL_BARKSKIN); - m_uiBarkskinTimer = urand(45*IN_MILLISECONDS,90*IN_MILLISECONDS); + DoCast(me, SPELL_BARKSKIN); + m_uiBarkskinTimer = urand(45*IN_MILLISECONDS, 90*IN_MILLISECONDS); } else m_uiBarkskinTimer -= uiDiff; if (m_uiCommonTimer <= uiDiff) { - switch(urand(0,4)) + switch (urand(0, 4)) { case 0: - DoCast(me,SPELL_LIFEBLOOM); + DoCast(me, SPELL_LIFEBLOOM); break; case 1: - DoCast(me,SPELL_NOURISH); + DoCast(me, SPELL_NOURISH); break; case 2: - DoCast(me,SPELL_REGROWTH); + DoCast(me, SPELL_REGROWTH); break; case 3: - DoCast(me,SPELL_REJUVENATION); + DoCast(me, SPELL_REJUVENATION); break; case 4: if (Creature* pTarget = SelectRandomFriendlyMissingBuff(SPELL_THORNS)) - DoCast(pTarget,SPELL_THORNS); + DoCast(pTarget, SPELL_THORNS); break; } - m_uiCommonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiCommonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiCommonTimer -= uiDiff; boss_faction_championsAI::UpdateAI(uiDiff); @@ -585,38 +601,38 @@ public: else if (!me->HasAura(AURA_SATED)) DoCastAOE(SPELL_BLOODLUST); - m_uiHeroismOrBloodlustTimer = urand(30*IN_MILLISECONDS,60*IN_MILLISECONDS); + m_uiHeroismOrBloodlustTimer = urand(30*IN_MILLISECONDS, 60*IN_MILLISECONDS); } else m_uiHeroismOrBloodlustTimer -= uiDiff; if (m_uiHexTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_HEX); - m_uiHexTimer = urand(10*IN_MILLISECONDS,40*IN_MILLISECONDS); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_HEX); + m_uiHexTimer = urand(10*IN_MILLISECONDS, 40*IN_MILLISECONDS); } else m_uiHexTimer -= uiDiff; if (m_uiCommonTimer <= uiDiff) { - switch(urand(0,5)) + switch (urand(0, 5)) { case 0: case 1: - DoCast(me,SPELL_HEALING_WAVE); + DoCast(me, SPELL_HEALING_WAVE); break; case 2: - DoCast(me,SPELL_RIPTIDE); + DoCast(me, SPELL_RIPTIDE); break; case 3: - DoCast(me,SPELL_EARTH_SHOCK); + DoCast(me, SPELL_EARTH_SHOCK); break; case 4: - DoCast(me,SPELL_SPIRIT_CLEANSE); + DoCast(me, SPELL_SPIRIT_CLEANSE); break; case 5: if (Unit *pTarget = SelectRandomFriendlyMissingBuff(SPELL_EARTH_SHIELD)) - DoCast(pTarget,SPELL_EARTH_SHIELD); + DoCast(pTarget, SPELL_EARTH_SHIELD); break; } - m_uiCommonTimer = urand(5*IN_MILLISECONDS,15*IN_MILLISECONDS); + m_uiCommonTimer = urand(5*IN_MILLISECONDS, 15*IN_MILLISECONDS); } else m_uiCommonTimer -= uiDiff; boss_faction_championsAI::UpdateAI(uiDiff); @@ -661,12 +677,12 @@ public: void Reset() { boss_faction_championsAI::Reset(); - m_uiBubbleTimer = urand(0*IN_MILLISECONDS,360*IN_MILLISECONDS); - m_uiHandOfProtectionTimer = urand(0*IN_MILLISECONDS,360*IN_MILLISECONDS); - m_uiHolyShockTimer = urand(6*IN_MILLISECONDS,15*IN_MILLISECONDS); - m_uiHandOfFreedomTimer = urand(25*IN_MILLISECONDS,40*IN_MILLISECONDS); - m_uiHammerOfJusticeTimer = urand(5*IN_MILLISECONDS,15*IN_MILLISECONDS); - m_uiCommonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiBubbleTimer = urand(0*IN_MILLISECONDS, 360*IN_MILLISECONDS); + m_uiHandOfProtectionTimer = urand(0*IN_MILLISECONDS, 360*IN_MILLISECONDS); + m_uiHolyShockTimer = urand(6*IN_MILLISECONDS, 15*IN_MILLISECONDS); + m_uiHandOfFreedomTimer = urand(25*IN_MILLISECONDS, 40*IN_MILLISECONDS); + m_uiHammerOfJusticeTimer = urand(5*IN_MILLISECONDS, 15*IN_MILLISECONDS); + m_uiCommonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); SetEquipmentSlots(false, 50771, 47079, EQUIP_NO_CHANGE); } @@ -678,54 +694,54 @@ public: { //cast bubble at 20% hp if (HealthBelowPct(20)) - DoCast(me,SPELL_BUBBLE); - m_uiBubbleTimer = urand(0*IN_MILLISECONDS,360*IN_MILLISECONDS); + DoCast(me, SPELL_BUBBLE); + m_uiBubbleTimer = urand(0*IN_MILLISECONDS, 360*IN_MILLISECONDS); } else m_uiBubbleTimer -= uiDiff; if (m_uiHandOfProtectionTimer <= uiDiff) { if (Unit *pTarget = DoSelectLowestHpFriendly(40.0f)) if (pTarget->HealthBelowPct(15)) - DoCast(pTarget,SPELL_HAND_OF_PROTECTION); - m_uiHandOfProtectionTimer = urand(0*IN_MILLISECONDS,360*IN_MILLISECONDS); + DoCast(pTarget, SPELL_HAND_OF_PROTECTION); + m_uiHandOfProtectionTimer = urand(0*IN_MILLISECONDS, 360*IN_MILLISECONDS); } else m_uiHandOfProtectionTimer -= uiDiff; if (m_uiHolyShockTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_HOLY_SHOCK); - m_uiHolyShockTimer = urand(6*IN_MILLISECONDS,15*IN_MILLISECONDS); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_HOLY_SHOCK); + m_uiHolyShockTimer = urand(6*IN_MILLISECONDS, 15*IN_MILLISECONDS); } else m_uiHolyShockTimer -= uiDiff; if (m_uiHandOfFreedomTimer <= uiDiff) { if (Unit *pTarget = SelectRandomFriendlyMissingBuff(SPELL_HAND_OF_FREEDOM)) - DoCast(pTarget,SPELL_HAND_OF_FREEDOM); - m_uiHandOfFreedomTimer = urand(25*IN_MILLISECONDS,40*IN_MILLISECONDS); + DoCast(pTarget, SPELL_HAND_OF_FREEDOM); + m_uiHandOfFreedomTimer = urand(25*IN_MILLISECONDS, 40*IN_MILLISECONDS); } else m_uiHandOfFreedomTimer -= uiDiff; if (m_uiHammerOfJusticeTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_HAMMER_OF_JUSTICE); - m_uiHammerOfJusticeTimer = urand(5*IN_MILLISECONDS,15*IN_MILLISECONDS); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_HAMMER_OF_JUSTICE); + m_uiHammerOfJusticeTimer = urand(5*IN_MILLISECONDS, 15*IN_MILLISECONDS); } else m_uiHammerOfJusticeTimer -= uiDiff; if (m_uiCommonTimer <= uiDiff) { - switch(urand(0,4)) + switch (urand(0, 4)) { case 0: case 1: - DoCast(me,SPELL_FLASH_OF_LIGHT); + DoCast(me, SPELL_FLASH_OF_LIGHT); break; case 2: case 3: - DoCast(me,SPELL_HOLY_LIGHT); + DoCast(me, SPELL_HOLY_LIGHT); break; case 4: - DoCast(me,SPELL_CLEANSE); + DoCast(me, SPELL_CLEANSE); break; } - m_uiCommonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiCommonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiCommonTimer -= uiDiff; boss_faction_championsAI::UpdateAI(uiDiff); @@ -765,7 +781,7 @@ public: { boss_faction_championsAI::Reset(); m_uiPsychicScreamTimer = IN_MILLISECONDS; - m_uiCommonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiCommonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); SetEquipmentSlots(false, 49992, EQUIP_NO_CHANGE, EQUIP_NO_CHANGE); } @@ -777,31 +793,31 @@ public: { if (EnemiesInRange(10.0f) > 2) DoCastAOE(SPELL_PSYCHIC_SCREAM); - m_uiPsychicScreamTimer = urand(5*IN_MILLISECONDS,25*IN_MILLISECONDS); + m_uiPsychicScreamTimer = urand(5*IN_MILLISECONDS, 25*IN_MILLISECONDS); } else m_uiPsychicScreamTimer -= uiDiff; if (m_uiCommonTimer <= uiDiff) { - switch(urand(0,5)) + switch (urand(0, 5)) { case 0: - DoCast(me,SPELL_RENEW); + DoCast(me, SPELL_RENEW); break; case 1: - DoCast(me,SPELL_SHIELD); + DoCast(me, SPELL_SHIELD); break; case 2: case 3: - DoCast(me,SPELL_FLASH_HEAL); + DoCast(me, SPELL_FLASH_HEAL); break; case 4: - if (Unit *pTarget = urand(0,1) ? SelectUnit(SELECT_TARGET_RANDOM,0) : DoSelectLowestHpFriendly(40.0f)) + if (Unit *pTarget = urand(0, 1) ? SelectUnit(SELECT_TARGET_RANDOM, 0) : DoSelectLowestHpFriendly(40.0f)) DoCast(pTarget, SPELL_DISPEL); break; case 5: - DoCast(me,SPELL_MANA_BURN); + DoCast(me, SPELL_MANA_BURN); break; } - m_uiCommonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiCommonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiCommonTimer -= uiDiff; boss_faction_championsAI::UpdateAI(uiDiff); @@ -848,13 +864,13 @@ public: void Reset() { boss_faction_championsAI::Reset(); - m_uiPsychicScreamTimer = urand(5*IN_MILLISECONDS,25*IN_MILLISECONDS); - m_uiDispersionTimer = urand(1*IN_MILLISECONDS,180*IN_MILLISECONDS); - m_uiSilenceTimer = urand(8*IN_MILLISECONDS,15*IN_MILLISECONDS); - m_uiMindBlastTimer = urand(3*IN_MILLISECONDS,8*IN_MILLISECONDS); - m_uiCommonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiPsychicScreamTimer = urand(5*IN_MILLISECONDS, 25*IN_MILLISECONDS); + m_uiDispersionTimer = urand(1*IN_MILLISECONDS, 180*IN_MILLISECONDS); + m_uiSilenceTimer = urand(8*IN_MILLISECONDS, 15*IN_MILLISECONDS); + m_uiMindBlastTimer = urand(3*IN_MILLISECONDS, 8*IN_MILLISECONDS); + m_uiCommonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); SetEquipmentSlots(false, 50040, EQUIP_NO_CHANGE, EQUIP_NO_CHANGE); - DoCast(me,SPELL_SHADOWFORM); + DoCast(me, SPELL_SHADOWFORM); } void EnterCombat(Unit *pWho) @@ -870,52 +886,52 @@ public: { if (EnemiesInRange(10.0f) > 2) DoCastAOE(SPELL_PSYCHIC_SCREAM); - m_uiPsychicScreamTimer = urand(5*IN_MILLISECONDS,25*IN_MILLISECONDS); + m_uiPsychicScreamTimer = urand(5*IN_MILLISECONDS, 25*IN_MILLISECONDS); } else m_uiPsychicScreamTimer -= uiDiff; if (m_uiDispersionTimer <= uiDiff) { if (HealthBelowPct(20)) - DoCast(me,SPELL_DISPERSION); - m_uiDispersionTimer = urand(1*IN_MILLISECONDS,180*IN_MILLISECONDS); + DoCast(me, SPELL_DISPERSION); + m_uiDispersionTimer = urand(1*IN_MILLISECONDS, 180*IN_MILLISECONDS); } else m_uiDispersionTimer -= uiDiff; if (m_uiSilenceTimer <= uiDiff) { if (Unit *pTarget = SelectEnemyCaster(false)) - DoCast(pTarget,SPELL_SILENCE); - m_uiSilenceTimer = urand(8*IN_MILLISECONDS,15*IN_MILLISECONDS); + DoCast(pTarget, SPELL_SILENCE); + m_uiSilenceTimer = urand(8*IN_MILLISECONDS, 15*IN_MILLISECONDS); } else m_uiSilenceTimer -= uiDiff; if (m_uiMindBlastTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_MIND_BLAST); - m_uiMindBlastTimer = urand(3*IN_MILLISECONDS,8*IN_MILLISECONDS); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_MIND_BLAST); + m_uiMindBlastTimer = urand(3*IN_MILLISECONDS, 8*IN_MILLISECONDS); } else m_uiMindBlastTimer -= uiDiff; if (m_uiCommonTimer <= uiDiff) { - switch(urand(0,4)) + switch (urand(0, 4)) { case 0: case 1: - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_MIND_FLAY); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_MIND_FLAY); break; case 2: - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_VAMPIRIC_TOUCH); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_VAMPIRIC_TOUCH); break; case 3: - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_SW_PAIN); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_SW_PAIN); break; case 4: - if (Unit *pTarget = urand(0,1) ? SelectUnit(SELECT_TARGET_RANDOM,0) : DoSelectLowestHpFriendly(40.0f)) + if (Unit *pTarget = urand(0, 1) ? SelectUnit(SELECT_TARGET_RANDOM, 0) : DoSelectLowestHpFriendly(40.0f)) DoCast(pTarget, SPELL_DISPEL); break; } - m_uiCommonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiCommonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiCommonTimer -= uiDiff; boss_faction_championsAI::UpdateAI(uiDiff); @@ -963,13 +979,13 @@ public: void Reset() { boss_faction_championsAI::Reset(); - m_uiFearTimer = urand(4*IN_MILLISECONDS,15*IN_MILLISECONDS); - m_uiHellfireTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); - m_uiUnstableAfflictionTimer = urand(2*IN_MILLISECONDS,10*IN_MILLISECONDS); - m_uiCommonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiFearTimer = urand(4*IN_MILLISECONDS, 15*IN_MILLISECONDS); + m_uiHellfireTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); + m_uiUnstableAfflictionTimer = urand(2*IN_MILLISECONDS, 10*IN_MILLISECONDS); + m_uiCommonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); SetEquipmentSlots(false, 49992, EQUIP_NO_CHANGE, EQUIP_NO_CHANGE); - m_uiSummonPetTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiSummonPetTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); DoCast(SPELL_SUMMON_FELHUNTER); } @@ -979,33 +995,33 @@ public: if (m_uiFearTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_FEAR); - m_uiFearTimer = urand(4*IN_MILLISECONDS,15*IN_MILLISECONDS); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_FEAR); + m_uiFearTimer = urand(4*IN_MILLISECONDS, 15*IN_MILLISECONDS); } else m_uiFearTimer -= uiDiff; if (m_uiHellfireTimer <= uiDiff) { if (EnemiesInRange(10.0f) > 2) DoCastAOE(SPELL_HELLFIRE); - m_uiHellfireTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiHellfireTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiHellfireTimer -= uiDiff; if (m_uiUnstableAfflictionTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_UNSTABLE_AFFLICTION); - m_uiUnstableAfflictionTimer = urand(2*IN_MILLISECONDS,10*IN_MILLISECONDS); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_UNSTABLE_AFFLICTION); + m_uiUnstableAfflictionTimer = urand(2*IN_MILLISECONDS, 10*IN_MILLISECONDS); } else m_uiUnstableAfflictionTimer -= uiDiff; if (m_uiSummonPetTimer <= uiDiff) { - m_uiSummonPetTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiSummonPetTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiSummonPetTimer -= uiDiff; if (m_uiCommonTimer <= uiDiff) { - switch(urand(0,5)) + switch (urand(0, 5)) { case 0: case 1: DoCastVictim(SPELL_SHADOW_BOLT); @@ -1020,11 +1036,11 @@ public: DoCastVictim(SPELL_CURSE_OF_AGONY); break; case 5: - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_CURSE_OF_EXHAUSTION); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_CURSE_OF_EXHAUSTION); break; } - m_uiCommonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiCommonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiCommonTimer -= uiDiff; boss_faction_championsAI::UpdateAI(uiDiff); } @@ -1068,11 +1084,11 @@ public: void Reset() { boss_faction_championsAI::Reset(); - m_uiCounterspellTimer = urand(5*IN_MILLISECONDS,15*IN_MILLISECONDS); - m_uiBlinkTimer = urand(7*IN_MILLISECONDS,25*IN_MILLISECONDS); - m_uiIceBlockTimer = urand(0*IN_MILLISECONDS,360*IN_MILLISECONDS); - m_uiPolymorphTimer = urand(15*IN_MILLISECONDS,40*IN_MILLISECONDS); - m_uiCommonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiCounterspellTimer = urand(5*IN_MILLISECONDS, 15*IN_MILLISECONDS); + m_uiBlinkTimer = urand(7*IN_MILLISECONDS, 25*IN_MILLISECONDS); + m_uiIceBlockTimer = urand(0*IN_MILLISECONDS, 360*IN_MILLISECONDS); + m_uiPolymorphTimer = urand(15*IN_MILLISECONDS, 40*IN_MILLISECONDS); + m_uiCommonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); SetEquipmentSlots(false, 47524, EQUIP_NO_CHANGE, EQUIP_NO_CHANGE); } @@ -1083,8 +1099,8 @@ public: if (m_uiCounterspellTimer <= uiDiff) { if (Unit *pTarget = SelectEnemyCaster(false)) - DoCast(pTarget,SPELL_COUNTERSPELL); - m_uiCounterspellTimer = urand(5*IN_MILLISECONDS,15*IN_MILLISECONDS); + DoCast(pTarget, SPELL_COUNTERSPELL); + m_uiCounterspellTimer = urand(5*IN_MILLISECONDS, 15*IN_MILLISECONDS); } else m_uiCounterspellTimer -= uiDiff; if (m_uiBlinkTimer <= uiDiff) @@ -1094,29 +1110,29 @@ public: DoCastAOE(SPELL_FROST_NOVA); DoCast(SPELL_BLINK); } - m_uiBlinkTimer = urand(7*IN_MILLISECONDS,25*IN_MILLISECONDS); + m_uiBlinkTimer = urand(7*IN_MILLISECONDS, 25*IN_MILLISECONDS); } else m_uiBlinkTimer -= uiDiff; if (m_uiIceBlockTimer <= uiDiff) { if (HealthBelowPct(20)) - DoCast(me,SPELL_ICE_BLOCK); - m_uiIceBlockTimer = urand(0*IN_MILLISECONDS,360*IN_MILLISECONDS); + DoCast(me, SPELL_ICE_BLOCK); + m_uiIceBlockTimer = urand(0*IN_MILLISECONDS, 360*IN_MILLISECONDS); } else m_uiIceBlockTimer -= uiDiff; if (m_uiPolymorphTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_POLYMORPH); - m_uiPolymorphTimer = urand(15*IN_MILLISECONDS,40*IN_MILLISECONDS); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_POLYMORPH); + m_uiPolymorphTimer = urand(15*IN_MILLISECONDS, 40*IN_MILLISECONDS); } else m_uiPolymorphTimer -= uiDiff; if (m_uiCommonTimer <= uiDiff) { - switch(urand(0,2)) + switch (urand(0, 2)) { case 0: - DoCast(me,SPELL_ARCANE_BARRAGE); + DoCast(me, SPELL_ARCANE_BARRAGE); break; case 1: DoCastVictim(SPELL_ARCANE_BLAST); @@ -1125,7 +1141,7 @@ public: DoCastVictim(SPELL_FROSTBOLT); break; } - m_uiCommonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiCommonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiCommonTimer -= uiDiff; boss_faction_championsAI::UpdateAI(uiDiff); @@ -1175,15 +1191,15 @@ public: void Reset() { boss_faction_championsAI::Reset(); - m_uiDisengageTimer = urand(12*IN_MILLISECONDS,20*IN_MILLISECONDS); - m_uiDeterrenceTimer = urand(20*IN_MILLISECONDS,120*IN_MILLISECONDS); - m_uiWyvernStingTimer = urand(7*IN_MILLISECONDS,60*IN_MILLISECONDS); - m_uiFrostTrapTimer = urand(12*IN_MILLISECONDS,30*IN_MILLISECONDS); - m_uiWingClipTimer = urand(4*IN_MILLISECONDS,8*IN_MILLISECONDS); - m_uiCommonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiDisengageTimer = urand(12*IN_MILLISECONDS, 20*IN_MILLISECONDS); + m_uiDeterrenceTimer = urand(20*IN_MILLISECONDS, 120*IN_MILLISECONDS); + m_uiWyvernStingTimer = urand(7*IN_MILLISECONDS, 60*IN_MILLISECONDS); + m_uiFrostTrapTimer = urand(12*IN_MILLISECONDS, 30*IN_MILLISECONDS); + m_uiWingClipTimer = urand(4*IN_MILLISECONDS, 8*IN_MILLISECONDS); + m_uiCommonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); SetEquipmentSlots(false, 47156, EQUIP_NO_CHANGE, 48711); - m_uiSummonPetTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiSummonPetTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); DoCast(SPELL_CALL_PET); } @@ -1195,43 +1211,43 @@ public: { if (EnemiesInRange(10.0f) > 3) DoCast(SPELL_DISENGAGE); - m_uiDisengageTimer = urand(12*IN_MILLISECONDS,20*IN_MILLISECONDS); + m_uiDisengageTimer = urand(12*IN_MILLISECONDS, 20*IN_MILLISECONDS); } else m_uiDisengageTimer -= uiDiff; if (m_uiDeterrenceTimer <= uiDiff) { if (HealthBelowPct(20)) DoCast(SPELL_DETERRENCE); - m_uiDeterrenceTimer = urand(20*IN_MILLISECONDS,120*IN_MILLISECONDS); + m_uiDeterrenceTimer = urand(20*IN_MILLISECONDS, 120*IN_MILLISECONDS); } else m_uiDeterrenceTimer -= uiDiff; if (m_uiWyvernStingTimer <= uiDiff) { DoCastVictim(SPELL_WYVERN_STING); - m_uiWyvernStingTimer = urand(7*IN_MILLISECONDS,60*IN_MILLISECONDS); + m_uiWyvernStingTimer = urand(7*IN_MILLISECONDS, 60*IN_MILLISECONDS); } else m_uiWyvernStingTimer -= uiDiff; if (m_uiFrostTrapTimer <= uiDiff) { DoCast(SPELL_FROST_TRAP); - m_uiFrostTrapTimer = urand(12*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiFrostTrapTimer = urand(12*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiFrostTrapTimer -= uiDiff; if (m_uiWingClipTimer <= uiDiff) { if (me->GetDistance2d(me->getVictim()) < 5.0f) DoCastVictim(SPELL_WING_CLIP); - m_uiWingClipTimer = urand(4*IN_MILLISECONDS,8*IN_MILLISECONDS); + m_uiWingClipTimer = urand(4*IN_MILLISECONDS, 8*IN_MILLISECONDS); } else m_uiWingClipTimer -= uiDiff; if (m_uiSummonPetTimer <= uiDiff) { - m_uiSummonPetTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiSummonPetTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiSummonPetTimer -= uiDiff; if (m_uiCommonTimer <= uiDiff) { - switch(urand(0,3)) + switch (urand(0, 3)) { case 0: case 1: DoCastVictim(SPELL_SHOOT); @@ -1243,7 +1259,7 @@ public: DoCastVictim(SPELL_AIMED_SHOT); break; } - m_uiCommonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiCommonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiCommonTimer -= uiDiff; boss_faction_championsAI::UpdateAI(uiDiff); @@ -1287,11 +1303,11 @@ public: void Reset() { boss_faction_championsAI::Reset(); - m_uiBarkskinTimer = urand(5*IN_MILLISECONDS,120*IN_MILLISECONDS); - m_uiCycloneTimer = urand(5*IN_MILLISECONDS,40*IN_MILLISECONDS); - m_uiEntanglingRootsTimer = urand(5*IN_MILLISECONDS,40*IN_MILLISECONDS); - m_uiFaerieFireTimer = urand(10*IN_MILLISECONDS,40*IN_MILLISECONDS); - m_uiCommonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiBarkskinTimer = urand(5*IN_MILLISECONDS, 120*IN_MILLISECONDS); + m_uiCycloneTimer = urand(5*IN_MILLISECONDS, 40*IN_MILLISECONDS); + m_uiEntanglingRootsTimer = urand(5*IN_MILLISECONDS, 40*IN_MILLISECONDS); + m_uiFaerieFireTimer = urand(10*IN_MILLISECONDS, 40*IN_MILLISECONDS); + m_uiCommonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); SetEquipmentSlots(false, 50966, EQUIP_NO_CHANGE, EQUIP_NO_CHANGE); } @@ -1302,33 +1318,33 @@ public: if (m_uiBarkskinTimer <= uiDiff) { if (HealthBelowPct(50)) - DoCast(me,SPELL_BARKSKIN); - m_uiBarkskinTimer = urand(5*IN_MILLISECONDS,120*IN_MILLISECONDS); + DoCast(me, SPELL_BARKSKIN); + m_uiBarkskinTimer = urand(5*IN_MILLISECONDS, 120*IN_MILLISECONDS); } else m_uiBarkskinTimer -= uiDiff; if (m_uiCycloneTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_CYCLONE); - m_uiCycloneTimer = urand(5*IN_MILLISECONDS,40*IN_MILLISECONDS); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_CYCLONE); + m_uiCycloneTimer = urand(5*IN_MILLISECONDS, 40*IN_MILLISECONDS); } else m_uiCycloneTimer -= uiDiff; if (m_uiEntanglingRootsTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_ENTANGLING_ROOTS); - m_uiEntanglingRootsTimer = urand(5*IN_MILLISECONDS,40*IN_MILLISECONDS); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_ENTANGLING_ROOTS); + m_uiEntanglingRootsTimer = urand(5*IN_MILLISECONDS, 40*IN_MILLISECONDS); } else m_uiEntanglingRootsTimer -= uiDiff; if (m_uiFaerieFireTimer <= uiDiff) { DoCastVictim(SPELL_FAERIE_FIRE); - m_uiFaerieFireTimer = urand(10*IN_MILLISECONDS,40*IN_MILLISECONDS); + m_uiFaerieFireTimer = urand(10*IN_MILLISECONDS, 40*IN_MILLISECONDS); } else m_uiFaerieFireTimer -= uiDiff; if (m_uiCommonTimer <= uiDiff) { - switch(urand(0,6)) + switch (urand(0, 6)) { case 0: case 1: DoCastVictim(SPELL_MOONFIRE); @@ -1343,7 +1359,7 @@ public: DoCastVictim(SPELL_WRATH); break; } - m_uiCommonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiCommonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiCommonTimer -= uiDiff; boss_faction_championsAI::UpdateAI(uiDiff); @@ -1395,15 +1411,15 @@ public: void Reset() { boss_faction_championsAI::Reset(); - m_uiBladestormTimer = urand(20*IN_MILLISECONDS,30*IN_MILLISECONDS); - m_uiIntimidatingShoutTimer = urand(10*IN_MILLISECONDS,60*IN_MILLISECONDS); - m_uiMortalStrikeTimer = urand(6*IN_MILLISECONDS,25*IN_MILLISECONDS); - m_uiSunderArmorTimer = urand(5*IN_MILLISECONDS,25*IN_MILLISECONDS); - m_uiChargeTimer = urand(3*IN_MILLISECONDS,25*IN_MILLISECONDS); - m_uiRetaliationTimer = urand(30*IN_MILLISECONDS,60*IN_MILLISECONDS); - m_uiOverpowerTimer = urand(30*IN_MILLISECONDS,90*IN_MILLISECONDS); - m_uiShatteringThrowTimer = urand(10*IN_MILLISECONDS,25*IN_MILLISECONDS); - m_uiDisarmTimer = urand(20*IN_MILLISECONDS,80*IN_MILLISECONDS); + m_uiBladestormTimer = urand(20*IN_MILLISECONDS, 30*IN_MILLISECONDS); + m_uiIntimidatingShoutTimer = urand(10*IN_MILLISECONDS, 60*IN_MILLISECONDS); + m_uiMortalStrikeTimer = urand(6*IN_MILLISECONDS, 25*IN_MILLISECONDS); + m_uiSunderArmorTimer = urand(5*IN_MILLISECONDS, 25*IN_MILLISECONDS); + m_uiChargeTimer = urand(3*IN_MILLISECONDS, 25*IN_MILLISECONDS); + m_uiRetaliationTimer = urand(30*IN_MILLISECONDS, 60*IN_MILLISECONDS); + m_uiOverpowerTimer = urand(30*IN_MILLISECONDS, 90*IN_MILLISECONDS); + m_uiShatteringThrowTimer = urand(10*IN_MILLISECONDS, 25*IN_MILLISECONDS); + m_uiDisarmTimer = urand(20*IN_MILLISECONDS, 80*IN_MILLISECONDS); SetEquipmentSlots(false, 47427, 46964, EQUIP_NO_CHANGE); } @@ -1414,55 +1430,55 @@ public: if (m_uiBladestormTimer <= uiDiff) { DoCastVictim(SPELL_BLADESTORM); - m_uiBladestormTimer = urand(20*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiBladestormTimer = urand(20*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiBladestormTimer -= uiDiff; if (m_uiIntimidatingShoutTimer <= uiDiff) { - DoCast(me,SPELL_INTIMIDATING_SHOUT); - m_uiIntimidatingShoutTimer = urand(10*IN_MILLISECONDS,60*IN_MILLISECONDS); + DoCast(me, SPELL_INTIMIDATING_SHOUT); + m_uiIntimidatingShoutTimer = urand(10*IN_MILLISECONDS, 60*IN_MILLISECONDS); } else m_uiIntimidatingShoutTimer -= uiDiff; if (m_uiMortalStrikeTimer <= uiDiff) { DoCastVictim(SPELL_MORTAL_STRIKE); - m_uiMortalStrikeTimer = urand(6*IN_MILLISECONDS,25*IN_MILLISECONDS); + m_uiMortalStrikeTimer = urand(6*IN_MILLISECONDS, 25*IN_MILLISECONDS); } else m_uiMortalStrikeTimer -= uiDiff; if (m_uiSunderArmorTimer <= uiDiff) { DoCastVictim(SPELL_SUNDER_ARMOR); - m_uiSunderArmorTimer = urand(5*IN_MILLISECONDS,25*IN_MILLISECONDS); + m_uiSunderArmorTimer = urand(5*IN_MILLISECONDS, 25*IN_MILLISECONDS); } else m_uiSunderArmorTimer -= uiDiff; if (m_uiChargeTimer <= uiDiff) { DoCastVictim(SPELL_CHARGE); - m_uiChargeTimer = urand(3*IN_MILLISECONDS,25*IN_MILLISECONDS); + m_uiChargeTimer = urand(3*IN_MILLISECONDS, 25*IN_MILLISECONDS); } else m_uiChargeTimer -= uiDiff; if (m_uiRetaliationTimer <= uiDiff) { DoCastVictim(SPELL_RETALIATION); - m_uiRetaliationTimer = urand(30*IN_MILLISECONDS,60*IN_MILLISECONDS); + m_uiRetaliationTimer = urand(30*IN_MILLISECONDS, 60*IN_MILLISECONDS); } else m_uiRetaliationTimer -= uiDiff; if (m_uiOverpowerTimer <= uiDiff) { DoCastVictim(SPELL_OVERPOWER); - m_uiOverpowerTimer = urand(30*IN_MILLISECONDS,90*IN_MILLISECONDS); + m_uiOverpowerTimer = urand(30*IN_MILLISECONDS, 90*IN_MILLISECONDS); } else m_uiOverpowerTimer -= uiDiff; if (m_uiShatteringThrowTimer <= uiDiff) { DoCastVictim(SPELL_SHATTERING_THROW); - m_uiShatteringThrowTimer = urand(10*IN_MILLISECONDS,25*IN_MILLISECONDS); + m_uiShatteringThrowTimer = urand(10*IN_MILLISECONDS, 25*IN_MILLISECONDS); } else m_uiShatteringThrowTimer -= uiDiff; if (m_uiDisarmTimer <= uiDiff) { DoCastVictim(SPELL_DISARM); - m_uiDisarmTimer = urand(20*IN_MILLISECONDS,80*IN_MILLISECONDS); + m_uiDisarmTimer = urand(20*IN_MILLISECONDS, 80*IN_MILLISECONDS); } else m_uiDisarmTimer -= uiDiff; boss_faction_championsAI::UpdateAI(uiDiff); @@ -1507,13 +1523,13 @@ public: void Reset() { boss_faction_championsAI::Reset(); - m_uiIceboundFortitudeTimer = urand(5*IN_MILLISECONDS,90*IN_MILLISECONDS); - m_uiChainsOfIceTimer = urand(5*IN_MILLISECONDS,15*IN_MILLISECONDS); - m_uiDeathCoilTimer = urand(5*IN_MILLISECONDS,15*IN_MILLISECONDS); - m_uiStrangulateTimer = urand(10*IN_MILLISECONDS,90*IN_MILLISECONDS); - m_uiFrostStrikeTimer = urand(5*IN_MILLISECONDS,15*IN_MILLISECONDS); - m_uiIcyTouchTimer = urand(8*IN_MILLISECONDS,12*IN_MILLISECONDS); - m_uiDeathGripTimer = urand(5*IN_MILLISECONDS,15*IN_MILLISECONDS); + m_uiIceboundFortitudeTimer = urand(5*IN_MILLISECONDS, 90*IN_MILLISECONDS); + m_uiChainsOfIceTimer = urand(5*IN_MILLISECONDS, 15*IN_MILLISECONDS); + m_uiDeathCoilTimer = urand(5*IN_MILLISECONDS, 15*IN_MILLISECONDS); + m_uiStrangulateTimer = urand(10*IN_MILLISECONDS, 90*IN_MILLISECONDS); + m_uiFrostStrikeTimer = urand(5*IN_MILLISECONDS, 15*IN_MILLISECONDS); + m_uiIcyTouchTimer = urand(8*IN_MILLISECONDS, 12*IN_MILLISECONDS); + m_uiDeathGripTimer = urand(5*IN_MILLISECONDS, 15*IN_MILLISECONDS); SetEquipmentSlots(false, 47518, 51021, EQUIP_NO_CHANGE); } @@ -1524,47 +1540,47 @@ public: if (m_uiIceboundFortitudeTimer <= uiDiff) { if (HealthBelowPct(50)) - DoCast(me,SPELL_ICEBOUND_FORTITUDE); - m_uiIceboundFortitudeTimer = urand(5*IN_MILLISECONDS,90*IN_MILLISECONDS); + DoCast(me, SPELL_ICEBOUND_FORTITUDE); + m_uiIceboundFortitudeTimer = urand(5*IN_MILLISECONDS, 90*IN_MILLISECONDS); } else m_uiIceboundFortitudeTimer -= uiDiff; if (m_uiChainsOfIceTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_CHAINS_OF_ICE); - m_uiChainsOfIceTimer = urand(5*IN_MILLISECONDS,15*IN_MILLISECONDS); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_CHAINS_OF_ICE); + m_uiChainsOfIceTimer = urand(5*IN_MILLISECONDS, 15*IN_MILLISECONDS); } else m_uiChainsOfIceTimer -= uiDiff; if (m_uiDeathCoilTimer <= uiDiff) { DoCastVictim(SPELL_DEATH_COIL); - m_uiDeathCoilTimer = urand(5*IN_MILLISECONDS,15*IN_MILLISECONDS); + m_uiDeathCoilTimer = urand(5*IN_MILLISECONDS, 15*IN_MILLISECONDS); } else m_uiDeathCoilTimer -= uiDiff; if (m_uiStrangulateTimer <= uiDiff) { if (Unit *pTarget = SelectEnemyCaster(false)) - DoCast(pTarget,SPELL_STRANGULATE); - m_uiStrangulateTimer = urand(10*IN_MILLISECONDS,90*IN_MILLISECONDS); + DoCast(pTarget, SPELL_STRANGULATE); + m_uiStrangulateTimer = urand(10*IN_MILLISECONDS, 90*IN_MILLISECONDS); } else m_uiStrangulateTimer -= uiDiff; if (m_uiFrostStrikeTimer <= uiDiff) { DoCastVictim(SPELL_FROST_STRIKE); - m_uiFrostStrikeTimer = urand(5*IN_MILLISECONDS,15*IN_MILLISECONDS); + m_uiFrostStrikeTimer = urand(5*IN_MILLISECONDS, 15*IN_MILLISECONDS); } else m_uiFrostStrikeTimer -= uiDiff; if (m_uiIcyTouchTimer <= uiDiff) { DoCastVictim(SPELL_ICY_TOUCH); - m_uiIcyTouchTimer = urand(8*IN_MILLISECONDS,12*IN_MILLISECONDS); + m_uiIcyTouchTimer = urand(8*IN_MILLISECONDS, 12*IN_MILLISECONDS); } else m_uiIcyTouchTimer -= uiDiff; if (m_uiDeathGripTimer <= uiDiff) { if (me->IsInRange(me->getVictim(), 10.0f, 30.0f, false)) DoCastVictim(SPELL_DEATH_GRIP); - m_uiDeathGripTimer = urand(5*IN_MILLISECONDS,15*IN_MILLISECONDS); + m_uiDeathGripTimer = urand(5*IN_MILLISECONDS, 15*IN_MILLISECONDS); } else m_uiDeathGripTimer -= uiDiff; boss_faction_championsAI::UpdateAI(uiDiff); @@ -1609,13 +1625,13 @@ public: void Reset() { boss_faction_championsAI::Reset(); - m_uiFanOfKnivesTimer = urand(8*IN_MILLISECONDS,10*IN_MILLISECONDS); - m_uiHemorrhageTimer = urand(5*IN_MILLISECONDS,8*IN_MILLISECONDS); - m_uiEviscerateTimer = urand(15*IN_MILLISECONDS,20*IN_MILLISECONDS); - m_uiShadowstepTimer = urand(10*IN_MILLISECONDS,80*IN_MILLISECONDS); - m_uiBlindTimer = urand(7*IN_MILLISECONDS,8*IN_MILLISECONDS); - m_uiCloakTimer = urand(20*IN_MILLISECONDS,120*IN_MILLISECONDS); - m_uiBladeFlurryTimer = urand(12*IN_MILLISECONDS,120*IN_MILLISECONDS); + m_uiFanOfKnivesTimer = urand(8*IN_MILLISECONDS, 10*IN_MILLISECONDS); + m_uiHemorrhageTimer = urand(5*IN_MILLISECONDS, 8*IN_MILLISECONDS); + m_uiEviscerateTimer = urand(15*IN_MILLISECONDS, 20*IN_MILLISECONDS); + m_uiShadowstepTimer = urand(10*IN_MILLISECONDS, 80*IN_MILLISECONDS); + m_uiBlindTimer = urand(7*IN_MILLISECONDS, 8*IN_MILLISECONDS); + m_uiCloakTimer = urand(20*IN_MILLISECONDS, 120*IN_MILLISECONDS); + m_uiBladeFlurryTimer = urand(12*IN_MILLISECONDS, 120*IN_MILLISECONDS); SetEquipmentSlots(false, 47422, 49982, EQUIP_NO_CHANGE); } @@ -1627,47 +1643,47 @@ public: { if (EnemiesInRange(15.0f) > 2) DoCastAOE(SPELL_FAN_OF_KNIVES); - m_uiFanOfKnivesTimer = urand(8*IN_MILLISECONDS,10*IN_MILLISECONDS); + m_uiFanOfKnivesTimer = urand(8*IN_MILLISECONDS, 10*IN_MILLISECONDS); } else m_uiFanOfKnivesTimer -= uiDiff; if (m_uiHemorrhageTimer <= uiDiff) { DoCastVictim(SPELL_HEMORRHAGE); - m_uiHemorrhageTimer = urand(5*IN_MILLISECONDS,8*IN_MILLISECONDS); + m_uiHemorrhageTimer = urand(5*IN_MILLISECONDS, 8*IN_MILLISECONDS); } else m_uiHemorrhageTimer -= uiDiff; if (m_uiEviscerateTimer <= uiDiff) { DoCastVictim(SPELL_EVISCERATE); - m_uiEviscerateTimer = urand(15*IN_MILLISECONDS,20*IN_MILLISECONDS); + m_uiEviscerateTimer = urand(15*IN_MILLISECONDS, 20*IN_MILLISECONDS); } else m_uiEviscerateTimer -= uiDiff; if (m_uiShadowstepTimer <= uiDiff) { if (me->IsInRange(me->getVictim(), 10.0f, 40.0f)) DoCastVictim(SPELL_SHADOWSTEP); - m_uiShadowstepTimer = urand(10*IN_MILLISECONDS,80*IN_MILLISECONDS); + m_uiShadowstepTimer = urand(10*IN_MILLISECONDS, 80*IN_MILLISECONDS); } else m_uiShadowstepTimer -= uiDiff; if (m_uiBlindTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,1)) + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 1)) if (me->IsInRange(pTarget, 0.0f, 15.0f, false)) - DoCast(pTarget,SPELL_BLIND); - m_uiBlindTimer = urand(7*IN_MILLISECONDS,8*IN_MILLISECONDS); + DoCast(pTarget, SPELL_BLIND); + m_uiBlindTimer = urand(7*IN_MILLISECONDS, 8*IN_MILLISECONDS); } else m_uiBlindTimer -= uiDiff; if (m_uiCloakTimer <= uiDiff) { if (HealthBelowPct(50)) - DoCast(me,SPELL_CLOAK); - m_uiCloakTimer = urand(20*IN_MILLISECONDS,120*IN_MILLISECONDS); + DoCast(me, SPELL_CLOAK); + m_uiCloakTimer = urand(20*IN_MILLISECONDS, 120*IN_MILLISECONDS); } else m_uiCloakTimer -= uiDiff; if (m_uiBladeFlurryTimer <= uiDiff) { DoCastVictim(SPELL_BLADE_FLURRY); - m_uiBladeFlurryTimer = urand(12*IN_MILLISECONDS,120*IN_MILLISECONDS); + m_uiBladeFlurryTimer = urand(12*IN_MILLISECONDS, 120*IN_MILLISECONDS); } else m_uiBladeFlurryTimer -= uiDiff; boss_faction_championsAI::UpdateAI(uiDiff); @@ -1710,11 +1726,11 @@ public: void Reset() { boss_faction_championsAI::Reset(); - m_uiHeroismOrBloodlustTimer = urand(25*IN_MILLISECONDS,60*IN_MILLISECONDS); - m_uiEarthShockTimer = urand(5*IN_MILLISECONDS,8*IN_MILLISECONDS); - m_uiStormstrikeTimer = urand(5*IN_MILLISECONDS,90*IN_MILLISECONDS); - m_uiLavaLashTimer = urand(5*IN_MILLISECONDS,8*IN_MILLISECONDS); - m_uiDeployTotemTimer = urand(1*IN_MILLISECONDS,3*IN_MILLISECONDS); + m_uiHeroismOrBloodlustTimer = urand(25*IN_MILLISECONDS, 60*IN_MILLISECONDS); + m_uiEarthShockTimer = urand(5*IN_MILLISECONDS, 8*IN_MILLISECONDS); + m_uiStormstrikeTimer = urand(5*IN_MILLISECONDS, 90*IN_MILLISECONDS); + m_uiLavaLashTimer = urand(5*IN_MILLISECONDS, 8*IN_MILLISECONDS); + m_uiDeployTotemTimer = urand(1*IN_MILLISECONDS, 3*IN_MILLISECONDS); m_uiTotemCount = 0; m_fTotemOldCenterX = me->GetPositionX(); m_fTotemOldCenterY = me->GetPositionY(); @@ -1770,32 +1786,32 @@ public: else if (!me->HasAura(AURA_SATED)) DoCastAOE(SPELL_BLOODLUST); - m_uiHeroismOrBloodlustTimer = urand(25*IN_MILLISECONDS,60*IN_MILLISECONDS); + m_uiHeroismOrBloodlustTimer = urand(25*IN_MILLISECONDS, 60*IN_MILLISECONDS); } else m_uiHeroismOrBloodlustTimer -= uiDiff; if (m_uiEarthShockTimer <= uiDiff) { DoCastVictim(SPELL_EARTH_SHOCK_ENH); - m_uiEarthShockTimer = urand(5*IN_MILLISECONDS,8*IN_MILLISECONDS); + m_uiEarthShockTimer = urand(5*IN_MILLISECONDS, 8*IN_MILLISECONDS); } else m_uiEarthShockTimer -= uiDiff; if (m_uiStormstrikeTimer <= uiDiff) { DoCastVictim(SPELL_STORMSTRIKE); - m_uiStormstrikeTimer = urand(5*IN_MILLISECONDS,90*IN_MILLISECONDS); + m_uiStormstrikeTimer = urand(5*IN_MILLISECONDS, 90*IN_MILLISECONDS); } else m_uiStormstrikeTimer -= uiDiff; if (m_uiLavaLashTimer <= uiDiff) { DoCastVictim(SPELL_LAVA_LASH); - m_uiLavaLashTimer = urand(5*IN_MILLISECONDS,8*IN_MILLISECONDS); + m_uiLavaLashTimer = urand(5*IN_MILLISECONDS, 8*IN_MILLISECONDS); } else m_uiLavaLashTimer -= uiDiff; if (m_uiDeployTotemTimer <= uiDiff) { - if (m_uiTotemCount < 4 || me->GetDistance2d(m_fTotemOldCenterX,m_fTotemOldCenterY) > 20.0f) + if (m_uiTotemCount < 4 || me->GetDistance2d(m_fTotemOldCenterX, m_fTotemOldCenterY) > 20.0f) DeployTotem(); - m_uiDeployTotemTimer = urand(1*IN_MILLISECONDS,3*IN_MILLISECONDS); + m_uiDeployTotemTimer = urand(1*IN_MILLISECONDS, 3*IN_MILLISECONDS); } else m_uiDeployTotemTimer -= uiDiff; boss_faction_championsAI::UpdateAI(uiDiff); @@ -1842,11 +1858,11 @@ public: { boss_faction_championsAI::Reset(); m_uiRepeteanceTimer = 60*IN_MILLISECONDS; - m_uiCrusaderStrikeTimer = urand(6*IN_MILLISECONDS,18*IN_MILLISECONDS); + m_uiCrusaderStrikeTimer = urand(6*IN_MILLISECONDS, 18*IN_MILLISECONDS); m_uiAvengingWrathTimer = 180*IN_MILLISECONDS; - m_uiDivineShieldTimer = urand(0*IN_MILLISECONDS,360*IN_MILLISECONDS); + m_uiDivineShieldTimer = urand(0*IN_MILLISECONDS, 360*IN_MILLISECONDS); m_uiDivineStormTimer = 10*IN_MILLISECONDS; - m_uiJudgementOfCommandTimer = urand(8*IN_MILLISECONDS,15*IN_MILLISECONDS); + m_uiJudgementOfCommandTimer = urand(8*IN_MILLISECONDS, 15*IN_MILLISECONDS); SetEquipmentSlots(false, 47519, EQUIP_NO_CHANGE, EQUIP_NO_CHANGE); } @@ -1862,15 +1878,15 @@ public: if (m_uiRepeteanceTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_REPENTANCE); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_REPENTANCE); m_uiRepeteanceTimer = 60*IN_MILLISECONDS; } else m_uiRepeteanceTimer -= uiDiff; if (m_uiCrusaderStrikeTimer <= uiDiff) { DoCastVictim(SPELL_CRUSADER_STRIKE); - m_uiCrusaderStrikeTimer = urand(6*IN_MILLISECONDS,18*IN_MILLISECONDS); + m_uiCrusaderStrikeTimer = urand(6*IN_MILLISECONDS, 18*IN_MILLISECONDS); } else m_uiCrusaderStrikeTimer -= uiDiff; if (m_uiAvengingWrathTimer <= uiDiff) @@ -1882,8 +1898,8 @@ public: if (m_uiDivineShieldTimer <= uiDiff) { if (HealthBelowPct(20)) - DoCast(me,SPELL_DIVINE_SHIELD); - m_uiDivineShieldTimer = urand(0*IN_MILLISECONDS,360*IN_MILLISECONDS); + DoCast(me, SPELL_DIVINE_SHIELD); + m_uiDivineShieldTimer = urand(0*IN_MILLISECONDS, 360*IN_MILLISECONDS); } else m_uiDivineShieldTimer -= uiDiff; if (m_uiDivineStormTimer <= uiDiff) @@ -1895,7 +1911,7 @@ public: if (m_uiJudgementOfCommandTimer <= uiDiff) { DoCastVictim(SPELL_JUDGEMENT_OF_COMMAND); - m_uiJudgementOfCommandTimer = urand(8*IN_MILLISECONDS,15*IN_MILLISECONDS); + m_uiJudgementOfCommandTimer = urand(8*IN_MILLISECONDS, 15*IN_MILLISECONDS); } else m_uiJudgementOfCommandTimer -= uiDiff; boss_faction_championsAI::UpdateAI(uiDiff); @@ -1930,8 +1946,8 @@ public: void Reset() { boss_faction_championsAI::Reset(); - m_uiDevourMagicTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); - m_uiSpellLockTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiDevourMagicTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); + m_uiSpellLockTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } void UpdateAI(const uint32 uiDiff) @@ -1941,13 +1957,13 @@ public: if (m_uiDevourMagicTimer <= uiDiff) { DoCastVictim(SPELL_DEVOUR_MAGIC); - m_uiDevourMagicTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiDevourMagicTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiDevourMagicTimer -= uiDiff; if (m_uiSpellLockTimer <= uiDiff) { DoCastVictim(SPELL_SPELL_LOCK); - m_uiSpellLockTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiSpellLockTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiSpellLockTimer -= uiDiff; boss_faction_championsAI::UpdateAI(uiDiff); @@ -1980,7 +1996,7 @@ public: void Reset() { boss_faction_championsAI::Reset(); - m_uiClawTimer = urand(5*IN_MILLISECONDS,10*IN_MILLISECONDS); + m_uiClawTimer = urand(5*IN_MILLISECONDS, 10*IN_MILLISECONDS); } void UpdateAI(const uint32 uiDiff) @@ -1990,7 +2006,7 @@ public: if (m_uiClawTimer <= uiDiff) { DoCastVictim(SPELL_CLAW); - m_uiClawTimer = urand(5*IN_MILLISECONDS,10*IN_MILLISECONDS); + m_uiClawTimer = urand(5*IN_MILLISECONDS, 10*IN_MILLISECONDS); } else m_uiClawTimer -= uiDiff; boss_faction_championsAI::UpdateAI(uiDiff); diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_lord_jaraxxus.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_lord_jaraxxus.cpp index 701b4739924..085cbe025d1 100755 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_lord_jaraxxus.cpp +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_lord_jaraxxus.cpp @@ -101,7 +101,7 @@ public: { boss_jaraxxusAI(Creature* pCreature) : ScriptedAI(pCreature), Summons(me) { - m_pInstance = (InstanceScript*)pCreature->GetInstanceScript(); + m_pInstance = pCreature->GetInstanceScript(); Reset(); } @@ -124,11 +124,11 @@ public: m_pInstance->SetData(TYPE_JARAXXUS, NOT_STARTED); SetEquipmentSlots(false, EQUIP_MAIN, EQUIP_OFFHAND, EQUIP_RANGED); m_uiFelFireballTimer = 5*IN_MILLISECONDS; - m_uiFelLightningTimer = urand(10*IN_MILLISECONDS,15*IN_MILLISECONDS); - m_uiIncinerateFleshTimer = urand(20*IN_MILLISECONDS,25*IN_MILLISECONDS); + m_uiFelLightningTimer = urand(10*IN_MILLISECONDS, 15*IN_MILLISECONDS); + m_uiIncinerateFleshTimer = urand(20*IN_MILLISECONDS, 25*IN_MILLISECONDS); m_uiNetherPowerTimer = 40*IN_MILLISECONDS; m_uiLegionFlameTimer = 30*IN_MILLISECONDS; - m_uiTouchOfJaraxxusTimer = urand(10*IN_MILLISECONDS,15*IN_MILLISECONDS); + m_uiTouchOfJaraxxusTimer = urand(10*IN_MILLISECONDS, 15*IN_MILLISECONDS); m_uiSummonNetherPortalTimer = 1*MINUTE*IN_MILLISECONDS; m_uiSummonInfernalEruptionTimer = 2*MINUTE*IN_MILLISECONDS; Summons.DespawnAll(); @@ -138,7 +138,7 @@ public: { if (m_pInstance) m_pInstance->SetData(TYPE_JARAXXUS, FAIL); - DoCast(me,SPELL_JARAXXUS_CHAINS); + DoCast(me, SPELL_JARAXXUS_CHAINS); me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); me->SetReactState(REACT_PASSIVE); } @@ -155,7 +155,7 @@ public: void JustDied(Unit* /*pKiller*/) { Summons.DespawnAll(); - DoScriptText(SAY_DEATH,me); + DoScriptText(SAY_DEATH, me); if (m_pInstance) m_pInstance->SetData(TYPE_JARAXXUS, DONE); } @@ -170,7 +170,7 @@ public: me->SetInCombatWithZone(); if (m_pInstance) m_pInstance->SetData(TYPE_JARAXXUS, IN_PROGRESS); - DoScriptText(SAY_AGGRO,me); + DoScriptText(SAY_AGGRO, me); } void UpdateAI(const uint32 uiDiff) @@ -180,67 +180,67 @@ public: if (m_uiSummonInfernalEruptionTimer <= uiDiff) { - DoScriptText(EMOTE_INFERNAL_ERUPTION,me); - DoScriptText(SAY_INFERNAL_ERUPTION,me); - uint8 i = urand(2,3); - me->SummonCreature(NPC_INFERNAL_VOLCANO,JaraxxusLoc[i].GetPositionX(),JaraxxusLoc[i].GetPositionY(),JaraxxusLoc[i].GetPositionZ(),TEMPSUMMON_CORPSE_DESPAWN); + DoScriptText(EMOTE_INFERNAL_ERUPTION, me); + DoScriptText(SAY_INFERNAL_ERUPTION, me); + uint8 i = urand(2, 3); + me->SummonCreature(NPC_INFERNAL_VOLCANO, JaraxxusLoc[i].GetPositionX(), JaraxxusLoc[i].GetPositionY(), JaraxxusLoc[i].GetPositionZ(), TEMPSUMMON_CORPSE_DESPAWN); m_uiSummonInfernalEruptionTimer = 2*MINUTE*IN_MILLISECONDS; } else m_uiSummonInfernalEruptionTimer -= uiDiff; if (m_uiSummonNetherPortalTimer <= uiDiff) { - DoScriptText(EMOTE_NETHER_PORTAL,me); - DoScriptText(SAY_NETHER_PORTAL,me); - uint8 i = urand(2,3); - me->SummonCreature(NPC_NETHER_PORTAL,JaraxxusLoc[i].GetPositionX(),JaraxxusLoc[i].GetPositionY(),JaraxxusLoc[i].GetPositionZ(),TEMPSUMMON_CORPSE_DESPAWN); + DoScriptText(EMOTE_NETHER_PORTAL, me); + DoScriptText(SAY_NETHER_PORTAL, me); + uint8 i = urand(2, 3); + me->SummonCreature(NPC_NETHER_PORTAL, JaraxxusLoc[i].GetPositionX(), JaraxxusLoc[i].GetPositionY(), JaraxxusLoc[i].GetPositionZ(), TEMPSUMMON_CORPSE_DESPAWN); m_uiSummonNetherPortalTimer = 2*MINUTE*IN_MILLISECONDS; } else m_uiSummonNetherPortalTimer -= uiDiff; if (m_uiFelFireballTimer <= uiDiff) { DoCastVictim(SPELL_FEL_FIREBALL); - m_uiFelFireballTimer = urand(10*IN_MILLISECONDS,15*IN_MILLISECONDS); + m_uiFelFireballTimer = urand(10*IN_MILLISECONDS, 15*IN_MILLISECONDS); } else m_uiFelFireballTimer -= uiDiff; if (m_uiFelLightningTimer <= uiDiff) { if (Unit *pTarget = SelectTarget(SELECT_TARGET_RANDOM)) - DoCast(pTarget,SPELL_FEL_LIGHTING); - m_uiFelLightningTimer = urand(10*IN_MILLISECONDS,15*IN_MILLISECONDS); + DoCast(pTarget, SPELL_FEL_LIGHTING); + m_uiFelLightningTimer = urand(10*IN_MILLISECONDS, 15*IN_MILLISECONDS); } else m_uiFelLightningTimer -= uiDiff; if (m_uiIncinerateFleshTimer <= uiDiff) { - if (Unit *pTarget = SelectTarget(SELECT_TARGET_RANDOM,1)) + if (Unit *pTarget = SelectTarget(SELECT_TARGET_RANDOM, 1)) { - DoScriptText(EMOTE_INCINERATE,me,pTarget); - DoScriptText(SAY_INCINERATE,me); - DoCast(pTarget,SPELL_INCINERATE_FLESH); + DoScriptText(EMOTE_INCINERATE, me, pTarget); + DoScriptText(SAY_INCINERATE, me); + DoCast(pTarget, SPELL_INCINERATE_FLESH); } - m_uiIncinerateFleshTimer = urand(20*IN_MILLISECONDS,25*IN_MILLISECONDS); + m_uiIncinerateFleshTimer = urand(20*IN_MILLISECONDS, 25*IN_MILLISECONDS); } else m_uiIncinerateFleshTimer -= uiDiff; if (m_uiNetherPowerTimer <= uiDiff) { - DoCast(me,SPELL_NETHER_POWER); + DoCast(me, SPELL_NETHER_POWER); m_uiNetherPowerTimer = 40*IN_MILLISECONDS; } else m_uiNetherPowerTimer -= uiDiff; if (m_uiLegionFlameTimer <= uiDiff) { - if (Unit *pTarget = SelectTarget(SELECT_TARGET_RANDOM,1)) + if (Unit *pTarget = SelectTarget(SELECT_TARGET_RANDOM, 1)) { - DoScriptText(EMOTE_LEGION_FLAME,me,pTarget); - DoCast(pTarget,SPELL_LEGION_FLAME); + DoScriptText(EMOTE_LEGION_FLAME, me, pTarget); + DoCast(pTarget, SPELL_LEGION_FLAME); } m_uiLegionFlameTimer = 30*IN_MILLISECONDS; } else m_uiLegionFlameTimer -= uiDiff; if (getDifficulty() == RAID_DIFFICULTY_25MAN_HEROIC && m_uiTouchOfJaraxxusTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_TOUCH_OF_JARAXXUS); - m_uiTouchOfJaraxxusTimer = urand(10*IN_MILLISECONDS,15*IN_MILLISECONDS); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_TOUCH_OF_JARAXXUS); + m_uiTouchOfJaraxxusTimer = urand(10*IN_MILLISECONDS, 15*IN_MILLISECONDS); } else m_uiTouchOfJaraxxusTimer -= uiDiff; DoMeleeAttackIfReady(); @@ -249,7 +249,6 @@ public: }; - class mob_legion_flame : public CreatureScript { public: @@ -269,21 +268,19 @@ public: void Reset() { - me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); + me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); me->SetInCombatWithZone(); DoCast(SPELL_LEGION_FLAME_EFFECT); } void UpdateAI(const uint32 /*uiDiff*/) { - if (!UpdateVictim()) - return; + UpdateVictim(); } }; }; - class mob_infernal_volcano : public CreatureScript { public: @@ -354,14 +351,12 @@ public: m_Timer = 5*IN_MILLISECONDS; } else m_Timer -= uiDiff; - if (!UpdateVictim()) - return; + UpdateVictim(); } }; }; - class mob_fel_infernal : public CreatureScript { public: @@ -405,8 +400,8 @@ public: if (m_uiFelStreakTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_FEL_STREAK); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_FEL_STREAK); m_uiFelStreakTimer = 30*IN_MILLISECONDS; } else m_uiFelStreakTimer -= uiDiff; @@ -416,7 +411,6 @@ public: }; - class mob_nether_portal : public CreatureScript { public: @@ -481,14 +475,12 @@ public: m_Timer = 15*IN_MILLISECONDS; } else m_Timer -= uiDiff; - if (!UpdateVictim()) - return; + UpdateVictim(); } }; }; - class mob_mistress_of_pain : public CreatureScript { public: @@ -544,15 +536,15 @@ public: if (m_uiSpinningStrikeTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_SPINNING_STRIKE); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_SPINNING_STRIKE); m_uiSpinningStrikeTimer = 30*IN_MILLISECONDS; } else m_uiSpinningStrikeTimer -= uiDiff; if (IsHeroic() && m_uiMistressKissTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_MISTRESS_KISS); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_MISTRESS_KISS); m_uiMistressKissTimer = 30*IN_MILLISECONDS; } else m_uiMistressKissTimer -= uiDiff; @@ -562,7 +554,6 @@ public: }; - void AddSC_boss_jaraxxus() { new boss_jaraxxus(); diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_northrend_beasts.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_northrend_beasts.cpp index 34bee4908d8..8b5d1b2c841 100755 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_northrend_beasts.cpp +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_northrend_beasts.cpp @@ -136,9 +136,9 @@ public: void Reset() { - m_uiImpaleTimer = urand(8*IN_MILLISECONDS,10*IN_MILLISECONDS); + m_uiImpaleTimer = urand(8*IN_MILLISECONDS, 10*IN_MILLISECONDS); m_uiStaggeringStompTimer = 15*IN_MILLISECONDS; - m_uiSummonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS);; + m_uiSummonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS);; if (getDifficulty() == RAID_DIFFICULTY_25MAN_NORMAL || getDifficulty() == RAID_DIFFICULTY_25MAN_HEROIC) @@ -152,20 +152,20 @@ public: void JustDied(Unit* /*pKiller*/) { if (m_pInstance) - m_pInstance->SetData(TYPE_NORTHREND_BEASTS,GORMOK_DONE); + m_pInstance->SetData(TYPE_NORTHREND_BEASTS, GORMOK_DONE); } void JustReachedHome() { if (m_pInstance) - m_pInstance->SetData(TYPE_NORTHREND_BEASTS,FAIL); + m_pInstance->SetData(TYPE_NORTHREND_BEASTS, FAIL); me->ForcedDespawn(); } void EnterCombat(Unit* /*pWho*/) { me->SetInCombatWithZone(); - m_pInstance->SetData(TYPE_NORTHREND_BEASTS,GORMOK_IN_PROGRESS); + m_pInstance->SetData(TYPE_NORTHREND_BEASTS, GORMOK_IN_PROGRESS); } void JustSummoned(Creature* summon) @@ -197,24 +197,24 @@ public: if (m_uiImpaleTimer <= uiDiff) { - DoCast(me->getVictim(),SPELL_IMPALE); - m_uiImpaleTimer = urand(8*IN_MILLISECONDS,10*IN_MILLISECONDS); + DoCast(me->getVictim(), SPELL_IMPALE); + m_uiImpaleTimer = urand(8*IN_MILLISECONDS, 10*IN_MILLISECONDS); } else m_uiImpaleTimer -= uiDiff; if (m_uiStaggeringStompTimer <= uiDiff) { - DoCast(me->getVictim(),SPELL_STAGGERING_STOMP); - m_uiStaggeringStompTimer = urand(20*IN_MILLISECONDS,25*IN_MILLISECONDS); + DoCast(me->getVictim(), SPELL_STAGGERING_STOMP); + m_uiStaggeringStompTimer = urand(20*IN_MILLISECONDS, 25*IN_MILLISECONDS); } else m_uiStaggeringStompTimer -= uiDiff; if (m_uiSummonTimer <= uiDiff) { if (m_uiSummonCount > 0) { - me->SummonCreature(NPC_SNOBOLD_VASSAL,me->GetPositionX(),me->GetPositionY(),me->GetPositionZ(),0,TEMPSUMMON_CORPSE_DESPAWN); - DoScriptText(SAY_SNOBOLLED,me); + me->SummonCreature(NPC_SNOBOLD_VASSAL, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), 0, TEMPSUMMON_CORPSE_DESPAWN); + DoScriptText(SAY_SNOBOLLED, me); } - m_uiSummonTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiSummonTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiSummonTimer -= uiDiff; DoMeleeAttackIfReady(); @@ -262,7 +262,7 @@ public: if (m_pInstance) m_uiBossGUID = m_pInstance->GetData64(NPC_GORMOK); //Workaround for Snobold - me->RemoveFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); + me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); } void EnterCombat(Unit *pWho) @@ -293,7 +293,7 @@ public: void JustDied(Unit* /*pKiller*/) { - if (Unit *pTarget = Unit::GetPlayer(*me,m_uiTargetGUID)) + if (Unit *pTarget = Unit::GetPlayer(*me, m_uiTargetGUID)) if (pTarget->isAlive()) pTarget->RemoveAurasDueToSpell(SPELL_SNOBOLLED); if (m_pInstance) @@ -305,23 +305,23 @@ public: if (m_bTargetDied || !UpdateVictim()) return; - if (Unit* pTarget = Unit::GetPlayer(*me,m_uiTargetGUID)) + if (Unit* pTarget = Unit::GetPlayer(*me, m_uiTargetGUID)) if (!pTarget->isAlive()) if (m_pInstance) - if (Unit* pGormok = Unit::GetCreature(*me,m_pInstance->GetData64(NPC_GORMOK))) + if (Unit* pGormok = Unit::GetCreature(*me, m_pInstance->GetData64(NPC_GORMOK))) { if (pGormok->isAlive()) { SetCombatMovement(false); m_bTargetDied = true; - me->GetMotionMaster()->MoveJump(pGormok->GetPositionX(),pGormok->GetPositionY(),pGormok->GetPositionZ(),15.0f,15.0f); + me->GetMotionMaster()->MoveJump(pGormok->GetPositionX(), pGormok->GetPositionY(), pGormok->GetPositionZ(), 15.0f, 15.0f); } else { if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) { m_uiTargetGUID = pTarget->GetGUID(); - me->GetMotionMaster()->MoveJump(pTarget->GetPositionX(),pTarget->GetPositionY(),pTarget->GetPositionZ(),15.0f,15.0f); + me->GetMotionMaster()->MoveJump(pTarget->GetPositionX(), pTarget->GetPositionY(), pTarget->GetPositionZ(), 15.0f, 15.0f); } } } @@ -336,7 +336,7 @@ public: if (m_uiBatterTimer < uiDiff) { - if (Unit *pTarget = Unit::GetPlayer(*me,m_uiTargetGUID)) + if (Unit *pTarget = Unit::GetPlayer(*me, m_uiTargetGUID)) DoCast(pTarget, SPELL_BATTER); m_uiBatterTimer = 10000; } @@ -344,7 +344,7 @@ public: if (m_uiHeadCrackTimer < uiDiff) { - if (Unit *pTarget = Unit::GetPlayer(*me,m_uiTargetGUID)) + if (Unit *pTarget = Unit::GetPlayer(*me, m_uiTargetGUID)) DoCast(pTarget, SPELL_HEAD_CRACK); m_uiHeadCrackTimer = 35000; } @@ -359,208 +359,225 @@ public: struct boss_jormungarAI : public ScriptedAI { - boss_jormungarAI(Creature* pCreature) : ScriptedAI(pCreature) + boss_jormungarAI(Creature* creature) : ScriptedAI(creature) { - m_pInstance = (InstanceScript*)pCreature->GetInstanceScript(); + instanceScript = creature->GetInstanceScript(); } - InstanceScript* m_pInstance; - - uint32 m_uiSisterID; - - uint32 m_uiModelStationary; - uint32 m_uiModelMobile; - - uint32 m_uiBiteSpell; - uint32 m_uiSpewSpell; - uint32 m_uiSpitSpell; - uint32 m_uiSpraySpell; - - uint32 m_uiBiteTimer; - uint32 m_uiSpewTimer; - uint32 m_uiSlimePoolTimer; - uint32 m_uiSpitTimer; - uint32 m_uiSprayTimer; - uint32 m_uiSweepTimer; - uint32 m_uiSubmergeTimer; - uint8 m_uiStage; - bool m_bEnraged; - void Reset() { - m_bEnraged = false; - m_uiBiteTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); - m_uiSpewTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); - m_uiSlimePoolTimer = 15*IN_MILLISECONDS; - m_uiSpitTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); - m_uiSprayTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); - m_uiSweepTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + enraged = false; + biteTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); + spewTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); + slimePoolTimer = 15*IN_MILLISECONDS; + spitTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); + sprayTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); + sweepTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } void JustDied(Unit* /*pKiller*/) { - if (m_pInstance) + if (instanceScript) { - if (Creature* pSister = Unit::GetCreature((*me),m_pInstance->GetData64(m_uiSisterID))) + if (Creature* otherWorm = Unit::GetCreature(*me, instanceScript->GetData64(otherWormEntry))) { - if (!pSister->isAlive()) - m_pInstance->SetData(TYPE_NORTHREND_BEASTS, SNAKES_DONE); + if (!otherWorm->isAlive()) + { + instanceScript->SetData(TYPE_NORTHREND_BEASTS, SNAKES_DONE); + + if (TempSummon* summ = me->ToTempSummon()) + summ->UnSummon(); + else + me->ForcedDespawn(); + + if (TempSummon* summ = otherWorm->ToTempSummon()) + summ->UnSummon(); + else + otherWorm->ForcedDespawn(); + } else - m_pInstance->SetData(TYPE_NORTHREND_BEASTS, SNAKES_SPECIAL); + instanceScript->SetData(TYPE_NORTHREND_BEASTS, SNAKES_SPECIAL); } } } void JustReachedHome() { - if (m_pInstance && m_pInstance->GetData(TYPE_NORTHREND_BEASTS) != FAIL) - m_pInstance->SetData(TYPE_NORTHREND_BEASTS, FAIL); - me->ForcedDespawn(); + if (instanceScript && instanceScript->GetData(TYPE_NORTHREND_BEASTS) != FAIL) + instanceScript->SetData(TYPE_NORTHREND_BEASTS, FAIL); + + if (TempSummon* summ = me->ToTempSummon()) + summ->UnSummon(); + else + me->ForcedDespawn(); } void KilledUnit(Unit *pWho) { if (pWho->GetTypeId() == TYPEID_PLAYER) { - if (m_pInstance) - m_pInstance->SetData(DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE, 0); + if (instanceScript) + instanceScript->SetData(DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE, 0); } } void EnterCombat(Unit* /*pWho*/) { me->SetInCombatWithZone(); - if (m_pInstance) - m_pInstance->SetData(TYPE_NORTHREND_BEASTS, SNAKES_IN_PROGRESS); + if (instanceScript) + instanceScript->SetData(TYPE_NORTHREND_BEASTS, SNAKES_IN_PROGRESS); } void UpdateAI(const uint32 uiDiff) { if (!UpdateVictim()) return; - if (m_pInstance && m_pInstance->GetData(TYPE_NORTHREND_BEASTS) == SNAKES_SPECIAL && !m_bEnraged) + if (instanceScript && instanceScript->GetData(TYPE_NORTHREND_BEASTS) == SNAKES_SPECIAL && !enraged) { - DoScriptText(SAY_EMERGE,me); + DoScriptText(SAY_EMERGE, me); me->RemoveAurasDueToSpell(SPELL_SUBMERGE_0); - me->RemoveFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); + me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); DoCast(SPELL_ENRAGE); - m_bEnraged = true; - DoScriptText(SAY_BERSERK,me); - switch (m_uiStage) + enraged = true; + DoScriptText(SAY_BERSERK, me); + switch (stage) { - case 0: break; + case 0: + break; case 4: - m_uiStage = 5; - m_uiSubmergeTimer = 5*IN_MILLISECONDS; + stage = 5; + submergeTimer = 5*IN_MILLISECONDS; break; default: - m_uiStage = 7; + stage = 7; } } - switch (m_uiStage) + switch (stage) { case 0: // Mobile - if (m_uiBiteTimer <= uiDiff) + if (biteTimer <= uiDiff) { - DoCastVictim(m_uiBiteSpell); - m_uiBiteTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); - } else m_uiBiteTimer -= uiDiff; + DoCastVictim(biteSpell); + biteTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); + } else biteTimer -= uiDiff; - if (m_uiSpewTimer <= uiDiff) + if (spewTimer <= uiDiff) { - DoCastAOE(m_uiSpewSpell); - m_uiSpewTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); - } else m_uiSpewTimer -= uiDiff; + DoCastAOE(spewSpell); + spewTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); + } else spewTimer -= uiDiff; - if (m_uiSlimePoolTimer <= uiDiff) + if (slimePoolTimer <= uiDiff) { /* Spell summon has only 30s duration */ //DoCast(SUMMON_SLIME_POOL); - me->SummonCreature(NPC_SLIME_POOL,me->GetPositionX(),me->GetPositionY(),me->GetPositionZ(),0); - m_uiSlimePoolTimer = 30*IN_MILLISECONDS; - } else m_uiSlimePoolTimer -= uiDiff; + me->SummonCreature(NPC_SLIME_POOL, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), 0); + slimePoolTimer = 30*IN_MILLISECONDS; + } else slimePoolTimer -= uiDiff; - if (m_uiSubmergeTimer <= uiDiff && !m_bEnraged) + if (submergeTimer <= uiDiff && !enraged) { - m_uiStage = 1; - m_uiSubmergeTimer = 5*IN_MILLISECONDS; - } else m_uiSubmergeTimer -= uiDiff; + stage = 1; + submergeTimer = 5*IN_MILLISECONDS; + } else submergeTimer -= uiDiff; DoMeleeAttackIfReady(); break; case 1: // Submerge - me->SetFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); - DoCast(me,SPELL_SUBMERGE_0); - DoScriptText(SAY_SUBMERGE,me); - me->GetMotionMaster()->MovePoint(0,ToCCommonLoc[1].GetPositionX()+urand(0,80)-40,ToCCommonLoc[1].GetPositionY()+urand(0,80)-40,ToCCommonLoc[1].GetPositionZ()); - m_uiStage = 2; + me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); + DoCast(me, SPELL_SUBMERGE_0); + DoScriptText(SAY_SUBMERGE, me); + me->GetMotionMaster()->MovePoint(0, ToCCommonLoc[1].GetPositionX()+urand(0, 80)-40, ToCCommonLoc[1].GetPositionY()+urand(0, 80)-40, ToCCommonLoc[1].GetPositionZ()); + stage = 2; case 2: // Wait til emerge - if (m_uiSubmergeTimer <= uiDiff) + if (submergeTimer <= uiDiff) { - m_uiStage = 3; - m_uiSubmergeTimer = 50*IN_MILLISECONDS; - } else m_uiSubmergeTimer -= uiDiff; + stage = 3; + submergeTimer = 50*IN_MILLISECONDS; + } else submergeTimer -= uiDiff; break; case 3: // Emerge - me->SetDisplayId(m_uiModelStationary); - DoScriptText(SAY_EMERGE,me); + me->SetDisplayId(modelStationary); + DoScriptText(SAY_EMERGE, me); me->RemoveAurasDueToSpell(SPELL_SUBMERGE_0); - DoCast(me,SPELL_EMERGE_0); - me->RemoveFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); - me->SetFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_DISABLE_MOVE); + DoCast(me, SPELL_EMERGE_0); + me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); + me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISABLE_MOVE); SetCombatMovement(false); me->GetMotionMaster()->MoveIdle(); - m_uiStage = 4; + stage = 4; break; case 4: // Stationary - if (m_uiSprayTimer <= uiDiff) + if (sprayTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,m_uiSpraySpell); - m_uiSprayTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); - } else m_uiSprayTimer -= uiDiff; + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, spraySpell); + sprayTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); + } else sprayTimer -= uiDiff; - if (m_uiSweepTimer <= uiDiff) + if (sweepTimer <= uiDiff) { DoCastAOE(SPELL_SWEEP_0); - m_uiSweepTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); - } else m_uiSweepTimer -= uiDiff; + sweepTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); + } else sweepTimer -= uiDiff; - if (m_uiSubmergeTimer <= uiDiff) + if (submergeTimer <= uiDiff) { - m_uiStage = 5; - m_uiSubmergeTimer = 10*IN_MILLISECONDS; - } else m_uiSubmergeTimer -= uiDiff; + stage = 5; + submergeTimer = 10*IN_MILLISECONDS; + } else submergeTimer -= uiDiff; - DoSpellAttackIfReady(m_uiSpitSpell); + DoSpellAttackIfReady(spitSpell); break; case 5: // Submerge - me->SetFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); - DoCast(me,SPELL_SUBMERGE_0); - DoScriptText(SAY_SUBMERGE,me); - me->GetMotionMaster()->MovePoint(0,ToCCommonLoc[1].GetPositionX()+urand(0,80)-40,ToCCommonLoc[1].GetPositionY()+urand(0,80)-40,ToCCommonLoc[1].GetPositionZ()); - m_uiStage = 6; + me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); + DoCast(me, SPELL_SUBMERGE_0); + DoScriptText(SAY_SUBMERGE, me); + me->GetMotionMaster()->MovePoint(0, ToCCommonLoc[1].GetPositionX()+urand(0, 80)-40, ToCCommonLoc[1].GetPositionY()+urand(0, 80)-40, ToCCommonLoc[1].GetPositionZ()); + stage = 6; case 6: // Wait til emerge - if (m_uiSubmergeTimer <= uiDiff) + if (submergeTimer <= uiDiff) { - m_uiStage = 7; - m_uiSubmergeTimer = 45*IN_MILLISECONDS; - } else m_uiSubmergeTimer -= uiDiff; + stage = 7; + submergeTimer = 45*IN_MILLISECONDS; + } else submergeTimer -= uiDiff; break; case 7: // Emerge - me->SetDisplayId(m_uiModelMobile); - DoScriptText(SAY_EMERGE,me); + me->SetDisplayId(modelMobile); + DoScriptText(SAY_EMERGE, me); me->RemoveAurasDueToSpell(SPELL_SUBMERGE_0); - DoCast(me,SPELL_EMERGE_0); - me->RemoveFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); - me->RemoveFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_DISABLE_MOVE); + DoCast(me, SPELL_EMERGE_0); + me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); + me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISABLE_MOVE); SetCombatMovement(true); me->GetMotionMaster()->MoveChase(me->getVictim()); - m_uiStage = 0; + stage = 0; break; } } + + InstanceScript* instanceScript; + + uint32 otherWormEntry; + + uint32 modelStationary; + uint32 modelMobile; + + uint32 biteSpell; + uint32 spewSpell; + uint32 spitSpell; + uint32 spraySpell; + + uint32 biteTimer; + uint32 spewTimer; + uint32 slimePoolTimer; + uint32 spitTimer; + uint32 sprayTimer; + uint32 sweepTimer; + uint32 submergeTimer; + uint8 stage; + bool enraged; }; @@ -569,11 +586,6 @@ class boss_acidmaw : public CreatureScript public: boss_acidmaw() : CreatureScript("boss_acidmaw") { } - CreatureAI* GetAI(Creature* pCreature) const - { - return new boss_acidmawAI(pCreature); - } - struct boss_acidmawAI : public boss_jormungarAI { boss_acidmawAI(Creature* pCreature) : boss_jormungarAI(pCreature) { } @@ -581,20 +593,24 @@ class boss_acidmaw : public CreatureScript void Reset() { boss_jormungarAI::Reset(); - m_uiBiteSpell = SPELL_PARALYTIC_BITE; - m_uiSpewSpell = SPELL_ACID_SPEW; - m_uiSpitSpell = SPELL_ACID_SPIT; - m_uiSpraySpell = SPELL_PARALYTIC_SPRAY; - m_uiModelStationary = MODEL_ACIDMAW_STATIONARY; - m_uiModelMobile = MODEL_ACIDMAW_MOBILE; - m_uiSisterID = NPC_DREADSCALE; - - m_uiSubmergeTimer = 500; - DoCast(me,SPELL_SUBMERGE_0); - m_uiStage = 2; + biteSpell = SPELL_PARALYTIC_BITE; + spewSpell = SPELL_ACID_SPEW; + spitSpell = SPELL_ACID_SPIT; + spraySpell = SPELL_PARALYTIC_SPRAY; + modelStationary = MODEL_ACIDMAW_STATIONARY; + modelMobile = MODEL_ACIDMAW_MOBILE; + otherWormEntry = NPC_DREADSCALE; + + submergeTimer = 500; + DoCast(me, SPELL_SUBMERGE_0); + stage = 2; } }; + CreatureAI* GetAI(Creature* creature) const + { + return new boss_acidmawAI(creature); + } }; @@ -603,11 +619,6 @@ class boss_dreadscale : public CreatureScript public: boss_dreadscale() : CreatureScript("boss_dreadscale") { } - CreatureAI* GetAI(Creature* pCreature) const - { - return new boss_dreadscaleAI(pCreature); - } - struct boss_dreadscaleAI : public boss_jormungarAI { boss_dreadscaleAI(Creature* pCreature) : boss_jormungarAI(pCreature) { } @@ -615,19 +626,23 @@ public: void Reset() { boss_jormungarAI::Reset(); - m_uiBiteSpell = SPELL_BURNING_BITE; - m_uiSpewSpell = SPELL_MOLTEN_SPEW; - m_uiSpitSpell = SPELL_FIRE_SPIT; - m_uiSpraySpell = SPELL_BURNING_SPRAY; - m_uiModelStationary = MODEL_DREADSCALE_STATIONARY; - m_uiModelMobile = MODEL_DREADSCALE_MOBILE; - m_uiSisterID = NPC_ACIDMAW; - - m_uiSubmergeTimer = 45*IN_MILLISECONDS; - m_uiStage = 0; + biteSpell = SPELL_BURNING_BITE; + spewSpell = SPELL_MOLTEN_SPEW; + spitSpell = SPELL_FIRE_SPIT; + spraySpell = SPELL_BURNING_SPRAY; + modelStationary = MODEL_DREADSCALE_STATIONARY; + modelMobile = MODEL_DREADSCALE_MOBILE; + otherWormEntry = NPC_ACIDMAW; + + submergeTimer = 45 * IN_MILLISECONDS; + stage = 0; } }; + CreatureAI* GetAI(Creature* pCreature) const + { + return new boss_dreadscaleAI(pCreature); + } }; @@ -660,7 +675,7 @@ public: if (!casted) { casted = true; - DoCast(me,SPELL_SLIME_POOL_EFFECT); + DoCast(me, SPELL_SLIME_POOL_EFFECT); } } }; @@ -691,7 +706,7 @@ public: uint32 m_uiWhirlTimer; uint32 m_uiMassiveCrashTimer; uint32 m_uiTrampleTimer; - float m_fTrampleTargetX,m_fTrampleTargetY,m_fTrampleTargetZ; + float m_fTrampleTargetX, m_fTrampleTargetY, m_fTrampleTargetZ; uint64 m_uiTrampleTargetGUID; bool m_bMovementStarted; bool m_bMovementFinish; @@ -701,9 +716,9 @@ public: void Reset() { - m_uiFerociousButtTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); - m_uiArticBreathTimer = urand(25*IN_MILLISECONDS,40*IN_MILLISECONDS); - m_uiWhirlTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiFerociousButtTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); + m_uiArticBreathTimer = urand(25*IN_MILLISECONDS, 40*IN_MILLISECONDS); + m_uiWhirlTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); m_uiMassiveCrashTimer = 30*IN_MILLISECONDS; m_uiTrampleTimer = IN_MILLISECONDS; m_bMovementStarted = false; @@ -729,7 +744,7 @@ public: switch (uiId) { case 0: // JUMP!? Fuck! THAT'S BEEZARR! Would someone PLEASE make MotionMaster->Move* work better? - if (me->GetDistance2d(ToCCommonLoc[1].GetPositionX(),ToCCommonLoc[1].GetPositionY()) < 6.0f) + if (me->GetDistance2d(ToCCommonLoc[1].GetPositionX(), ToCCommonLoc[1].GetPositionY()) < 6.0f) { // Middle of the room m_uiStage = 1; @@ -737,7 +752,7 @@ public: else { // Landed from Hop backwards (start trample) - if (Unit::GetPlayer(*me,m_uiTrampleTargetGUID)) + if (Unit::GetPlayer(*me, m_uiTrampleTargetGUID)) { m_uiStage = 4; } else m_uiStage = 6; @@ -795,25 +810,25 @@ public: if (m_uiFerociousButtTimer <= uiDiff) { DoCastVictim(SPELL_FEROCIOUS_BUTT); - m_uiFerociousButtTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiFerociousButtTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiFerociousButtTimer -= uiDiff; if (m_uiArticBreathTimer <= uiDiff) { - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) - DoCast(pTarget,SPELL_ARCTIC_BREATH); - m_uiArticBreathTimer = urand(25*IN_MILLISECONDS,40*IN_MILLISECONDS); + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) + DoCast(pTarget, SPELL_ARCTIC_BREATH); + m_uiArticBreathTimer = urand(25*IN_MILLISECONDS, 40*IN_MILLISECONDS); } else m_uiArticBreathTimer -= uiDiff; if (m_uiWhirlTimer <= uiDiff) { DoCastAOE(SPELL_WHIRL); - m_uiWhirlTimer = urand(15*IN_MILLISECONDS,30*IN_MILLISECONDS); + m_uiWhirlTimer = urand(15*IN_MILLISECONDS, 30*IN_MILLISECONDS); } else m_uiWhirlTimer -= uiDiff; if (m_uiMassiveCrashTimer <= uiDiff) { - me->GetMotionMaster()->MoveJump(ToCCommonLoc[1].GetPositionX(),ToCCommonLoc[1].GetPositionY(),ToCCommonLoc[1].GetPositionZ(),10.0f,20.0f); // 1: Middle of the room + me->GetMotionMaster()->MoveJump(ToCCommonLoc[1].GetPositionX(), ToCCommonLoc[1].GetPositionY(), ToCCommonLoc[1].GetPositionZ(), 10.0f, 20.0f); // 1: Middle of the room m_uiStage = 7; //Invalid (Do nothing more than move) m_uiMassiveCrashTimer = 30*IN_MILLISECONDS; } else m_uiMassiveCrashTimer -= uiDiff; @@ -825,11 +840,11 @@ public: m_uiStage = 2; break; case 2: - if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM,0)) + if (Unit *pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0)) { m_uiTrampleTargetGUID = pTarget->GetGUID(); me->SetUInt64Value(UNIT_FIELD_TARGET, m_uiTrampleTargetGUID); - DoScriptText(SAY_TRAMPLE_STARE,me,pTarget); + DoScriptText(SAY_TRAMPLE_STARE, me, pTarget); m_bTrampleCasted = false; SetCombatMovement(false); me->GetMotionMaster()->MoveIdle(); @@ -841,7 +856,7 @@ public: case 3: if (m_uiTrampleTimer <= uiDiff) { - if (Unit* pTarget = Unit::GetPlayer(*me,m_uiTrampleTargetGUID)) + if (Unit* pTarget = Unit::GetPlayer(*me, m_uiTrampleTargetGUID)) { m_bTrampleCasted = false; m_bMovementStarted = true; @@ -851,14 +866,14 @@ public: me->GetMotionMaster()->MoveJump(2*me->GetPositionX()-m_fTrampleTargetX, 2*me->GetPositionY()-m_fTrampleTargetY, me->GetPositionZ(), - 10.0f,20.0f); // 2: Hop Backwards + 10.0f, 20.0f); // 2: Hop Backwards m_uiStage = 7; //Invalid (Do nothing more than move) } else m_uiStage = 6; } else m_uiTrampleTimer -= uiDiff; break; case 4: - DoScriptText(SAY_TRAMPLE_START,me); - me->GetMotionMaster()->MoveCharge(m_fTrampleTargetX,m_fTrampleTargetY,m_fTrampleTargetZ+2, 42, 1); + DoScriptText(SAY_TRAMPLE_START, me); + me->GetMotionMaster()->MoveCharge(m_fTrampleTargetX, m_fTrampleTargetY, m_fTrampleTargetZ+2, 42, 1); me->SetUInt64Value(UNIT_FIELD_TARGET, 0); m_uiStage = 5; break; @@ -888,8 +903,8 @@ public: case 6: if (!m_bTrampleCasted) { - DoCast(me,SPELL_STAGGERED_DAZE); - DoScriptText(SAY_TRAMPLE_FAIL,me); + DoCast(me, SPELL_STAGGERED_DAZE); + DoScriptText(SAY_TRAMPLE_FAIL, me); } m_bMovementStarted = false; me->GetMotionMaster()->MovementExpired(); diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_twin_valkyr.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_twin_valkyr.cpp index 875bc94d3e3..4e14a2208fa 100755 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_twin_valkyr.cpp +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_twin_valkyr.cpp @@ -145,7 +145,7 @@ struct boss_twin_baseAI : public ScriptedAI Position EssenceLocation[2]; void Reset() { - me->SetFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); + me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); me->SetReactState(REACT_PASSIVE); /* Uncomment this once that they are flying above the ground me->AddUnitMovementFlag(MOVEMENTFLAG_LEVITATING); @@ -156,7 +156,7 @@ struct boss_twin_baseAI : public ScriptedAI m_uiColorballsTimer = 15*IN_MILLISECONDS; m_uiSpecialAbilityTimer = MINUTE*IN_MILLISECONDS; m_uiSpikeTimer = 20*IN_MILLISECONDS; - m_uiTouchTimer = urand(10,15)*IN_MILLISECONDS; + m_uiTouchTimer = urand(10, 15)*IN_MILLISECONDS; m_uiBerserkTimer = IsHeroic() ? 6*MINUTE*IN_MILLISECONDS : 10*MINUTE*IN_MILLISECONDS; Summons.DespawnAll(); @@ -183,7 +183,7 @@ struct boss_twin_baseAI : public ScriptedAI me->SetHomePosition(HomeLocation); break; case 1: - me->RemoveFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); + me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); me->SetReactState(REACT_AGGRESSIVE); me->SetInCombatWithZone(); break; @@ -194,7 +194,7 @@ struct boss_twin_baseAI : public ScriptedAI { if (pWho->GetTypeId() == TYPEID_PLAYER) { - DoScriptText(urand(0,1) ? SAY_KILL1 : SAY_KILL2,me); + DoScriptText(urand(0, 1) ? SAY_KILL1 : SAY_KILL2, me); if (m_pInstance) m_pInstance->SetData(DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE, 0); } @@ -202,7 +202,7 @@ struct boss_twin_baseAI : public ScriptedAI void JustSummoned(Creature* pSummoned) { - switch(pSummoned->GetEntry()) + switch (pSummoned->GetEntry()) { case NPC_UNLEASHED_DARK: case NPC_UNLEASHED_LIGHT: @@ -214,7 +214,7 @@ struct boss_twin_baseAI : public ScriptedAI void SummonedCreatureDespawn(Creature* pSummoned) { - switch(pSummoned->GetEntry()) + switch (pSummoned->GetEntry()) { case NPC_LIGHT_ESSENCE: case NPC_DARK_ESSENCE: @@ -273,17 +273,17 @@ struct boss_twin_baseAI : public ScriptedAI for (uint8 i = 0; i < quantity; i++) { float x = float(urand(uint32(x0 - r), uint32(x0 + r))); - if (urand(0,1)) - y = y0 + sqrt(pow(r,2) - pow((x-x0),2)); + if (urand(0, 1)) + y = y0 + sqrt(pow(r, 2) - pow((x-x0), 2)); else - y = y0 - sqrt(pow(r,2) - pow((x-x0),2)); - me->SummonCreature(m_uiColorballNpcId,x,y,me->GetPositionZ(),TEMPSUMMON_CORPSE_DESPAWN); + y = y0 - sqrt(pow(r, 2) - pow((x-x0), 2)); + me->SummonCreature(m_uiColorballNpcId, x, y, me->GetPositionZ(), TEMPSUMMON_CORPSE_DESPAWN); } } void JustDied(Unit* /*pKiller*/) { - DoScriptText(SAY_DEATH,me); + DoScriptText(SAY_DEATH, me); if (m_pInstance) { m_pInstance->SetData(DATA_HEALTH_TWIN_SHARED, 0); @@ -303,7 +303,7 @@ struct boss_twin_baseAI : public ScriptedAI // Called when sister pointer needed Creature* GetSister() { - return Unit::GetCreature((*me),m_pInstance->GetData64(m_uiSisterNpcId)); + return Unit::GetCreature((*me), m_pInstance->GetData64(m_uiSisterNpcId)); } void EnterCombat(Unit* /*pWho*/) @@ -319,20 +319,20 @@ struct boss_twin_baseAI : public ScriptedAI me->SummonCreature(m_uiEssenceNpcId, EssenceLocation[0].GetPositionX(), EssenceLocation[0].GetPositionY(), EssenceLocation[0].GetPositionZ()); me->SummonCreature(m_uiEssenceNpcId, EssenceLocation[1].GetPositionX(), EssenceLocation[1].GetPositionY(), EssenceLocation[1].GetPositionZ()); } - DoScriptText(SAY_AGGRO,me); - DoCast(me,m_uiSurgeSpellId); + DoScriptText(SAY_AGGRO, me); + DoCast(me, m_uiSurgeSpellId); } void DoAction(const int32 action) { - switch(action) + switch (action) { case ACTION_VORTEX: m_uiStage = me->GetEntry() == NPC_LIGHTBANE ? 2 : 1; break; case ACTION_PACT: m_uiStage = me->GetEntry() == NPC_LIGHTBANE ? 1 : 2; - DoCast(me,SPELL_TWIN_POWER); + DoCast(me, SPELL_TWIN_POWER); break; } } @@ -356,8 +356,8 @@ struct boss_twin_baseAI : public ScriptedAI { if (Creature* pSister = GetSister()) pSister->AI()->DoAction(ACTION_VORTEX); - DoScriptText(m_uiVortexEmote,me); - DoScriptText(m_uiVortexSay,me); + DoScriptText(m_uiVortexEmote, me); + DoScriptText(m_uiVortexSay, me); DoCastAOE(m_uiVortexSpellId); m_uiStage = 0; m_uiSpecialAbilityTimer = MINUTE*IN_MILLISECONDS; @@ -368,10 +368,10 @@ struct boss_twin_baseAI : public ScriptedAI { if (Creature* pSister = GetSister()) pSister->AI()->DoAction(ACTION_PACT); - DoScriptText(EMOTE_SHIELD,me); - DoScriptText(SAY_SHIELD,me); - DoCast(me,m_uiShieldSpellId); - DoCast(me,m_uiTwinPactSpellId); + DoScriptText(EMOTE_SHIELD, me); + DoScriptText(SAY_SHIELD, me); + DoCast(me, m_uiShieldSpellId); + DoCast(me, m_uiTwinPactSpellId); m_uiStage = 0; m_uiSpecialAbilityTimer = MINUTE*IN_MILLISECONDS; } m_uiSpecialAbilityTimer -= uiDiff; @@ -388,9 +388,9 @@ struct boss_twin_baseAI : public ScriptedAI if (IsHeroic() && m_uiTouchTimer <= uiDiff) { - if (Unit *pTarget = SelectTarget(SELECT_TARGET_RANDOM,0,200,true,m_uiOtherEssenceSpellId)) - DoCast(pTarget,m_uiTouchSpellId); - m_uiTouchTimer = urand(10,15)*IN_MILLISECONDS; + if (Unit *pTarget = SelectTarget(SELECT_TARGET_RANDOM, 0, 200, true, m_uiOtherEssenceSpellId)) + DoCast(pTarget, m_uiTouchSpellId); + m_uiTouchTimer = urand(10, 15)*IN_MILLISECONDS; } m_uiTouchTimer -= uiDiff; if (m_uiColorballsTimer <= uiDiff) @@ -410,8 +410,8 @@ struct boss_twin_baseAI : public ScriptedAI if (!m_bIsBerserk && m_uiBerserkTimer <= uiDiff) { - DoCast(me,SPELL_BERSERK); - DoScriptText(SAY_BERSERK,me); + DoCast(me, SPELL_BERSERK); + DoScriptText(SAY_BERSERK, me); m_bIsBerserk = true; } else m_uiBerserkTimer -= uiDiff; @@ -566,16 +566,16 @@ struct mob_unleashed_ballAI : public ScriptedAI float x0 = ToCCommonLoc[1].GetPositionX(), y0 = ToCCommonLoc[1].GetPositionY(), r = 47.0f; float y = y0; float x = float(urand(uint32(x0 - r), uint32(x0 + r))); - if (urand(0,1)) - y = y0 + sqrt(pow(r,2) - pow((x-x0),2)); + if (urand(0, 1)) + y = y0 + sqrt(pow(r, 2) - pow((x-x0), 2)); else - y = y0 - sqrt(pow(r,2) - pow((x-x0),2)); - me->GetMotionMaster()->MovePoint(0,x,y,me->GetPositionZ()); + y = y0 - sqrt(pow(r, 2) - pow((x-x0), 2)); + me->GetMotionMaster()->MovePoint(0, x, y, me->GetPositionZ()); } void Reset() { - me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); + me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); me->SetReactState(REACT_PASSIVE); me->AddUnitMovementFlag(MOVEMENTFLAG_LEVITATING); me->SetFlying(true); @@ -591,7 +591,7 @@ struct mob_unleashed_ballAI : public ScriptedAI switch (uiId) { case 0: - if (urand(0,3) == 0) + if (urand(0, 3) == 0) MoveToNextPoint(); else me->DisappearAndDie(); diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp index 3234dfd39f0..1fe5a0498c6 100755 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp @@ -28,602 +28,694 @@ EndScriptData */ class instance_trial_of_the_crusader : public InstanceMapScript { -public: - instance_trial_of_the_crusader() : InstanceMapScript("instance_trial_of_the_crusader", 649) { } - - InstanceScript* GetInstanceScript(InstanceMap* pMap) const - { - return new instance_trial_of_the_crusader_InstanceMapScript(pMap); - } - - struct instance_trial_of_the_crusader_InstanceMapScript : public InstanceScript - { - instance_trial_of_the_crusader_InstanceMapScript(Map* pMap) : InstanceScript(pMap) {Initialize();}; - - uint32 m_auiEncounter[MAX_ENCOUNTERS]; - uint32 m_uiTrialCounter; - uint32 m_uiEvent; - uint32 m_uiEventTimer; - uint32 m_uiEventNPCId; - uint32 m_uiNorthrendBeasts; - std::string m_strInstData; - bool m_bNeedSave; - - uint32 m_uiDataDamageTwin; - uint32 m_uiFjolaCasting; - uint32 m_uiEydisCasting; - - uint64 m_uiBarrentGUID; - uint64 m_uiTirionGUID; - uint64 m_uiFizzlebangGUID; - uint64 m_uiGarroshGUID; - uint64 m_uiVarianGUID; - - uint64 m_uiGormokGUID; - uint64 m_uiAcidmawGUID; - uint64 m_uiDreadscaleGUID; - uint64 m_uiIcehowlGUID; - uint64 m_uiJaraxxusGUID; - uint64 m_uiChampionsControllerGUID; - uint64 m_uiDarkbaneGUID; - uint64 m_uiLightbaneGUID; - uint64 m_uiAnubarakGUID; - - uint64 m_uiCrusadersCacheGUID; - uint64 m_uiFloorGUID; - - uint64 m_uiTributeChestGUID; - - uint64 m_uiMainGateDoorGUID; - uint64 m_uiEastPortcullisGUID; - uint64 m_uiWebDoorGUID; - - // Achievement stuff - uint32 m_uiNotOneButTwoJormungarsTimer; - uint32 m_uiResilienceWillFixItTimer; - uint8 m_uiSnoboldCount; - uint8 m_uiMistressOfPainCount; - bool m_bTributeToImmortalityElegible; - std::list<uint32> m_vScarabTimeOfDeath; - - void Initialize() - { - for (uint8 i = 0; i < MAX_ENCOUNTERS; ++i) - m_auiEncounter[i] = NOT_STARTED; + public: + instance_trial_of_the_crusader() : InstanceMapScript("instance_trial_of_the_crusader", 649) { } - m_uiTrialCounter = 50; - m_uiEvent = 0; + struct instance_trial_of_the_crusader_InstanceMapScript : public InstanceScript + { + instance_trial_of_the_crusader_InstanceMapScript(Map* pMap) : InstanceScript(pMap) {Initialize();}; + + uint32 EncounterStatus[MAX_ENCOUNTERS]; + uint32 TrialCounter; + uint32 EventStage; + uint32 EventTimer; + uint32 EventNPCId; + uint32 NorthrendBeasts; + std::string SaveDataBuffer; + bool NeedSave; + + uint32 DataDamageTwin; + uint32 FjolaCasting; + uint32 EydisCasting; + + uint64 BarrentGUID; + uint64 TirionGUID; + uint64 FizzlebangGUID; + uint64 GarroshGUID; + uint64 VarianGUID; + + uint64 GormokGUID; + uint64 AcidmawGUID; + uint64 DreadscaleGUID; + uint64 IcehowlGUID; + uint64 JaraxxusGUID; + uint64 ChampionsControllerGUID; + uint64 DarkbaneGUID; + uint64 LightbaneGUID; + uint64 AnubarakGUID; + + uint64 CrusadersCacheGUID; + uint64 FloorGUID; + + uint64 TributeChestGUID; + + uint64 MainGateDoorGUID; + uint64 EastPortcullisGUID; + uint64 WebDoorGUID; + + // Achievement stuff + uint32 NotOneButTwoJormungarsTimer; + uint32 ResilienceWillFixItTimer; + uint8 SnoboldCount; + uint8 MistressOfPainCount; + bool TributeToImmortalityElegible; + + void Initialize() + { + for (uint8 i = 0; i < MAX_ENCOUNTERS; ++i) + EncounterStatus[i] = NOT_STARTED; - m_uiTributeChestGUID = 0; - m_uiDataDamageTwin = 0; + TrialCounter = 50; + EventStage = 0; - m_uiMainGateDoorGUID = 0; - m_uiEastPortcullisGUID = 0; - m_uiWebDoorGUID = 0; + TributeChestGUID = 0; + DataDamageTwin = 0; - m_uiNorthrendBeasts = NOT_STARTED; + MainGateDoorGUID = 0; + EastPortcullisGUID = 0; + WebDoorGUID = 0; - m_uiEventTimer = 1000; + NorthrendBeasts = NOT_STARTED; - m_uiNotOneButTwoJormungarsTimer = 0; - m_uiResilienceWillFixItTimer = 0; - m_uiSnoboldCount = 0; - m_uiMistressOfPainCount = 0; - m_bTributeToImmortalityElegible = true; + EventTimer = 1000; - m_bNeedSave = false; - } + NotOneButTwoJormungarsTimer = 0; + ResilienceWillFixItTimer = 0; + SnoboldCount = 0; + MistressOfPainCount = 0; + TributeToImmortalityElegible = true; - bool IsEncounterInProgress() const - { - for (uint8 i = 0; i < MAX_ENCOUNTERS ; ++i) - if (m_auiEncounter[i] == IN_PROGRESS) - return true; - return false; - } + NeedSave = false; + } - void OnPlayerEnter(Player *m_player) - { - if (instance->IsHeroic()) + bool IsEncounterInProgress() const { - m_player->SendUpdateWorldState(UPDATE_STATE_UI_SHOW,1); - m_player->SendUpdateWorldState(UPDATE_STATE_UI_COUNT, GetData(TYPE_COUNTER)); + for (uint8 i = 0; i < MAX_ENCOUNTERS ; ++i) + if (EncounterStatus[i] == IN_PROGRESS) + return true; + return false; } - } - - bool IsRaidWiped() - { - Map::PlayerList const &players = instance->GetPlayers(); - for (Map::PlayerList::const_iterator i = players.begin(); i != players.end(); ++i) + void OnPlayerEnter(Player* player) { - if (Player* pPlayer = i->getSource()) + if (instance->IsHeroic()) { - if (pPlayer->isAlive()) - return false; + player->SendUpdateWorldState(UPDATE_STATE_UI_SHOW, 1); + player->SendUpdateWorldState(UPDATE_STATE_UI_COUNT, GetData(TYPE_COUNTER)); } } - return true; - } - void OpenDoor(uint64 guid) - { - if (!guid) return; - GameObject* go = instance->GetGameObject(guid); - if (go) go->SetGoState(GO_STATE_ACTIVE_ALTERNATIVE); - } + bool IsRaidWiped() + { + Map::PlayerList const &players = instance->GetPlayers(); + for (Map::PlayerList::const_iterator i = players.begin(); i != players.end(); ++i) + if (Player* player = i->getSource()) + if (player->isAlive()) + return false; - void CloseDoor(uint64 guid) - { - if (!guid) return; - GameObject* go = instance->GetGameObject(guid); - if (go) go->SetGoState(GO_STATE_READY); - } + return true; + } - void OnCreatureCreate(Creature* creature) - { - switch(creature->GetEntry()) + void OpenDoor(uint64 guid) { - case NPC_BARRENT: m_uiBarrentGUID = creature->GetGUID(); break; - case NPC_TIRION: m_uiTirionGUID = creature->GetGUID(); break; - case NPC_FIZZLEBANG: m_uiFizzlebangGUID = creature->GetGUID(); break; - case NPC_GARROSH: m_uiGarroshGUID = creature->GetGUID(); break; - case NPC_VARIAN: m_uiVarianGUID = creature->GetGUID(); break; - - case NPC_GORMOK: m_uiGormokGUID = creature->GetGUID(); break; - case NPC_ACIDMAW: m_uiAcidmawGUID = creature->GetGUID(); break; - case NPC_DREADSCALE: m_uiDreadscaleGUID = creature->GetGUID(); break; - case NPC_ICEHOWL: m_uiIcehowlGUID = creature->GetGUID(); break; - case NPC_JARAXXUS: m_uiJaraxxusGUID = creature->GetGUID(); break; - case NPC_CHAMPIONS_CONTROLLER: m_uiChampionsControllerGUID = creature->GetGUID(); break; - case NPC_DARKBANE: m_uiDarkbaneGUID = creature->GetGUID(); break; - case NPC_LIGHTBANE: m_uiLightbaneGUID = creature->GetGUID(); break; - case NPC_ANUBARAK: m_uiAnubarakGUID = creature->GetGUID(); break; + if (!guid) + return; + if (GameObject* go = instance->GetGameObject(guid)) + go->SetGoState(GO_STATE_ACTIVE_ALTERNATIVE); } - } - void OnGameObjectCreate(GameObject* go) - { - switch(go->GetEntry()) + void CloseDoor(uint64 guid) { - case GO_CRUSADERS_CACHE_10: - if (instance->GetSpawnMode() == RAID_DIFFICULTY_10MAN_NORMAL) - m_uiCrusadersCacheGUID = go->GetGUID(); - break; - case GO_CRUSADERS_CACHE_25: - if (instance->GetSpawnMode() == RAID_DIFFICULTY_25MAN_NORMAL) - m_uiCrusadersCacheGUID = go->GetGUID(); - break; - case GO_CRUSADERS_CACHE_10_H: - if (instance->GetSpawnMode() == RAID_DIFFICULTY_10MAN_HEROIC) - m_uiCrusadersCacheGUID = go->GetGUID(); - break; - case GO_CRUSADERS_CACHE_25_H: - if (instance->GetSpawnMode() == RAID_DIFFICULTY_25MAN_HEROIC) - m_uiCrusadersCacheGUID = go->GetGUID(); - break; - case GO_ARGENT_COLISEUM_FLOOR: m_uiFloorGUID = go->GetGUID(); break; - case GO_MAIN_GATE_DOOR: m_uiMainGateDoorGUID = go->GetGUID(); break; - case GO_EAST_PORTCULLIS: m_uiEastPortcullisGUID = go->GetGUID(); break; - case GO_WEB_DOOR: m_uiWebDoorGUID = go->GetGUID(); break; - - case GO_TRIBUTE_CHEST_10H_25: - case GO_TRIBUTE_CHEST_10H_45: - case GO_TRIBUTE_CHEST_10H_50: - case GO_TRIBUTE_CHEST_10H_99: - case GO_TRIBUTE_CHEST_25H_25: - case GO_TRIBUTE_CHEST_25H_45: - case GO_TRIBUTE_CHEST_25H_50: - case GO_TRIBUTE_CHEST_25H_99: - m_uiTributeChestGUID = go->GetGUID(); break; + if (!guid) + return; + if (GameObject* go = instance->GetGameObject(guid)) + go->SetGoState(GO_STATE_READY); } - } - void SetData(uint32 uiType, uint32 uiData) - { - switch(uiType) + void OnCreatureCreate(Creature* creature) { - case TYPE_JARAXXUS: - if (uiData == DONE) m_uiEvent = 2000; - break; - case TYPE_CRUSADERS: - switch (uiData) - { - case IN_PROGRESS: m_uiResilienceWillFixItTimer = 0; break; - case SPECIAL: //Means the first blood - m_uiResilienceWillFixItTimer = 60*IN_MILLISECONDS; - uiData = IN_PROGRESS; - break; - case DONE: - DoUpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_BE_SPELL_TARGET, SPELL_DEFEAT_FACTION_CHAMPIONS); - if (m_uiResilienceWillFixItTimer > 0) - DoUpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_BE_SPELL_TARGET, SPELL_CHAMPIONS_KILLED_IN_MINUTE); - if (GameObject* pChest = instance->GetGameObject(m_uiCrusadersCacheGUID)) - if (pChest && !pChest->isSpawned()) - pChest->SetRespawnTime(7*DAY); - m_uiEvent = 3100; - break; - } - break; - case TYPE_VALKIRIES: - switch (uiData) - { - case FAIL: - if (m_auiEncounter[TYPE_VALKIRIES] == NOT_STARTED) uiData = NOT_STARTED; - break; - case SPECIAL: - if (m_auiEncounter[TYPE_VALKIRIES] == SPECIAL) uiData = DONE; - break; - case DONE: - if (instance->GetPlayers().getFirst()->getSource()->GetTeam() == ALLIANCE) - m_uiEvent = 4020; - else - m_uiEvent = 4030; - break; - } - break; - case TYPE_ANUBARAK: - switch (uiData) - { - case DONE: - m_uiEvent = 6000; - break; - case SPECIAL: - uint32 tributeChest = 0; - if (instance->GetSpawnMode() == RAID_DIFFICULTY_10MAN_HEROIC) - { - if (m_uiTrialCounter >= 50) - tributeChest = GO_TRIBUTE_CHEST_10H_99; + switch (creature->GetEntry()) + { + case NPC_BARRENT: + BarrentGUID = creature->GetGUID(); + break; + case NPC_TIRION: + TirionGUID = creature->GetGUID(); + break; + case NPC_FIZZLEBANG: + FizzlebangGUID = creature->GetGUID(); + break; + case NPC_GARROSH: + GarroshGUID = creature->GetGUID(); + break; + case NPC_VARIAN: + VarianGUID = creature->GetGUID(); + break; + + case NPC_GORMOK: + GormokGUID = creature->GetGUID(); + break; + case NPC_ACIDMAW: + AcidmawGUID = creature->GetGUID(); + break; + case NPC_DREADSCALE: + DreadscaleGUID = creature->GetGUID(); + break; + case NPC_ICEHOWL: + IcehowlGUID = creature->GetGUID(); + break; + case NPC_JARAXXUS: + JaraxxusGUID = creature->GetGUID(); + break; + case NPC_CHAMPIONS_CONTROLLER: + ChampionsControllerGUID = creature->GetGUID(); + break; + case NPC_DARKBANE: + DarkbaneGUID = creature->GetGUID(); + break; + case NPC_LIGHTBANE: + LightbaneGUID = creature->GetGUID(); + break; + case NPC_ANUBARAK: + AnubarakGUID = creature->GetGUID(); + break; + } + } + + void OnGameObjectCreate(GameObject* go) + { + switch (go->GetEntry()) + { + case GO_CRUSADERS_CACHE_10: + if (instance->GetSpawnMode() == RAID_DIFFICULTY_10MAN_NORMAL) + CrusadersCacheGUID = go->GetGUID(); + break; + case GO_CRUSADERS_CACHE_25: + if (instance->GetSpawnMode() == RAID_DIFFICULTY_25MAN_NORMAL) + CrusadersCacheGUID = go->GetGUID(); + break; + case GO_CRUSADERS_CACHE_10_H: + if (instance->GetSpawnMode() == RAID_DIFFICULTY_10MAN_HEROIC) + CrusadersCacheGUID = go->GetGUID(); + break; + case GO_CRUSADERS_CACHE_25_H: + if (instance->GetSpawnMode() == RAID_DIFFICULTY_25MAN_HEROIC) + CrusadersCacheGUID = go->GetGUID(); + break; + case GO_ARGENT_COLISEUM_FLOOR: + FloorGUID = go->GetGUID(); + break; + case GO_MAIN_GATE_DOOR: + MainGateDoorGUID = go->GetGUID(); + break; + case GO_EAST_PORTCULLIS: + EastPortcullisGUID = go->GetGUID(); + break; + case GO_WEB_DOOR: + WebDoorGUID = go->GetGUID(); + break; + + case GO_TRIBUTE_CHEST_10H_25: + case GO_TRIBUTE_CHEST_10H_45: + case GO_TRIBUTE_CHEST_10H_50: + case GO_TRIBUTE_CHEST_10H_99: + case GO_TRIBUTE_CHEST_25H_25: + case GO_TRIBUTE_CHEST_25H_45: + case GO_TRIBUTE_CHEST_25H_50: + case GO_TRIBUTE_CHEST_25H_99: + TributeChestGUID = go->GetGUID(); + break; + } + } + + void SetData(uint32 type, uint32 data) + { + switch (type) + { + case TYPE_JARAXXUS: + if (data == DONE) + EventStage = 2000; + break; + case TYPE_CRUSADERS: + switch (data) + { + case IN_PROGRESS: + ResilienceWillFixItTimer = 0; + break; + case SPECIAL: //Means the first blood + ResilienceWillFixItTimer = 60*IN_MILLISECONDS; + data = IN_PROGRESS; + break; + case DONE: + DoUpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_BE_SPELL_TARGET, SPELL_DEFEAT_FACTION_CHAMPIONS); + if (ResilienceWillFixItTimer > 0) + DoUpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_BE_SPELL_TARGET, SPELL_CHAMPIONS_KILLED_IN_MINUTE); + DoRespawnGameObject(CrusadersCacheGUID, 7*DAY); + EventStage = 3100; + break; + } + break; + case TYPE_VALKIRIES: + switch (data) + { + case FAIL: + if (EncounterStatus[TYPE_VALKIRIES] == NOT_STARTED) + data = NOT_STARTED; + break; + case SPECIAL: + if (EncounterStatus[TYPE_VALKIRIES] == SPECIAL) + data = DONE; + break; + case DONE: + if (instance->GetPlayers().getFirst()->getSource()->GetTeam() == ALLIANCE) + EventStage = 4020; else - if (m_uiTrialCounter >= 45) - tributeChest = GO_TRIBUTE_CHEST_10H_50; + EventStage = 4030; + break; + } + break; + case TYPE_ANUBARAK: + switch (data) + { + case DONE: + EventStage = 6000; + break; + case SPECIAL: + uint32 tributeChest = 0; + if (instance->GetSpawnMode() == RAID_DIFFICULTY_10MAN_HEROIC) + { + if (TrialCounter >= 50) + tributeChest = GO_TRIBUTE_CHEST_10H_99; else - if (m_uiTrialCounter >= 25) - tributeChest = GO_TRIBUTE_CHEST_10H_45; + if (TrialCounter >= 45) + tributeChest = GO_TRIBUTE_CHEST_10H_50; else - tributeChest = GO_TRIBUTE_CHEST_10H_25; - } - else if (instance->GetSpawnMode() == RAID_DIFFICULTY_25MAN_HEROIC) - { - if (m_uiTrialCounter >= 50) - tributeChest = GO_TRIBUTE_CHEST_25H_99; - else - if (m_uiTrialCounter >= 45) - tributeChest = GO_TRIBUTE_CHEST_25H_50; + if (TrialCounter >= 25) + tributeChest = GO_TRIBUTE_CHEST_10H_45; + else + tributeChest = GO_TRIBUTE_CHEST_10H_25; + } + else if (instance->GetSpawnMode() == RAID_DIFFICULTY_25MAN_HEROIC) + { + if (TrialCounter >= 50) + tributeChest = GO_TRIBUTE_CHEST_25H_99; else - if (m_uiTrialCounter >= 25) - tributeChest = GO_TRIBUTE_CHEST_25H_45; + if (TrialCounter >= 45) + tributeChest = GO_TRIBUTE_CHEST_25H_50; else - tributeChest = GO_TRIBUTE_CHEST_25H_25; - } - if (tributeChest) - if (Creature* pTirion = instance->GetCreature(m_uiTirionGUID)) - if (GameObject* pChest = pTirion->SummonGameObject(tributeChest,805.62f,134.87f,142.16f,3.27f,0,0,0,0,90000000)) - pChest->SetRespawnTime(pChest->GetRespawnDelay()); - break; - } - break; - case TYPE_COUNTER: m_uiTrialCounter = uiData; uiData = DONE; break; - case TYPE_EVENT: m_uiEvent = uiData; uiData = NOT_STARTED; break; - case TYPE_EVENT_TIMER: m_uiEventTimer = uiData; uiData = NOT_STARTED; break; - case TYPE_NORTHREND_BEASTS: - m_uiNorthrendBeasts = uiData; - switch (uiData) + if (TrialCounter >= 25) + tributeChest = GO_TRIBUTE_CHEST_25H_45; + else + tributeChest = GO_TRIBUTE_CHEST_25H_25; + } + if (tributeChest) + if (Creature* tirion = instance->GetCreature(TirionGUID)) + if (GameObject* chest = tirion->SummonGameObject(tributeChest, 805.62f, 134.87f, 142.16f, 3.27f, 0, 0, 0, 0, 90000000)) + chest->SetRespawnTime(chest->GetRespawnDelay()); + break; + } + break; + case TYPE_COUNTER: + TrialCounter = data; + data = DONE; + break; + case TYPE_EVENT: + EventStage = data; + data = NOT_STARTED; + break; + case TYPE_EVENT_TIMER: + EventTimer = data; + data = NOT_STARTED; + break; + case TYPE_NORTHREND_BEASTS: + NorthrendBeasts = data; + switch (data) + { + case GORMOK_DONE: + EventStage = 200; + SetData(TYPE_NORTHREND_BEASTS, IN_PROGRESS); + SetData(TYPE_BEASTS, IN_PROGRESS); + break; + case SNAKES_IN_PROGRESS: + NotOneButTwoJormungarsTimer = 0; + break; + case SNAKES_SPECIAL: + NotOneButTwoJormungarsTimer = 10*IN_MILLISECONDS; + break; + case SNAKES_DONE: + if (NotOneButTwoJormungarsTimer > 0) + DoUpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_BE_SPELL_TARGET, SPELL_WORMS_KILLED_IN_10_SECONDS); + EventStage = 300; + SetData(TYPE_NORTHREND_BEASTS, IN_PROGRESS); + SetData(TYPE_BEASTS, IN_PROGRESS); + break; + case ICEHOWL_DONE: + EventStage = 400; + SetData(TYPE_NORTHREND_BEASTS, DONE); + SetData(TYPE_BEASTS, DONE); + break; + case FAIL: + SetData(TYPE_BEASTS, FAIL); + break; + } + break; + case DATA_HEALTH_TWIN_SHARED: + DataDamageTwin = data; + data = NOT_STARTED; + break; + + //Achievements + case DATA_SNOBOLD_COUNT: + if (data == INCREASE) + ++SnoboldCount; + else if (data == DECREASE) + --SnoboldCount; + break; + case DATA_MISTRESS_OF_PAIN_COUNT: + if (data == INCREASE) + ++MistressOfPainCount; + else if (data == DECREASE) + --MistressOfPainCount; + break; + case DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE: + TributeToImmortalityElegible = false; + break; + } + if (IsEncounterInProgress()) + { + CloseDoor(GetData64(GO_EAST_PORTCULLIS)); + CloseDoor(GetData64(GO_WEB_DOOR)); + } + else + { + OpenDoor(GetData64(GO_EAST_PORTCULLIS)); + OpenDoor(GetData64(GO_WEB_DOOR)); + } + + if (type < MAX_ENCOUNTERS) + { + sLog->outDetail("[ToCr] EncounterStatus[type %u] %u = data %u;", type, EncounterStatus[type], data); + if (data == FAIL) { - case GORMOK_DONE: - m_uiEvent = 200; - SetData(TYPE_NORTHREND_BEASTS,IN_PROGRESS); - SetData(TYPE_BEASTS,IN_PROGRESS); - break; - case SNAKES_IN_PROGRESS: m_uiNotOneButTwoJormungarsTimer = 0; break; - case SNAKES_SPECIAL: m_uiNotOneButTwoJormungarsTimer = 10*IN_MILLISECONDS; break; - case SNAKES_DONE: - if (m_uiNotOneButTwoJormungarsTimer > 0) - DoUpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_BE_SPELL_TARGET, SPELL_WORMS_KILLED_IN_10_SECONDS); - m_uiEvent = 300; - SetData(TYPE_NORTHREND_BEASTS,IN_PROGRESS); - SetData(TYPE_BEASTS,IN_PROGRESS); - break; - case ICEHOWL_DONE: - m_uiEvent = 400; - SetData(TYPE_NORTHREND_BEASTS,DONE); - SetData(TYPE_BEASTS,DONE); - break; - case FAIL: - SetData(TYPE_BEASTS,FAIL); - break; + if (IsRaidWiped()) + { + --TrialCounter; + NeedSave = true; + EventStage = (type == TYPE_BEASTS ? 666 : 0); + } + data = NOT_STARTED; } - break; - case DATA_HEALTH_TWIN_SHARED: m_uiDataDamageTwin = uiData; uiData = NOT_STARTED; break; - - //Achievements - case DATA_SNOBOLD_COUNT: - if (uiData == INCREASE) - ++m_uiSnoboldCount; - else if (uiData == DECREASE) - --m_uiSnoboldCount; - break; - case DATA_MISTRESS_OF_PAIN_COUNT: - if (uiData == INCREASE) - ++m_uiMistressOfPainCount; - else if (uiData == DECREASE) - --m_uiMistressOfPainCount; - break; - case DATA_TRIBUTE_TO_IMMORTALITY_ELEGIBLE: - m_bTributeToImmortalityElegible = false; - break; - } - if (IsEncounterInProgress()) - { - CloseDoor(GetData64(GO_EAST_PORTCULLIS)); - CloseDoor(GetData64(GO_WEB_DOOR)); - } else { - OpenDoor(GetData64(GO_EAST_PORTCULLIS)); - OpenDoor(GetData64(GO_WEB_DOOR)); - } - if (uiType < MAX_ENCOUNTERS) - { - sLog->outBasic("[ToCr] m_auiEncounter[uiType %u] %u = uiData %u;",uiType,m_auiEncounter[uiType],uiData); - if (uiData == FAIL) - { - if (IsRaidWiped()) + EncounterStatus[type] = data; + + if (data == DONE || NeedSave == true) { - --m_uiTrialCounter; - m_bNeedSave = true; - m_uiEvent = (uiType == TYPE_BEASTS? 666 : 0); + if (Unit* announcer = instance->GetCreature(GetData64(NPC_BARRENT))) + announcer->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP); + Save(); } - uiData = NOT_STARTED; } - m_auiEncounter[uiType] = uiData; + } - if (uiData == DONE || m_bNeedSave == true) + uint64 GetData64(uint32 type) + { + switch (type) { - if (Unit* pAnnouncer = instance->GetCreature(GetData64(NPC_BARRENT))) - pAnnouncer->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP); - Save(); + case NPC_BARRENT: + return BarrentGUID; + case NPC_TIRION: + return TirionGUID; + case NPC_FIZZLEBANG: + return FizzlebangGUID; + case NPC_GARROSH: + return GarroshGUID; + case NPC_VARIAN: + return VarianGUID; + + case NPC_GORMOK: + return GormokGUID; + case NPC_ACIDMAW: + return AcidmawGUID; + case NPC_DREADSCALE: + return DreadscaleGUID; + case NPC_ICEHOWL: + return IcehowlGUID; + case NPC_JARAXXUS: + return JaraxxusGUID; + case NPC_CHAMPIONS_CONTROLLER: + return ChampionsControllerGUID; + case NPC_DARKBANE: + return DarkbaneGUID; + case NPC_LIGHTBANE: + return LightbaneGUID; + case NPC_ANUBARAK: + return AnubarakGUID; + + case GO_ARGENT_COLISEUM_FLOOR: + return FloorGUID; + case GO_MAIN_GATE_DOOR: + return MainGateDoorGUID; + case GO_EAST_PORTCULLIS: + return EastPortcullisGUID; + case GO_WEB_DOOR: + return WebDoorGUID; + default: + break; } + + return 0; } - } - uint64 GetData64(uint32 uiData) - { - switch(uiData) + uint32 GetData(uint32 type) { - case NPC_BARRENT: return m_uiBarrentGUID; - case NPC_TIRION: return m_uiTirionGUID; - case NPC_FIZZLEBANG: return m_uiFizzlebangGUID; - case NPC_GARROSH: return m_uiGarroshGUID; - case NPC_VARIAN: return m_uiVarianGUID; - - case NPC_GORMOK: return m_uiGormokGUID; - case NPC_ACIDMAW: return m_uiAcidmawGUID; - case NPC_DREADSCALE: return m_uiDreadscaleGUID; - case NPC_ICEHOWL: return m_uiIcehowlGUID; - case NPC_JARAXXUS: return m_uiJaraxxusGUID; - case NPC_CHAMPIONS_CONTROLLER: return m_uiChampionsControllerGUID; - case NPC_DARKBANE: return m_uiDarkbaneGUID; - case NPC_LIGHTBANE: return m_uiLightbaneGUID; - case NPC_ANUBARAK: return m_uiAnubarakGUID; - - case GO_ARGENT_COLISEUM_FLOOR: return m_uiFloorGUID; - case GO_MAIN_GATE_DOOR: return m_uiMainGateDoorGUID; - case GO_EAST_PORTCULLIS: return m_uiEastPortcullisGUID; - case GO_WEB_DOOR: return m_uiWebDoorGUID; + switch (type) + { + case TYPE_BEASTS: + return EncounterStatus[TYPE_BEASTS]; + case TYPE_JARAXXUS: + return EncounterStatus[TYPE_JARAXXUS]; + case TYPE_CRUSADERS: + return EncounterStatus[TYPE_CRUSADERS]; + case TYPE_VALKIRIES: + return EncounterStatus[TYPE_VALKIRIES]; + case TYPE_LICH_KING: + return EncounterStatus[TYPE_LICH_KING]; + case TYPE_ANUBARAK: + return EncounterStatus[TYPE_ANUBARAK]; + case TYPE_COUNTER: + return TrialCounter; + case TYPE_EVENT: + return EventStage; + case TYPE_NORTHREND_BEASTS: + return NorthrendBeasts; + case TYPE_EVENT_TIMER: + return EventTimer; + case TYPE_EVENT_NPC: + switch (EventStage) + { + case 110: + case 140: + case 150: + case 155: + case 200: + case 205: + case 210: + case 220: + case 300: + case 305: + case 310: + case 315: + case 400: + case 666: + case 1010: + case 1180: + case 2000: + case 2030: + case 3000: + case 3001: + case 3060: + case 3061: + case 3090: + case 3091: + case 3092: + case 3100: + case 3110: + case 4000: + case 4010: + case 4015: + case 4016: + case 4040: + case 4050: + case 5000: + case 5005: + case 5020: + case 6000: + case 6005: + case 6010: + EventNPCId = NPC_TIRION; + break; + case 5010: + case 5030: + case 5040: + case 5050: + case 5060: + case 5070: + case 5080: + EventNPCId = NPC_LICH_KING_1; + break; + case 120: + case 122: + case 2020: + case 3080: + case 3051: + case 3071: + case 4020: + EventNPCId = NPC_VARIAN; + break; + case 130: + case 132: + case 2010: + case 3050: + case 3070: + case 3081: + case 4030: + EventNPCId = NPC_GARROSH; + break; + case 1110: + case 1120: + case 1130: + case 1132: + case 1134: + case 1135: + case 1140: + case 1142: + case 1144: + case 1150: + EventNPCId = NPC_FIZZLEBANG; + break; + default: + EventNPCId = NPC_TIRION; + break; + }; + return EventNPCId; + case DATA_HEALTH_TWIN_SHARED: + return DataDamageTwin; + default: + break; + } + + return 0; } - return 0; - } - uint32 GetData(uint32 uiType) - { - switch(uiType) + void Update(uint32 diff) { - case TYPE_BEASTS: return m_auiEncounter[TYPE_BEASTS]; - case TYPE_JARAXXUS: return m_auiEncounter[TYPE_JARAXXUS]; - case TYPE_CRUSADERS: return m_auiEncounter[TYPE_CRUSADERS]; - case TYPE_VALKIRIES: return m_auiEncounter[TYPE_VALKIRIES]; - case TYPE_LICH_KING: return m_auiEncounter[TYPE_LICH_KING]; - case TYPE_ANUBARAK: return m_auiEncounter[TYPE_ANUBARAK]; - case TYPE_COUNTER: return m_uiTrialCounter; - case TYPE_EVENT: return m_uiEvent; - case TYPE_NORTHREND_BEASTS: return m_uiNorthrendBeasts; - case TYPE_EVENT_TIMER: return m_uiEventTimer; - case TYPE_EVENT_NPC: - switch (m_uiEvent) - { - case 110: - case 140: - case 150: - case 155: - case 200: - case 205: - case 210: - case 220: - case 300: - case 305: - case 310: - case 315: - case 400: - case 666: - case 1010: - case 1180: - case 2000: - case 2030: - case 3000: - case 3001: - case 3060: - case 3061: - case 3090: - case 3091: - case 3092: - case 3100: - case 3110: - case 4000: - case 4010: - case 4015: - case 4016: - case 4040: - case 4050: - case 5000: - case 5005: - case 5020: - case 6000: - case 6005: - case 6010: - m_uiEventNPCId = NPC_TIRION; - break; - case 5010: - case 5030: - case 5040: - case 5050: - case 5060: - case 5070: - case 5080: - m_uiEventNPCId = NPC_LICH_KING_1; - break; - case 120: - case 122: - case 2020: - case 3080: - case 3051: - case 3071: - case 4020: - m_uiEventNPCId = NPC_VARIAN; - break; - case 130: - case 132: - case 2010: - case 3050: - case 3070: - case 3081: - case 4030: - m_uiEventNPCId = NPC_GARROSH; - break; - case 1110: - case 1120: - case 1130: - case 1132: - case 1134: - case 1135: - case 1140: - case 1142: - case 1144: - case 1150: - m_uiEventNPCId = NPC_FIZZLEBANG; - break; - default: - m_uiEventNPCId = NPC_TIRION; - break; - }; - return m_uiEventNPCId; - case DATA_HEALTH_TWIN_SHARED: return m_uiDataDamageTwin; + if (GetData(TYPE_NORTHREND_BEASTS) == SNAKES_SPECIAL && NotOneButTwoJormungarsTimer) + { + if (NotOneButTwoJormungarsTimer <= diff) + NotOneButTwoJormungarsTimer = 0; + else + NotOneButTwoJormungarsTimer -= diff; + } + + if (GetData(TYPE_CRUSADERS) == IN_PROGRESS && ResilienceWillFixItTimer) + { + if (ResilienceWillFixItTimer <= diff) + ResilienceWillFixItTimer = 0; + else + ResilienceWillFixItTimer -= diff; + } } - return 0; - } - void Update(uint32 uiDiff) - { - if (GetData(TYPE_NORTHREND_BEASTS) == SNAKES_SPECIAL && m_uiNotOneButTwoJormungarsTimer) + void Save() { - if (m_uiNotOneButTwoJormungarsTimer <= uiDiff) - m_uiNotOneButTwoJormungarsTimer = 0; - else m_uiNotOneButTwoJormungarsTimer -= uiDiff; + OUT_SAVE_INST_DATA; + + std::ostringstream saveStream; + + for (uint8 i = 0; i < MAX_ENCOUNTERS; ++i) + saveStream << EncounterStatus[i] << " "; + + saveStream << TrialCounter; + SaveDataBuffer = saveStream.str(); + + SaveToDB(); + OUT_SAVE_INST_DATA_COMPLETE; + NeedSave = false; } - if (GetData(TYPE_CRUSADERS) == IN_PROGRESS && m_uiResilienceWillFixItTimer) + std::string GetSaveData() { - if (m_uiResilienceWillFixItTimer <= uiDiff) - m_uiResilienceWillFixItTimer = 0; - else m_uiResilienceWillFixItTimer -= uiDiff; + return SaveDataBuffer; } - } - void Save() - { - OUT_SAVE_INST_DATA; + void Load(const char* strIn) + { + if (!strIn) + { + OUT_LOAD_INST_DATA_FAIL; + return; + } - std::ostringstream saveStream; + OUT_LOAD_INST_DATA(strIn); - for (uint8 i = 0; i < MAX_ENCOUNTERS; ++i) - saveStream << m_auiEncounter[i] << " "; + std::istringstream loadStream(strIn); - saveStream << m_uiTrialCounter; - m_strInstData = saveStream.str(); + for (uint8 i = 0; i < MAX_ENCOUNTERS; ++i) + { + loadStream >> EncounterStatus[i]; - SaveToDB(); - OUT_SAVE_INST_DATA_COMPLETE; - m_bNeedSave = false; - } + if (EncounterStatus[i] == IN_PROGRESS) + EncounterStatus[i] = NOT_STARTED; + } - std::string GetSaveData() - { - return m_strInstData; - } + loadStream >> TrialCounter; + EventStage = 0; - void Load(const char* strIn) - { - if (!strIn) - { - OUT_LOAD_INST_DATA_FAIL; - return; + OUT_LOAD_INST_DATA_COMPLETE; } - OUT_LOAD_INST_DATA(strIn); - - std::istringstream loadStream(strIn); - - for (uint8 i = 0; i < MAX_ENCOUNTERS; ++i) + bool CheckAchievementCriteriaMeet(uint32 criteria_id, Player const* /*source*/, Unit const* /*target*/, uint32 /*miscvalue1*/) { - loadStream >> m_auiEncounter[i]; + switch (criteria_id) + { + case UPPER_BACK_PAIN_10_PLAYER: + case UPPER_BACK_PAIN_10_PLAYER_HEROIC: + return SnoboldCount >= 2; + case UPPER_BACK_PAIN_25_PLAYER: + case UPPER_BACK_PAIN_25_PLAYER_HEROIC: + return SnoboldCount >= 4; + case THREE_SIXTY_PAIN_SPIKE_10_PLAYER: + case THREE_SIXTY_PAIN_SPIKE_10_PLAYER_HEROIC: + case THREE_SIXTY_PAIN_SPIKE_25_PLAYER: + case THREE_SIXTY_PAIN_SPIKE_25_PLAYER_HEROIC: + return MistressOfPainCount >= 2; + case A_TRIBUTE_TO_SKILL_10_PLAYER: + case A_TRIBUTE_TO_SKILL_25_PLAYER: + return TrialCounter >= 25; + case A_TRIBUTE_TO_MAD_SKILL_10_PLAYER: + case A_TRIBUTE_TO_MAD_SKILL_25_PLAYER: + return TrialCounter >= 45; + case A_TRIBUTE_TO_INSANITY_10_PLAYER: + case A_TRIBUTE_TO_INSANITY_25_PLAYER: + case REALM_FIRST_GRAND_CRUSADER: + return TrialCounter == 50; + case A_TRIBUTE_TO_IMMORTALITY_HORDE: + case A_TRIBUTE_TO_IMMORTALITY_ALLIANCE: + return TrialCounter == 50 && TributeToImmortalityElegible; + case A_TRIBUTE_TO_DEDICATED_INSANITY: + return false/*uiGrandCrusaderAttemptsLeft == 50 && !bHasAtAnyStagePlayerEquippedTooGoodItem*/; + } - if (m_auiEncounter[i] == IN_PROGRESS) - m_auiEncounter[i] = NOT_STARTED; + return false; } - loadStream >> m_uiTrialCounter; - m_uiEvent = 0; - - OUT_LOAD_INST_DATA_COMPLETE; - } + }; - bool CheckAchievementCriteriaMeet(uint32 criteria_id, Player const* /*source*/, Unit const* /*target*/, uint32 /*miscvalue1*/) + InstanceScript* GetInstanceScript(InstanceMap* map) const { - switch (criteria_id) - { - case UPPER_BACK_PAIN_10_PLAYER: - case UPPER_BACK_PAIN_10_PLAYER_HEROIC: - return m_uiSnoboldCount >= 2; - case UPPER_BACK_PAIN_25_PLAYER: - case UPPER_BACK_PAIN_25_PLAYER_HEROIC: - return m_uiSnoboldCount >= 4; - case THREE_SIXTY_PAIN_SPIKE_10_PLAYER: - case THREE_SIXTY_PAIN_SPIKE_10_PLAYER_HEROIC: - case THREE_SIXTY_PAIN_SPIKE_25_PLAYER: - case THREE_SIXTY_PAIN_SPIKE_25_PLAYER_HEROIC: - return m_uiMistressOfPainCount >= 2; - case A_TRIBUTE_TO_SKILL_10_PLAYER: - case A_TRIBUTE_TO_SKILL_25_PLAYER: - return m_uiTrialCounter >= 25; - case A_TRIBUTE_TO_MAD_SKILL_10_PLAYER: - case A_TRIBUTE_TO_MAD_SKILL_25_PLAYER: - return m_uiTrialCounter >= 45; - case A_TRIBUTE_TO_INSANITY_10_PLAYER: - case A_TRIBUTE_TO_INSANITY_25_PLAYER: - case REALM_FIRST_GRAND_CRUSADER: - return m_uiTrialCounter == 50; - case A_TRIBUTE_TO_IMMORTALITY_HORDE: - case A_TRIBUTE_TO_IMMORTALITY_ALLIANCE: - return m_uiTrialCounter == 50 && m_bTributeToImmortalityElegible; - case A_TRIBUTE_TO_DEDICATED_INSANITY: - return false/*uiGrandCrusaderAttemptsLeft == 50 && !bHasAtAnyStagePlayerEquippedTooGoodItem*/; - } - - return false; + return new instance_trial_of_the_crusader_InstanceMapScript(map); } - }; - }; - void AddSC_instance_trial_of_the_crusader() { new instance_trial_of_the_crusader(); diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/trial_of_the_crusader.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/trial_of_the_crusader.cpp index 026e202f243..23aaa3f6bdd 100755 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/trial_of_the_crusader.cpp +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/trial_of_the_crusader.cpp @@ -83,12 +83,12 @@ struct _Messages static _Messages _GossipMessage[]= { - {MSG_BEASTS,GOSSIP_ACTION_INFO_DEF+1,false,TYPE_BEASTS}, - {MSG_JARAXXUS,GOSSIP_ACTION_INFO_DEF+2,false,TYPE_JARAXXUS}, - {MSG_CRUSADERS,GOSSIP_ACTION_INFO_DEF+3,false,TYPE_CRUSADERS}, - {MSG_VALKIRIES,GOSSIP_ACTION_INFO_DEF+4,false,TYPE_VALKIRIES}, - {MSG_LICH_KING,GOSSIP_ACTION_INFO_DEF+5,false,TYPE_ANUBARAK}, - {MSG_ANUBARAK,GOSSIP_ACTION_INFO_DEF+6,true,TYPE_ANUBARAK} + {MSG_BEASTS, GOSSIP_ACTION_INFO_DEF+1, false, TYPE_BEASTS}, + {MSG_JARAXXUS, GOSSIP_ACTION_INFO_DEF+2, false, TYPE_JARAXXUS}, + {MSG_CRUSADERS, GOSSIP_ACTION_INFO_DEF+3, false, TYPE_CRUSADERS}, + {MSG_VALKIRIES, GOSSIP_ACTION_INFO_DEF+4, false, TYPE_VALKIRIES}, + {MSG_LICH_KING, GOSSIP_ACTION_INFO_DEF+5, false, TYPE_ANUBARAK}, + {MSG_ANUBARAK, GOSSIP_ACTION_INFO_DEF+6, true, TYPE_ANUBARAK} }; enum @@ -254,7 +254,7 @@ class boss_lich_king_toc : public CreatureScript pSummoned->CastSpell(pSummoned, 51807, false); pSummoned->SetDisplayId(11686); } - if (m_pInstance) m_pInstance->SetData(TYPE_LICH_KING,IN_PROGRESS); + if (m_pInstance) m_pInstance->SetData(TYPE_LICH_KING, IN_PROGRESS); me->AddUnitMovementFlag(MOVEMENTFLAG_WALKING); } @@ -265,10 +265,10 @@ class boss_lich_king_toc : public CreatureScript switch (uiId) { case 0: - m_pInstance->SetData(TYPE_EVENT,5030); + m_pInstance->SetData(TYPE_EVENT, 5030); break; case 1: - m_pInstance->SetData(TYPE_EVENT,5050); + m_pInstance->SetData(TYPE_EVENT, 5050); break; } } @@ -284,49 +284,49 @@ class boss_lich_king_toc : public CreatureScript switch (m_pInstance->GetData(TYPE_EVENT)) { case 5010: - DoScriptText(SAY_STAGE_4_02,me); + DoScriptText(SAY_STAGE_4_02, me); m_uiUpdateTimer = 3000; - me->GetMotionMaster()->MovePoint(0,LichKingLoc[0]); - m_pInstance->SetData(TYPE_EVENT,5020); + me->GetMotionMaster()->MovePoint(0, LichKingLoc[0]); + m_pInstance->SetData(TYPE_EVENT, 5020); break; case 5030: - DoScriptText(SAY_STAGE_4_04,me); + DoScriptText(SAY_STAGE_4_04, me); me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_TALK); m_uiUpdateTimer = 10000; - m_pInstance->SetData(TYPE_EVENT,5040); + m_pInstance->SetData(TYPE_EVENT, 5040); break; case 5040: me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_NONE); - me->GetMotionMaster()->MovePoint(1,LichKingLoc[1]); + me->GetMotionMaster()->MovePoint(1, LichKingLoc[1]); m_uiUpdateTimer = 1000; - m_pInstance->SetData(TYPE_EVENT,0); + m_pInstance->SetData(TYPE_EVENT, 0); break; case 5050: me->HandleEmoteCommand(EMOTE_ONESHOT_EXCLAMATION); m_uiUpdateTimer = 3000; - m_pInstance->SetData(TYPE_EVENT,5060); + m_pInstance->SetData(TYPE_EVENT, 5060); break; case 5060: - DoScriptText(SAY_STAGE_4_05,me); + DoScriptText(SAY_STAGE_4_05, me); me->HandleEmoteCommand(EMOTE_ONESHOT_KNEEL); m_uiUpdateTimer = 2500; - m_pInstance->SetData(TYPE_EVENT,5070); + m_pInstance->SetData(TYPE_EVENT, 5070); break; case 5070: - me->CastSpell(me,68198,false); + me->CastSpell(me, 68198, false); m_uiUpdateTimer = 1500; - m_pInstance->SetData(TYPE_EVENT,5080); + m_pInstance->SetData(TYPE_EVENT, 5080); break; case 5080: if (GameObject* pGoFloor = m_pInstance->instance->GetGameObject(m_pInstance->GetData64(GO_ARGENT_COLISEUM_FLOOR))) pGoFloor->TakenDamage(1000000); - me->CastSpell(me,69016,false); - if (m_pInstance) m_pInstance->SetData(TYPE_LICH_KING,DONE); - Creature* pTemp = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_ANUBARAK)); + me->CastSpell(me, 69016, false); + if (m_pInstance) m_pInstance->SetData(TYPE_LICH_KING, DONE); + Creature* pTemp = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_ANUBARAK)); if (!pTemp || !pTemp->isAlive()) pTemp = me->SummonCreature(NPC_ANUBARAK, AnubarakLoc[0].GetPositionX(), AnubarakLoc[0].GetPositionY(), AnubarakLoc[0].GetPositionZ(), 3, TEMPSUMMON_CORPSE_TIMED_DESPAWN, DESPAWN_TIME); me->ForcedDespawn(); - m_pInstance->SetData(TYPE_EVENT,0); + m_pInstance->SetData(TYPE_EVENT, 0); m_uiUpdateTimer = 20000; break; } @@ -364,7 +364,7 @@ class npc_fizzlebang_toc : public CreatureScript { DoScriptText(SAY_STAGE_1_06, me, pKiller); m_pInstance->SetData(TYPE_EVENT, 1180); - if (Creature* pTemp = Unit::GetCreature(*me,m_pInstance->GetData64(NPC_JARAXXUS))) + if (Creature* pTemp = Unit::GetCreature(*me, m_pInstance->GetData64(NPC_JARAXXUS))) { pTemp->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); pTemp->SetReactState(REACT_AGGRESSIVE); @@ -447,7 +447,7 @@ class npc_fizzlebang_toc : public CreatureScript { pPortal->SetReactState(REACT_PASSIVE); pPortal->SetFloatValue(OBJECT_FIELD_SCALE_X, 2.0f); - pPortal->CastSpell(pPortal,SPELL_WILFRED_PORTAL,false); + pPortal->CastSpell(pPortal, SPELL_WILFRED_PORTAL, false); m_uiPortalGUID = pPortal->GetGUID(); } m_uiUpdateTimer = 4000; @@ -463,32 +463,32 @@ class npc_fizzlebang_toc : public CreatureScript { pTemp->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); pTemp->SetReactState(REACT_PASSIVE); - pTemp->GetMotionMaster()->MovePoint(0,ToCCommonLoc[1].GetPositionX(), ToCCommonLoc[1].GetPositionY()-10, ToCCommonLoc[1].GetPositionZ()); + pTemp->GetMotionMaster()->MovePoint(0, ToCCommonLoc[1].GetPositionX(), ToCCommonLoc[1].GetPositionY()-10, ToCCommonLoc[1].GetPositionZ()); } m_pInstance->SetData(TYPE_EVENT, 1142); m_uiUpdateTimer = 5000; break; case 1142: - if (Creature* pTemp = Unit::GetCreature(*me,m_pInstance->GetData64(NPC_JARAXXUS))) + if (Creature* pTemp = Unit::GetCreature(*me, m_pInstance->GetData64(NPC_JARAXXUS))) pTemp->SetUInt64Value(UNIT_FIELD_TARGET, me->GetGUID()); - if (Creature* pTrigger = Unit::GetCreature(*me,m_uiTriggerGUID)) + if (Creature* pTrigger = Unit::GetCreature(*me, m_uiTriggerGUID)) pTrigger->ForcedDespawn(); - if (Creature* pPortal = Unit::GetCreature(*me,m_uiPortalGUID)) + if (Creature* pPortal = Unit::GetCreature(*me, m_uiPortalGUID)) pPortal->ForcedDespawn(); m_pInstance->SetData(TYPE_EVENT, 1144); m_uiUpdateTimer = 10000; break; case 1144: - if (Creature* pTemp = Unit::GetCreature(*me,m_pInstance->GetData64(NPC_JARAXXUS))) - DoScriptText(SAY_STAGE_1_05,pTemp); + if (Creature* pTemp = Unit::GetCreature(*me, m_pInstance->GetData64(NPC_JARAXXUS))) + DoScriptText(SAY_STAGE_1_05, pTemp); m_pInstance->SetData(TYPE_EVENT, 1150); m_uiUpdateTimer = 5000; break; case 1150: - if (Creature* pTemp = Unit::GetCreature(*me,m_pInstance->GetData64(NPC_JARAXXUS))) + if (Creature* pTemp = Unit::GetCreature(*me, m_pInstance->GetData64(NPC_JARAXXUS))) { //1-shot Fizzlebang - pTemp->CastSpell(me,67888,false); + pTemp->CastSpell(me, 67888, false); me->SetInCombatWith(pTemp); pTemp->AddThreat(me, 1000.0f); pTemp->AI()->AttackStart(me); @@ -542,13 +542,13 @@ class npc_tirion_toc : public CreatureScript me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_TALK); DoScriptText(SAY_STAGE_0_01, me); m_uiUpdateTimer = 22000; - m_pInstance->SetData(TYPE_EVENT,120); + m_pInstance->SetData(TYPE_EVENT, 120); break; case 140: me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_TALK); DoScriptText(SAY_STAGE_0_02, me); m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,150); + m_pInstance->SetData(TYPE_EVENT, 150); m_pInstance->DoUseDoorOrButton(m_pInstance->GetData64(GO_MAIN_GATE_DOOR)); break; case 150: @@ -556,259 +556,259 @@ class npc_tirion_toc : public CreatureScript if (m_pInstance->GetData(TYPE_BEASTS) != DONE) { me->SummonCreature(NPC_GORMOK, ToCCommonLoc[10].GetPositionX(), ToCCommonLoc[10].GetPositionY(), ToCCommonLoc[10].GetPositionZ(), 5, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 30*IN_MILLISECONDS); - if (Creature* pTemp = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_GORMOK))) + if (Creature* pTemp = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_GORMOK))) { pTemp->GetMotionMaster()->MovePoint(0, ToCCommonLoc[5].GetPositionX(), ToCCommonLoc[5].GetPositionY(), ToCCommonLoc[5].GetPositionZ()); pTemp->AddUnitMovementFlag(MOVEMENTFLAG_WALKING); - pTemp->SetFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); + pTemp->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); pTemp->SetReactState(REACT_PASSIVE); } } m_uiUpdateTimer = 3000; - m_pInstance->SetData(TYPE_EVENT,155); + m_pInstance->SetData(TYPE_EVENT, 155); break; case 155: - if (Creature* pTemp = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_GORMOK))) + if (Creature* pTemp = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_GORMOK))) { - pTemp->RemoveFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); + pTemp->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); pTemp->SetReactState(REACT_AGGRESSIVE); pTemp->SetInCombatWithZone(); } m_pInstance->DoUseDoorOrButton(m_pInstance->GetData64(GO_MAIN_GATE_DOOR)); - m_pInstance->SetData(TYPE_BEASTS,IN_PROGRESS); + m_pInstance->SetData(TYPE_BEASTS, IN_PROGRESS); m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,160); + m_pInstance->SetData(TYPE_EVENT, 160); break; case 200: DoScriptText(SAY_STAGE_0_04, me); m_uiUpdateTimer = 8000; - m_pInstance->SetData(TYPE_EVENT,205); + m_pInstance->SetData(TYPE_EVENT, 205); break; case 205: m_uiUpdateTimer = 3000; - m_pInstance->SetData(TYPE_EVENT,210); + m_pInstance->SetData(TYPE_EVENT, 210); m_pInstance->DoUseDoorOrButton(m_pInstance->GetData64(GO_MAIN_GATE_DOOR)); break; case 210: if (m_pInstance->GetData(TYPE_BEASTS) != DONE) { - me->SummonCreature(NPC_DREADSCALE, ToCCommonLoc[3].GetPositionX(), ToCCommonLoc[3].GetPositionY(), ToCCommonLoc[3].GetPositionZ(), 5, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 30*IN_MILLISECONDS); - me->SummonCreature(NPC_ACIDMAW, ToCCommonLoc[4].GetPositionX(), ToCCommonLoc[4].GetPositionY(), ToCCommonLoc[4].GetPositionZ(), 5, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 30*IN_MILLISECONDS); - if (Creature* pTemp = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_DREADSCALE))) + me->SummonCreature(NPC_DREADSCALE, ToCCommonLoc[3].GetPositionX(), ToCCommonLoc[3].GetPositionY(), ToCCommonLoc[3].GetPositionZ(), 5, TEMPSUMMON_MANUAL_DESPAWN); + me->SummonCreature(NPC_ACIDMAW, ToCCommonLoc[4].GetPositionX(), ToCCommonLoc[4].GetPositionY(), ToCCommonLoc[4].GetPositionZ(), 5, TEMPSUMMON_MANUAL_DESPAWN); + if (Creature* pTemp = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_DREADSCALE))) { pTemp->GetMotionMaster()->MovePoint(0, ToCCommonLoc[8].GetPositionX(), ToCCommonLoc[8].GetPositionY(), ToCCommonLoc[8].GetPositionZ()); pTemp->AddUnitMovementFlag(MOVEMENTFLAG_WALKING); - pTemp->SetFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); + pTemp->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); pTemp->SetReactState(REACT_PASSIVE); } - if (Creature* pTemp = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_ACIDMAW))) + if (Creature* pTemp = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_ACIDMAW))) { pTemp->GetMotionMaster()->MovePoint(0, ToCCommonLoc[9].GetPositionX(), ToCCommonLoc[9].GetPositionY(), ToCCommonLoc[9].GetPositionZ()); pTemp->AddUnitMovementFlag(MOVEMENTFLAG_WALKING); - pTemp->SetFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); + pTemp->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); pTemp->SetReactState(REACT_PASSIVE); } } m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,220); + m_pInstance->SetData(TYPE_EVENT, 220); break; case 220: - if (Creature* pTemp = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_DREADSCALE))) + if (Creature* pTemp = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_DREADSCALE))) { - pTemp->RemoveFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); + pTemp->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); pTemp->SetReactState(REACT_AGGRESSIVE); pTemp->SetInCombatWithZone(); } - if (Creature* pTemp = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_ACIDMAW))) + if (Creature* pTemp = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_ACIDMAW))) { - pTemp->RemoveFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_OOC_NOT_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE); + pTemp->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_OOC_NOT_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); pTemp->SetReactState(REACT_AGGRESSIVE); pTemp->SetInCombatWithZone(); } - m_pInstance->SetData(TYPE_EVENT,230); + m_pInstance->SetData(TYPE_EVENT, 230); m_pInstance->DoUseDoorOrButton(m_pInstance->GetData64(GO_MAIN_GATE_DOOR)); break; case 300: DoScriptText(SAY_STAGE_0_05, me); m_uiUpdateTimer = 8000; - m_pInstance->SetData(TYPE_EVENT,305); + m_pInstance->SetData(TYPE_EVENT, 305); break; case 305: m_uiUpdateTimer = 3000; - m_pInstance->SetData(TYPE_EVENT,310); + m_pInstance->SetData(TYPE_EVENT, 310); m_pInstance->DoUseDoorOrButton(m_pInstance->GetData64(GO_MAIN_GATE_DOOR)); break; case 310: if (m_pInstance->GetData(TYPE_BEASTS) != DONE) { me->SummonCreature(NPC_ICEHOWL, ToCCommonLoc[10].GetPositionX(), ToCCommonLoc[10].GetPositionY(), ToCCommonLoc[10].GetPositionZ(), 5, TEMPSUMMON_DEAD_DESPAWN); - if (Creature* pTemp = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_ICEHOWL))) + if (Creature* pTemp = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_ICEHOWL))) { pTemp->GetMotionMaster()->MovePoint(0, ToCCommonLoc[5].GetPositionX(), ToCCommonLoc[5].GetPositionY(), ToCCommonLoc[5].GetPositionZ()); pTemp->SetInCombatWithZone(); } } m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,315); + m_pInstance->SetData(TYPE_EVENT, 315); break; case 315: m_pInstance->DoUseDoorOrButton(m_pInstance->GetData64(GO_MAIN_GATE_DOOR)); - m_pInstance->SetData(TYPE_EVENT,320); + m_pInstance->SetData(TYPE_EVENT, 320); break; case 400: DoScriptText(SAY_STAGE_0_06, me); m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,0); + m_pInstance->SetData(TYPE_EVENT, 0); break; case 666: DoScriptText(SAY_STAGE_0_WIPE, me); m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,0); + m_pInstance->SetData(TYPE_EVENT, 0); break; case 1010: DoScriptText(SAY_STAGE_1_01, me); m_uiUpdateTimer = 7000; m_pInstance->DoUseDoorOrButton(m_pInstance->GetData64(GO_MAIN_GATE_DOOR)); me->SummonCreature(NPC_FIZZLEBANG, ToCCommonLoc[10].GetPositionX(), ToCCommonLoc[10].GetPositionY(), ToCCommonLoc[10].GetPositionZ(), 2, TEMPSUMMON_CORPSE_TIMED_DESPAWN, DESPAWN_TIME); - m_pInstance->SetData(TYPE_EVENT,0); + m_pInstance->SetData(TYPE_EVENT, 0); break; case 1180: DoScriptText(SAY_STAGE_1_07, me); m_uiUpdateTimer = 3000; - m_pInstance->SetData(TYPE_EVENT,0); + m_pInstance->SetData(TYPE_EVENT, 0); break; case 2000: DoScriptText(SAY_STAGE_1_08, me); m_uiUpdateTimer = 18000; - m_pInstance->SetData(TYPE_EVENT,2010); + m_pInstance->SetData(TYPE_EVENT, 2010); break; case 2030: DoScriptText(SAY_STAGE_1_11, me); m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,0); + m_pInstance->SetData(TYPE_EVENT, 0); break; case 3000: DoScriptText(SAY_STAGE_2_01, me); m_uiUpdateTimer = 12000; - m_pInstance->SetData(TYPE_EVENT,3050); + m_pInstance->SetData(TYPE_EVENT, 3050); break; case 3001: DoScriptText(SAY_STAGE_2_01, me); m_uiUpdateTimer = 12000; - m_pInstance->SetData(TYPE_EVENT,3051); + m_pInstance->SetData(TYPE_EVENT, 3051); break; case 3060: DoScriptText(SAY_STAGE_2_03, me); m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,3070); + m_pInstance->SetData(TYPE_EVENT, 3070); break; case 3061: DoScriptText(SAY_STAGE_2_03, me); m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,3071); + m_pInstance->SetData(TYPE_EVENT, 3071); break; //Summoning crusaders case 3091: me->SummonCreature(NPC_CHAMPIONS_CONTROLLER, ToCCommonLoc[1]); - if (Creature* pChampionController = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_CHAMPIONS_CONTROLLER))) - pChampionController->AI()->SetData(0,HORDE); + if (Creature* pChampionController = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_CHAMPIONS_CONTROLLER))) + pChampionController->AI()->SetData(0, HORDE); m_uiUpdateTimer = 3000; - m_pInstance->SetData(TYPE_EVENT,3092); + m_pInstance->SetData(TYPE_EVENT, 3092); break; //Summoning crusaders case 3090: me->SummonCreature(NPC_CHAMPIONS_CONTROLLER, ToCCommonLoc[1]); - if (Creature* pChampionController = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_CHAMPIONS_CONTROLLER))) - pChampionController->AI()->SetData(0,ALLIANCE); + if (Creature* pChampionController = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_CHAMPIONS_CONTROLLER))) + pChampionController->AI()->SetData(0, ALLIANCE); m_uiUpdateTimer = 3000; - m_pInstance->SetData(TYPE_EVENT,3092); + m_pInstance->SetData(TYPE_EVENT, 3092); break; case 3092: - if (Creature* pChampionController = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_CHAMPIONS_CONTROLLER))) - pChampionController->AI()->SetData(1,NOT_STARTED); - m_pInstance->SetData(TYPE_EVENT,3095); + if (Creature* pChampionController = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_CHAMPIONS_CONTROLLER))) + pChampionController->AI()->SetData(1, NOT_STARTED); + m_pInstance->SetData(TYPE_EVENT, 3095); break; //Crusaders battle end case 3100: DoScriptText(SAY_STAGE_2_06, me); m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,0); + m_pInstance->SetData(TYPE_EVENT, 0); break; case 4000: DoScriptText(SAY_STAGE_3_01, me); m_uiUpdateTimer = 13000; - m_pInstance->SetData(TYPE_EVENT,4010); + m_pInstance->SetData(TYPE_EVENT, 4010); break; case 4010: DoScriptText(SAY_STAGE_3_02, me); m_pInstance->DoUseDoorOrButton(m_pInstance->GetData64(GO_MAIN_GATE_DOOR)); m_uiUpdateTimer = 3000; - m_pInstance->SetData(TYPE_EVENT,4015); + m_pInstance->SetData(TYPE_EVENT, 4015); break; case 4015: me->SummonCreature(NPC_LIGHTBANE, ToCCommonLoc[3].GetPositionX(), ToCCommonLoc[3].GetPositionY(), ToCCommonLoc[3].GetPositionZ(), 5, TEMPSUMMON_CORPSE_TIMED_DESPAWN, DESPAWN_TIME); - if (Creature* pTemp = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_LIGHTBANE))) + if (Creature* pTemp = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_LIGHTBANE))) { pTemp->GetMotionMaster()->MovePoint(0, ToCCommonLoc[6].GetPositionX(), ToCCommonLoc[6].GetPositionY(), ToCCommonLoc[6].GetPositionZ()); pTemp->AddUnitMovementFlag(MOVEMENTFLAG_WALKING); me->SetReactState(REACT_PASSIVE); } me->SummonCreature(NPC_DARKBANE, ToCCommonLoc[4].GetPositionX(), ToCCommonLoc[4].GetPositionY(), ToCCommonLoc[4].GetPositionZ(), 5, TEMPSUMMON_CORPSE_TIMED_DESPAWN, DESPAWN_TIME); - if (Creature* pTemp = Unit::GetCreature((*me),m_pInstance->GetData64(NPC_DARKBANE))) + if (Creature* pTemp = Unit::GetCreature((*me), m_pInstance->GetData64(NPC_DARKBANE))) { pTemp->GetMotionMaster()->MovePoint(0, ToCCommonLoc[7].GetPositionX(), ToCCommonLoc[7].GetPositionY(), ToCCommonLoc[7].GetPositionZ()); pTemp->AddUnitMovementFlag(MOVEMENTFLAG_WALKING); me->SetReactState(REACT_PASSIVE); } m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,4016); + m_pInstance->SetData(TYPE_EVENT, 4016); break; case 4016: - m_pInstance->SetData(TYPE_EVENT,4017); + m_pInstance->SetData(TYPE_EVENT, 4017); m_pInstance->DoUseDoorOrButton(m_pInstance->GetData64(GO_MAIN_GATE_DOOR)); break; case 4040: m_uiUpdateTimer = 60000; - m_pInstance->SetData(TYPE_EVENT,5000); + m_pInstance->SetData(TYPE_EVENT, 5000); break; case 5000: DoScriptText(SAY_STAGE_4_01, me); m_uiUpdateTimer = 10000; - m_pInstance->SetData(TYPE_EVENT,5005); + m_pInstance->SetData(TYPE_EVENT, 5005); break; case 5005: m_uiUpdateTimer = 8000; - m_pInstance->SetData(TYPE_EVENT,5010); + m_pInstance->SetData(TYPE_EVENT, 5010); me->SummonCreature(NPC_LICH_KING_1, ToCCommonLoc[2].GetPositionX(), ToCCommonLoc[2].GetPositionY(), ToCCommonLoc[2].GetPositionZ(), 5); break; case 5020: DoScriptText(SAY_STAGE_4_03, me); m_uiUpdateTimer = 1000; - m_pInstance->SetData(TYPE_EVENT,0); + m_pInstance->SetData(TYPE_EVENT, 0); break; case 6000: me->NearTeleportTo(AnubarakLoc[0].GetPositionX(), AnubarakLoc[0].GetPositionY(), AnubarakLoc[0].GetPositionZ(), 4.0f); m_uiUpdateTimer = 20000; - m_pInstance->SetData(TYPE_EVENT,6005); + m_pInstance->SetData(TYPE_EVENT, 6005); break; case 6005: DoScriptText(SAY_STAGE_4_06, me); m_uiUpdateTimer = 20000; - m_pInstance->SetData(TYPE_EVENT,6010); + m_pInstance->SetData(TYPE_EVENT, 6010); break; case 6010: if (IsHeroic()) { DoScriptText(SAY_STAGE_4_07, me); m_uiUpdateTimer = 60000; - m_pInstance->SetData(TYPE_ANUBARAK,SPECIAL); - m_pInstance->SetData(TYPE_EVENT,6020); - } else m_pInstance->SetData(TYPE_EVENT,6030); + m_pInstance->SetData(TYPE_ANUBARAK, SPECIAL); + m_pInstance->SetData(TYPE_EVENT, 6020); + } else m_pInstance->SetData(TYPE_EVENT, 6030); break; case 6020: me->ForcedDespawn(); m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,6030); + m_pInstance->SetData(TYPE_EVENT, 6030); break; } } else m_uiUpdateTimer -= uiDiff; @@ -856,37 +856,37 @@ class npc_garrosh_toc : public CreatureScript me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_TALK); DoScriptText(SAY_STAGE_0_03h, me); m_uiUpdateTimer = 3000; - m_pInstance->SetData(TYPE_EVENT,132); + m_pInstance->SetData(TYPE_EVENT, 132); break; case 132: me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_NONE); m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,140); + m_pInstance->SetData(TYPE_EVENT, 140); break; case 2010: DoScriptText(SAY_STAGE_1_09, me); m_uiUpdateTimer = 9000; - m_pInstance->SetData(TYPE_EVENT,2020); + m_pInstance->SetData(TYPE_EVENT, 2020); break; case 3050: DoScriptText(SAY_STAGE_2_02h, me); m_uiUpdateTimer = 15000; - m_pInstance->SetData(TYPE_EVENT,3060); + m_pInstance->SetData(TYPE_EVENT, 3060); break; case 3070: DoScriptText(SAY_STAGE_2_04h, me); m_uiUpdateTimer = 6000; - m_pInstance->SetData(TYPE_EVENT,3080); + m_pInstance->SetData(TYPE_EVENT, 3080); break; case 3081: DoScriptText(SAY_STAGE_2_05h, me); m_uiUpdateTimer = 3000; - m_pInstance->SetData(TYPE_EVENT,3091); + m_pInstance->SetData(TYPE_EVENT, 3091); break; case 4030: DoScriptText(SAY_STAGE_3_03h, me); m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,4040); + m_pInstance->SetData(TYPE_EVENT, 4040); break; } } else m_uiUpdateTimer -= uiDiff; @@ -934,41 +934,41 @@ class npc_varian_toc : public CreatureScript me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_TALK); DoScriptText(SAY_STAGE_0_03a, me); m_uiUpdateTimer = 2000; - m_pInstance->SetData(TYPE_EVENT,122); + m_pInstance->SetData(TYPE_EVENT, 122); break; case 122: me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_NONE); m_uiUpdateTimer = 3000; - m_pInstance->SetData(TYPE_EVENT,130); + m_pInstance->SetData(TYPE_EVENT, 130); break; case 2020: DoScriptText(SAY_STAGE_1_10, me); m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,2030); + m_pInstance->SetData(TYPE_EVENT, 2030); break; case 3051: DoScriptText(SAY_STAGE_2_02a, me); m_uiUpdateTimer = 10000; - m_pInstance->SetData(TYPE_EVENT,3061); + m_pInstance->SetData(TYPE_EVENT, 3061); break; case 3071: DoScriptText(SAY_STAGE_2_04a, me); m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,3081); + m_pInstance->SetData(TYPE_EVENT, 3081); break; case 3080: DoScriptText(SAY_STAGE_2_05a, me); m_uiUpdateTimer = 3000; - m_pInstance->SetData(TYPE_EVENT,3090); + m_pInstance->SetData(TYPE_EVENT, 3090); break; case 4020: DoScriptText(SAY_STAGE_3_03a, me); m_uiUpdateTimer = 5000; - m_pInstance->SetData(TYPE_EVENT,4040); + m_pInstance->SetData(TYPE_EVENT, 4040); break; } } else m_uiUpdateTimer -= uiDiff; - m_pInstance->SetData(TYPE_EVENT_TIMER,m_uiUpdateTimer); + m_pInstance->SetData(TYPE_EVENT_TIMER, m_uiUpdateTimer); } }; diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/trial_of_the_crusader.h b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/trial_of_the_crusader.h index 3a0a43773cb..ab9087c0ca8 100644 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/trial_of_the_crusader.h +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/trial_of_the_crusader.h @@ -76,28 +76,28 @@ const Position JaraxxusLoc[]= const Position FactionChampionLoc[]= { - {514.231f,105.569f,418.234f, 0}, // 0 - Horde Initial Pos 0 - {508.334f,115.377f,418.234f, 0}, // 1 - Horde Initial Pos 1 - {506.454f,126.291f,418.234f, 0}, // 2 - Horde Initial Pos 2 - {506.243f,106.596f,421.592f, 0}, // 3 - Horde Initial Pos 3 - {499.885f,117.717f,421.557f, 0}, // 4 - Horde Initial Pos 4 - - {613.127f,100.443f,419.74f, 0}, // 5 - Ally Initial Pos 0 - {621.126f,128.042f,418.231f, 0}, // 6 - Ally Initial Pos 1 - {618.829f,113.606f,418.232f, 0}, // 7 - Ally Initial Pos 2 - {625.845f,112.914f,421.575f, 0}, // 8 - Ally Initial Pos 3 - {615.566f,109.653f,418.234f, 0}, // 9 - Ally Initial Pos 4 - - {535.469f,113.012f,394.66f, 0}, // 10 - Horde Final Pos 0 - {526.417f,137.465f,394.749f, 0}, // 11 - Horde Final Pos 1 - {528.108f,111.057f,395.289f, 0}, // 12 - Horde Final Pos 2 - {519.92f,134.285f,395.289f, 0}, // 13 - Horde Final Pos 3 - {533.648f,119.148f,394.646f, 0}, // 14 - Horde Final Pos 4 - {531.399f,125.63f,394.708f, 0}, // 15 - Horde Final Pos 5 - {528.958f,131.47f,394.73f, 0}, // 16 - Horde Final Pos 6 - {526.309f,116.667f,394.833f, 0}, // 17 - Horde Final Pos 7 - {524.238f,122.411f,394.819f, 0}, // 18 - Horde Final Pos 8 - {521.901f,128.488f,394.832f, 0}, // 19 - Horde Final Pos 9 + {514.231f, 105.569f, 418.234f, 0}, // 0 - Horde Initial Pos 0 + {508.334f, 115.377f, 418.234f, 0}, // 1 - Horde Initial Pos 1 + {506.454f, 126.291f, 418.234f, 0}, // 2 - Horde Initial Pos 2 + {506.243f, 106.596f, 421.592f, 0}, // 3 - Horde Initial Pos 3 + {499.885f, 117.717f, 421.557f, 0}, // 4 - Horde Initial Pos 4 + + {613.127f, 100.443f, 419.74f, 0}, // 5 - Ally Initial Pos 0 + {621.126f, 128.042f, 418.231f, 0}, // 6 - Ally Initial Pos 1 + {618.829f, 113.606f, 418.232f, 0}, // 7 - Ally Initial Pos 2 + {625.845f, 112.914f, 421.575f, 0}, // 8 - Ally Initial Pos 3 + {615.566f, 109.653f, 418.234f, 0}, // 9 - Ally Initial Pos 4 + + {535.469f, 113.012f, 394.66f, 0}, // 10 - Horde Final Pos 0 + {526.417f, 137.465f, 394.749f, 0}, // 11 - Horde Final Pos 1 + {528.108f, 111.057f, 395.289f, 0}, // 12 - Horde Final Pos 2 + {519.92f, 134.285f, 395.289f, 0}, // 13 - Horde Final Pos 3 + {533.648f, 119.148f, 394.646f, 0}, // 14 - Horde Final Pos 4 + {531.399f, 125.63f, 394.708f, 0}, // 15 - Horde Final Pos 5 + {528.958f, 131.47f, 394.73f, 0}, // 16 - Horde Final Pos 6 + {526.309f, 116.667f, 394.833f, 0}, // 17 - Horde Final Pos 7 + {524.238f, 122.411f, 394.819f, 0}, // 18 - Horde Final Pos 8 + {521.901f, 128.488f, 394.832f, 0}, // 19 - Horde Final Pos 9 }; const Position TwinValkyrsLoc[]= |
