diff options
Diffstat (limited to 'src/server/scripts')
60 files changed, 462 insertions, 550 deletions
diff --git a/src/server/scripts/Commands/cs_debug.cpp b/src/server/scripts/Commands/cs_debug.cpp index 030bc136333..400e35b705b 100644 --- a/src/server/scripts/Commands/cs_debug.cpp +++ b/src/server/scripts/Commands/cs_debug.cpp @@ -1120,13 +1120,13 @@ public: if (isInt32) { uint32 value = (uint32)atoi(y); - target->SetUInt32Value(opcode , value); + target->SetUInt32Value(opcode, value); handler->PSendSysMessage(LANG_SET_UINT_FIELD, GUID_LOPART(guid), opcode, value); } else { float value = (float)atof(y); - target->SetFloatValue(opcode , value); + target->SetFloatValue(opcode, value); handler->PSendSysMessage(LANG_SET_FLOAT_FIELD, GUID_LOPART(guid), opcode, value); } @@ -1328,7 +1328,7 @@ public: { Player* player = handler->GetSession()->GetPlayer(); - sLog->outInfo(LOG_FILTER_SQL_DEV, "(@PATH, XX, %.3f, %.3f, %.5f, 0,0, 0,100, 0),", player->GetPositionX(), player->GetPositionY(), player->GetPositionZ()); + sLog->outInfo(LOG_FILTER_SQL_DEV, "(@PATH, XX, %.3f, %.3f, %.5f, 0, 0, 0, 100, 0),", player->GetPositionX(), player->GetPositionY(), player->GetPositionZ()); handler->PSendSysMessage("Waypoint SQL written to SQL Developer log"); return true; diff --git a/src/server/scripts/Commands/cs_quest.cpp b/src/server/scripts/Commands/cs_quest.cpp index a8748bc1adf..e10cf883518 100644 --- a/src/server/scripts/Commands/cs_quest.cpp +++ b/src/server/scripts/Commands/cs_quest.cpp @@ -80,7 +80,7 @@ public: // check item starting quest (it can work incorrectly if added without item in inventory) ItemTemplateContainer const* itc = sObjectMgr->GetItemTemplateStore(); - ItemTemplateContainer::const_iterator result = find_if(itc->begin(), itc->end(), Finder<uint32, ItemTemplate>(entry, &ItemTemplate::StartQuest)); + ItemTemplateContainer::const_iterator result = find_if (itc->begin(), itc->end(), Finder<uint32, ItemTemplate>(entry, &ItemTemplate::StartQuest)); if (result != itc->end()) { diff --git a/src/server/scripts/EasternKingdoms/Karazhan/boss_prince_malchezaar.cpp b/src/server/scripts/EasternKingdoms/Karazhan/boss_prince_malchezaar.cpp index 3a026d23faa..ae4b6197f4c 100644 --- a/src/server/scripts/EasternKingdoms/Karazhan/boss_prince_malchezaar.cpp +++ b/src/server/scripts/EasternKingdoms/Karazhan/boss_prince_malchezaar.cpp @@ -603,7 +603,7 @@ public: void netherspite_infernal::netherspite_infernalAI::Cleanup() { - Creature *pMalchezaar = Unit::GetCreature(*me, malchezaar); + Creature* pMalchezaar = Unit::GetCreature(*me, malchezaar); if (pMalchezaar && pMalchezaar->isAlive()) CAST_AI(boss_malchezaar::boss_malchezaarAI, pMalchezaar->AI())->Cleanup(me, point); diff --git a/src/server/scripts/EasternKingdoms/ScarletEnclave/zone_the_scarlet_enclave.cpp b/src/server/scripts/EasternKingdoms/ScarletEnclave/zone_the_scarlet_enclave.cpp index 32ce484f715..27e057ce6aa 100644 --- a/src/server/scripts/EasternKingdoms/ScarletEnclave/zone_the_scarlet_enclave.cpp +++ b/src/server/scripts/EasternKingdoms/ScarletEnclave/zone_the_scarlet_enclave.cpp @@ -104,7 +104,7 @@ public: { me->HandleEmoteCommand(EMOTE_ONESHOT_CUSTOM_SPELL_01); DoCast(player, SPELL_REVIVE, true); - Talk(WHISPER_REVIVE,player->GetGUID()); + Talk(WHISPER_REVIVE, player->GetGUID()); } FlyBackTimer = 5000; break; diff --git a/src/server/scripts/EasternKingdoms/Scholomance/boss_darkmaster_gandling.cpp b/src/server/scripts/EasternKingdoms/Scholomance/boss_darkmaster_gandling.cpp index b596ad3f609..5d164fbfafa 100644 --- a/src/server/scripts/EasternKingdoms/Scholomance/boss_darkmaster_gandling.cpp +++ b/src/server/scripts/EasternKingdoms/Scholomance/boss_darkmaster_gandling.cpp @@ -117,7 +117,7 @@ class boss_darkmaster_gandling : public CreatureScript case EVENT_SHADOW_PORTAL: if (HealthAbovePct(3)) { - DoCast(SelectTarget(SELECT_TARGET_RANDOM,0, 100, true),SPELL_SHADOW_PORTAL,true); + DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true), SPELL_SHADOW_PORTAL, true); events.ScheduleEvent(EVENT_SHADOW_PORTAL, urand(17000, 27000)); } } @@ -172,7 +172,7 @@ class spell_shadow_portal : public SpellScriptLoader { if (attempts++ >= 6) break; - switch (urand(0,5)) + switch (urand(0, 5)) { case ROOM_HALL_OF_SECRETS: if (InstanceScript* instance = GetCaster()->GetInstanceScript()) @@ -223,7 +223,7 @@ class spell_shadow_portal : public SpellScriptLoader } }; -// Script for Shadow Portal spells 17863,17939,17943,17944,17946,17948 +// Script for Shadow Portal spells 17863, 17939, 17943, 17944, 17946, 17948 Position const SummonPos[18] = { // Hall of Secrects @@ -331,7 +331,7 @@ class spell_shadow_portal_rooms : public SpellScriptLoader if (Summoned) { Summoned->GetMotionMaster()->MoveRandom(5); - Summoned->AI()->SetData(0,phase_to_set); + Summoned->AI()->SetData(0, phase_to_set); } } diff --git a/src/server/scripts/EasternKingdoms/Scholomance/boss_illucia_barov.cpp b/src/server/scripts/EasternKingdoms/Scholomance/boss_illucia_barov.cpp index d09a5ae96c9..617dff17220 100644 --- a/src/server/scripts/EasternKingdoms/Scholomance/boss_illucia_barov.cpp +++ b/src/server/scripts/EasternKingdoms/Scholomance/boss_illucia_barov.cpp @@ -48,7 +48,7 @@ class boss_illucia_barov : public CreatureScript struct boss_illuciabarovAI : public BossAI { - boss_illuciabarovAI(Creature* creature) : BossAI(creature,DATA_LADYILLUCIABAROV) {} + boss_illuciabarovAI(Creature* creature) : BossAI(creature, DATA_LADYILLUCIABAROV) {} void EnterCombat(Unit* /*who*/) { @@ -78,7 +78,7 @@ class boss_illucia_barov : public CreatureScript events.ScheduleEvent(EVENT_CURSEOFAGONY, 30000); break; case EVENT_SHADOWSHOCK: - DoCast(SelectTarget(SELECT_TARGET_RANDOM,0, 100, true),SPELL_SHADOWSHOCK,true); + DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true), SPELL_SHADOWSHOCK, true); events.ScheduleEvent(EVENT_SHADOWSHOCK, 12000); break; case EVENT_SILENCE: diff --git a/src/server/scripts/EasternKingdoms/Scholomance/boss_instructor_malicia.cpp b/src/server/scripts/EasternKingdoms/Scholomance/boss_instructor_malicia.cpp index 5036158cae2..e2c7287f178 100644 --- a/src/server/scripts/EasternKingdoms/Scholomance/boss_instructor_malicia.cpp +++ b/src/server/scripts/EasternKingdoms/Scholomance/boss_instructor_malicia.cpp @@ -91,7 +91,7 @@ class boss_instructor_malicia : public CreatureScript events.ScheduleEvent(EVENT_CALLOFGRAVES, 65000); break; case EVENT_CORRUPTION: - DoCast(SelectTarget(SELECT_TARGET_RANDOM,0, 100, true),SPELL_CORRUPTION,true); + DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true), SPELL_CORRUPTION, true); events.ScheduleEvent(EVENT_CORRUPTION, 24000); break; case EVENT_RENEW: diff --git a/src/server/scripts/EasternKingdoms/Scholomance/boss_kirtonos_the_herald.cpp b/src/server/scripts/EasternKingdoms/Scholomance/boss_kirtonos_the_herald.cpp index 32c16a1c70c..b0a2d48d053 100644 --- a/src/server/scripts/EasternKingdoms/Scholomance/boss_kirtonos_the_herald.cpp +++ b/src/server/scripts/EasternKingdoms/Scholomance/boss_kirtonos_the_herald.cpp @@ -152,7 +152,7 @@ class boss_kirtonos_the_herald : public CreatureScript switch (_introEvent) { case INTRO_1: - me->GetMotionMaster()->MovePath(KIRTONOS_PATH,false); + me->GetMotionMaster()->MovePath(KIRTONOS_PATH, false); _introEvent = 0; break; case INTRO_2: diff --git a/src/server/scripts/EasternKingdoms/Scholomance/boss_lord_alexei_barov.cpp b/src/server/scripts/EasternKingdoms/Scholomance/boss_lord_alexei_barov.cpp index e8fb4324d00..3a7aee0d6c6 100644 --- a/src/server/scripts/EasternKingdoms/Scholomance/boss_lord_alexei_barov.cpp +++ b/src/server/scripts/EasternKingdoms/Scholomance/boss_lord_alexei_barov.cpp @@ -74,7 +74,7 @@ class boss_lord_alexei_barov : public CreatureScript switch (eventId) { case EVENT_IMMOLATE: - DoCast(SelectTarget(SELECT_TARGET_RANDOM,0, 100, true),SPELL_IMMOLATE,true); + DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true), SPELL_IMMOLATE, true); events.ScheduleEvent(EVENT_IMMOLATE, 12000); break; case EVENT_VEILOFSHADOW: diff --git a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_eredar_twins.cpp b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_eredar_twins.cpp index 6e3f024ac1d..c186ada72b7 100644 --- a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_eredar_twins.cpp +++ b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_eredar_twins.cpp @@ -114,7 +114,7 @@ public: if (instance) { - if (Creature *temp = Unit::GetCreature(*me, instance->GetData64(DATA_ALYTHESS))) + if (Creature* temp = Unit::GetCreature(*me, instance->GetData64(DATA_ALYTHESS))) { if (temp->isDead()) temp->Respawn(); @@ -145,7 +145,7 @@ public: if (instance) { - Creature *temp = Unit::GetCreature(*me, instance->GetData64(DATA_ALYTHESS)); + Creature* temp = Unit::GetCreature(*me, instance->GetData64(DATA_ALYTHESS)); if (temp && temp->isAlive() && !temp->getVictim()) temp->AI()->AttackStart(who); } @@ -374,7 +374,7 @@ public: if (instance) { - if (Creature *temp = Unit::GetCreature((*me), instance->GetData64(DATA_SACROLASH))) + if (Creature* temp = Unit::GetCreature((*me), instance->GetData64(DATA_SACROLASH))) { if (temp->isDead()) temp->Respawn(); @@ -406,7 +406,7 @@ public: if (instance) { - Creature *temp = Unit::GetCreature(*me, instance->GetData64(DATA_SACROLASH)); + Creature* temp = Unit::GetCreature(*me, instance->GetData64(DATA_SACROLASH)); if (temp && temp->isAlive() && !temp->getVictim()) temp->AI()->AttackStart(who); } diff --git a/src/server/scripts/EasternKingdoms/SunwellPlateau/instance_sunwell_plateau.cpp b/src/server/scripts/EasternKingdoms/SunwellPlateau/instance_sunwell_plateau.cpp index d575b7633cb..57699a34e17 100644 --- a/src/server/scripts/EasternKingdoms/SunwellPlateau/instance_sunwell_plateau.cpp +++ b/src/server/scripts/EasternKingdoms/SunwellPlateau/instance_sunwell_plateau.cpp @@ -122,7 +122,7 @@ public: return false; } - Player const * GetPlayerInMap() const + Player const* GetPlayerInMap() const { Map::PlayerList const& players = instance->GetPlayers(); diff --git a/src/server/scripts/EasternKingdoms/Uldaman/boss_archaedas.cpp b/src/server/scripts/EasternKingdoms/Uldaman/boss_archaedas.cpp index 22c4da74d44..81f64ce6de0 100644 --- a/src/server/scripts/EasternKingdoms/Uldaman/boss_archaedas.cpp +++ b/src/server/scripts/EasternKingdoms/Uldaman/boss_archaedas.cpp @@ -102,7 +102,7 @@ class boss_archaedas : public CreatureScript DoCast(minion, SPELL_AWAKEN_VAULT_WALKER, flag); minion->CastSpell(minion, SPELL_ARCHAEDAS_AWAKEN, true); minion->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); - minion->RemoveFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_DISABLE_MOVE); + minion->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISABLE_MOVE); minion->setFaction(14); } } diff --git a/src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp b/src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp index ac26056c6e6..df87eaca5a8 100644 --- a/src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp +++ b/src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp @@ -205,7 +205,7 @@ class instance_uldaman : public InstanceMapScript continue; archaedas->CastSpell(target, SPELL_AWAKEN_VAULT_WALKER, true); target->CastSpell(target, SPELL_ARCHAEDAS_AWAKEN, true); - target->RemoveFlag(UNIT_FIELD_FLAGS,UNIT_FLAG_DISABLE_MOVE); + target->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISABLE_MOVE); target->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); target->setFaction(14); return; // only want the first one we find diff --git a/src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp b/src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp index 59997ebaa31..44fa0f87177 100644 --- a/src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp +++ b/src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp @@ -314,7 +314,7 @@ class npc_harrison_jones : public CreatureScript me->SetEntry(NPC_HARRISON_JONES_2); me->SetDisplayId(MODEL_HARRISON_JONES_2); me->SetTarget(0); - me->SetByteValue(UNIT_FIELD_BYTES_1,0,UNIT_STAND_STATE_DEAD); + me->SetByteValue(UNIT_FIELD_BYTES_1, 0,UNIT_STAND_STATE_DEAD); me->SetFlag(UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_DEAD); if (instance) instance->SetData(DATA_GONGEVENT, DONE); @@ -330,7 +330,7 @@ class npc_harrison_jones : public CreatureScript switch (_gongEvent) { case GONG_EVENT_1: - me->GetMotionMaster()->MovePath(HARRISON_MOVE_1,false); + me->GetMotionMaster()->MovePath(HARRISON_MOVE_1, false); _gongEvent = GONG_EVENT_2; _gongTimer = 12000; break; @@ -345,14 +345,14 @@ class npc_harrison_jones : public CreatureScript break; case GONG_EVENT_3: if (GameObject* gong = me->GetMap()->GetGameObject(instance->GetData64(GO_STRANGE_GONG))) - gong->RemoveFlag(GAMEOBJECT_FLAGS,GO_FLAG_NOT_SELECTABLE); + gong->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); _gongEvent = GONG_EVENT_4; _gongTimer = 105000; break; case GONG_EVENT_4: me->RemoveAura(SPELL_BANGING_THE_GONG); if (GameObject* gong = me->GetMap()->GetGameObject(instance->GetData64(GO_STRANGE_GONG))) - gong->SetFlag(GAMEOBJECT_FLAGS,GO_FLAG_NOT_SELECTABLE); + gong->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); // trigger or gong will need to be scripted to set IN_PROGRESS after enough hits. // This is temp workaround. @@ -362,7 +362,7 @@ class npc_harrison_jones : public CreatureScript if (instance->GetData(DATA_GONGEVENT) == IN_PROGRESS) { // Players are Now Saved to instance at SPECIAL (Player should be notified?) - me->GetMotionMaster()->MovePath(HARRISON_MOVE_2,false); + me->GetMotionMaster()->MovePath(HARRISON_MOVE_2, false); _gongEvent = GONG_EVENT_5; _gongTimer = 5000; } @@ -401,12 +401,12 @@ class npc_harrison_jones : public CreatureScript ptarget->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_ID + 0, uint32(WEAPON_SPEAR)); ptarget->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_IMMUNE_TO_PC); ptarget->SetReactState(REACT_PASSIVE); - ptarget->AI()->SetData(0,1); + ptarget->AI()->SetData(0, 1); } else ptarget->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_IMMUNE_TO_PC); ptarget->SetReactState(REACT_PASSIVE); - ptarget->AI()->SetData(0,2); + ptarget->AI()->SetData(0, 2); } } } @@ -421,7 +421,7 @@ class npc_harrison_jones : public CreatureScript DoCast(me, SPELL_STEALTH); me->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_ID + 0, uint32(0)); me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_NONE); - me->GetMotionMaster()->MovePath(HARRISON_MOVE_3,false); + me->GetMotionMaster()->MovePath(HARRISON_MOVE_3, false); _gongTimer = 1000; _gongEvent = 0; break; diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_arlokk.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_arlokk.cpp index 593ee05d951..1334d587464 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_arlokk.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_arlokk.cpp @@ -36,17 +36,41 @@ enum Says enum Spells { - SPELL_SHADOWWORDPAIN = 23952, + SPELL_SHADOW_WORD_PAIN = 23952, SPELL_GOUGE = 24698, SPELL_MARK = 24210, - SPELL_CLEAVE = 26350, //Perhaps not right. Not a red aura... - SPELL_PANTHER_TRANSFORM = 24190, + SPELL_CLEAVE = 26350, // Perhaps not right. Not a red aura... + SPELL_PANTHER_TRANSFORM = 24190 +}; + +enum Events +{ + EVENT_SHADOW_WORD_PAIN = 0, + EVENT_GOUGE = 1, + EVENT_MARK = 2, + EVENT_CLEAVE = 3, + EVENT_VANISH = 4, + EVENT_VISIBLE = 5, + EVENT_SUMMON = 6 +}; + +enum Phases +{ + PHASE_ONE = 1, + PHASE_TWO = 2 +}; +enum ModelIds +{ MODEL_ID_NORMAL = 15218, MODEL_ID_PANTHER = 15215, - MODEL_ID_BLANK = 11686, + MODEL_ID_BLANK = 11686 +}; - NPC_ZULIAN_PROWLER = 15101 +Position const PosSummonProwlers[2] = +{ + { -11532.7998f, -1649.6734f, 41.4800f, 0.0f }, + { -11532.9970f, -1606.4840f, 41.2979f, 0.0f } }; class boss_arlokk : public CreatureScript @@ -57,39 +81,14 @@ class boss_arlokk : public CreatureScript { boss_arlokkAI(Creature* creature) : BossAI(creature, DATA_ARLOKK) {} - uint32 m_uiShadowWordPain_Timer; - uint32 m_uiGouge_Timer; - uint32 m_uiMark_Timer; - uint32 m_uiCleave_Timer; - uint32 m_uiVanish_Timer; - uint32 m_uiVisible_Timer; - - uint32 m_uiSummon_Timer; - uint32 m_uiSummonCount; - - Unit* m_pMarkedTarget; - uint64 MarkedTargetGUID; - - bool m_bIsPhaseTwo; - bool m_bIsVanished; + uint32 summonCount; + // Unit* markedTarget; + uint64 markedTargetGUID; void Reset() { - m_uiShadowWordPain_Timer = 8000; - m_uiGouge_Timer = 14000; - m_uiMark_Timer = 35000; - m_uiCleave_Timer = 4000; - m_uiVanish_Timer = 60000; - m_uiVisible_Timer = 6000; - - m_uiSummon_Timer = 5000; - m_uiSummonCount = 0; - - m_bIsPhaseTwo = false; - m_bIsVanished = false; - - MarkedTargetGUID = 0; - + summonCount = 0; + markedTargetGUID = 0; me->SetDisplayId(MODEL_ID_NORMAL); me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); } @@ -105,6 +104,10 @@ class boss_arlokk : public CreatureScript void EnterCombat(Unit* /*who*/) { _EnterCombat(); + events.ScheduleEvent(EVENT_SHADOW_WORD_PAIN, 8000, 0, PHASE_ONE); + events.ScheduleEvent(EVENT_MARK, 35000, 0, PHASE_ONE); + events.ScheduleEvent(EVENT_SUMMON, 5000); + events.ScheduleEvent(EVENT_VANISH, 60000); Talk(SAY_AGGRO); } @@ -112,136 +115,88 @@ class boss_arlokk : public CreatureScript { if (instance) instance->SetData(DATA_ARLOKK, NOT_STARTED); - - //we should be summoned, so despawn me->DespawnOrUnsummon(); } void DoSummonPhanters() { - if (MarkedTargetGUID) - Talk(SAY_FEAST_PANTHER, MarkedTargetGUID); - - me->SummonCreature(NPC_ZULIAN_PROWLER, -11532.7998f, -1649.6734f, 41.4800f, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); - me->SummonCreature(NPC_ZULIAN_PROWLER, -11532.9970f, -1606.4840f, 41.2979f, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + if (markedTargetGUID) + Talk(SAY_FEAST_PANTHER, markedTargetGUID); + me->SummonCreature(NPC_ZULIAN_PROWLER, PosSummonProwlers[0], TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + me->SummonCreature(NPC_ZULIAN_PROWLER, PosSummonProwlers[1], TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); } void JustSummoned(Creature* summoned) { - if (Unit* pMarkedTarget = Unit::GetUnit(*me, MarkedTargetGUID)) - summoned->AI()->AttackStart(pMarkedTarget); - - ++m_uiSummonCount; + if (Unit* markedTarget = Unit::GetUnit(*me, markedTargetGUID)) + summoned->AI()->AttackStart(markedTarget); + ++summonCount; } - void UpdateAI(const uint32 uiDiff) + void UpdateAI(uint32 const diff) { if (!UpdateVictim()) return; - if (!m_bIsPhaseTwo) - { - if (m_uiShadowWordPain_Timer <= uiDiff) - { - DoCast(me->getVictim(), SPELL_SHADOWWORDPAIN); - m_uiShadowWordPain_Timer = 15000; - } - else - m_uiShadowWordPain_Timer -= uiDiff; - - if (m_uiMark_Timer <= uiDiff) - { - Unit* pMarkedTarget = SelectTarget(SELECT_TARGET_RANDOM, 0); - - if (pMarkedTarget) - { - DoCast(pMarkedTarget, SPELL_MARK); - MarkedTargetGUID = pMarkedTarget->GetGUID(); - } - else - sLog->outError(LOG_FILTER_TSCR, "boss_arlokk could not accuire pMarkedTarget."); - - m_uiMark_Timer = 15000; - } - else - m_uiMark_Timer -= uiDiff; - } - else - { - //Cleave_Timer - if (m_uiCleave_Timer <= uiDiff) - { - DoCast(me->getVictim(), SPELL_CLEAVE); - m_uiCleave_Timer = 16000; - } - else - m_uiCleave_Timer -= uiDiff; - - //Gouge_Timer - if (m_uiGouge_Timer <= uiDiff) - { - DoCast(me->getVictim(), SPELL_GOUGE); + events.Update(diff); - DoModifyThreatPercent(me->getVictim(), -80); - - m_uiGouge_Timer = 17000+rand()%10000; - } - else - m_uiGouge_Timer -= uiDiff; - } + if (me->HasUnitState(UNIT_STATE_CASTING)) + return; - if (m_uiSummonCount <= 30) + while (uint32 eventId = events.ExecuteEvent()) { - if (m_uiSummon_Timer <= uiDiff) + switch (eventId) { - DoSummonPhanters(); - m_uiSummon_Timer = 5000; + case EVENT_SHADOW_WORD_PAIN: + DoCastVictim(SPELL_SHADOW_WORD_PAIN, true); + events.ScheduleEvent(EVENT_SHADOW_WORD_PAIN, 15000, 0, PHASE_ONE); + break; + case EVENT_MARK: + DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true), SPELL_MARK); + events.ScheduleEvent(EVENT_MARK, 15000, 0, PHASE_ONE); + break; + case EVENT_CLEAVE: + DoCastVictim(SPELL_SHADOW_WORD_PAIN, true); + events.ScheduleEvent(EVENT_CLEAVE, 16000, 0, PHASE_TWO); + break; + case EVENT_GOUGE: + DoCastVictim(SPELL_SHADOW_WORD_PAIN, true); + events.ScheduleEvent(EVENT_GOUGE, urand(17000, 27000), 0, PHASE_TWO); + break; + case EVENT_SUMMON: + if (summonCount <= 30) + DoSummonPhanters(); + events.ScheduleEvent(EVENT_SUMMON, 5000); + break; + case EVENT_VANISH: + me->SetDisplayId(MODEL_ID_BLANK); + me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); + me->AttackStop(); + DoResetThreat(); + events.ScheduleEvent(EVENT_VISIBLE, 6000); + break; + case EVENT_VISIBLE: + { + me->SetDisplayId(MODEL_ID_PANTHER); + me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); + const CreatureTemplate* cinfo = me->GetCreatureTemplate(); + me->SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, (cinfo->mindmg +((cinfo->mindmg/100) * 35))); + me->SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, (cinfo->maxdmg +((cinfo->maxdmg/100) * 35))); + me->UpdateDamagePhysical(BASE_ATTACK); + if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) + AttackStart(target); + events.ScheduleEvent(EVENT_VANISH, 39000); + events.ScheduleEvent(EVENT_CLEAVE, 0, PHASE_TWO); + events.ScheduleEvent(EVENT_GOUGE, 14000, 0, PHASE_TWO); + events.SetPhase(PHASE_TWO); + break; + } + default: + break; } - else - m_uiSummon_Timer -= uiDiff; } - if (m_uiVanish_Timer <= uiDiff) - { - //Invisble Model - me->SetDisplayId(MODEL_ID_BLANK); - me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); - - me->AttackStop(); - DoResetThreat(); - - m_bIsVanished = true; - - m_uiVanish_Timer = 45000; - m_uiVisible_Timer = 6000; - } - else - m_uiVanish_Timer -= uiDiff; - - if (m_bIsVanished) - { - if (m_uiVisible_Timer <= uiDiff) - { - //The Panther Model - me->SetDisplayId(MODEL_ID_PANTHER); - me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); - - const CreatureTemplate* cinfo = me->GetCreatureTemplate(); - me->SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, (cinfo->mindmg +((cinfo->mindmg/100) * 35))); - me->SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, (cinfo->maxdmg +((cinfo->maxdmg/100) * 35))); - me->UpdateDamagePhysical(BASE_ATTACK); - - if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) - AttackStart(target); - - m_bIsPhaseTwo = true; - m_bIsVanished = false; - } - else - m_uiVisible_Timer -= uiDiff; - } - else - DoMeleeAttackIfReady(); + DoMeleeAttackIfReady(); } }; @@ -253,10 +208,7 @@ class boss_arlokk : public CreatureScript class go_gong_of_bethekk : public GameObjectScript { - public: - go_gong_of_bethekk() : GameObjectScript("go_gong_of_bethekk") - { - } + public: go_gong_of_bethekk() : GameObjectScript("go_gong_of_bethekk") {} bool OnGossipHello(Player* /*player*/, GameObject* go) { @@ -264,7 +216,6 @@ class go_gong_of_bethekk : public GameObjectScript { if (instance->GetData(DATA_ARLOKK) == DONE || instance->GetData(DATA_ARLOKK) == IN_PROGRESS) return true; - instance->SetData(DATA_ARLOKK, IN_PROGRESS); return true; } diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp index 7943e51a7cd..70399b6934c 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp @@ -49,6 +49,11 @@ class boss_gahzranka : public CreatureScript // gahzranka { boss_gahzrankaAI(Creature* creature) : BossAI(creature, DATA_GAHZRANKA) {} + void Reset() + { + _Reset(); + } + void JustDied(Unit* /*killer*/) { _JustDied(); diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_grilek.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_grilek.cpp index 4b7bee5abf1..f06500694a5 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_grilek.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_grilek.cpp @@ -47,6 +47,11 @@ class boss_grilek : public CreatureScript // grilek { boss_grilekAI(Creature* creature) : BossAI(creature, DATA_EDGE_OF_MADNESS) {} + void Reset() + { + _Reset(); + } + void JustDied(Unit* /*killer*/) { _JustDied(); diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp index 87a9c02e3ed..8003f4a1ed7 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp @@ -1,6 +1,5 @@ /* * Copyright (C) 2008-2013 TrinityCore <http://www.trinitycore.org/> - * Copyright (C) 2006-2009 ScriptDev2 <https://scriptdev2.svn.sourceforge.net/> * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the @@ -16,12 +15,12 @@ * with this program. If not, see <http://www.gnu.org/licenses/>. */ -/* ScriptData -SDName: Boss_Hakkar -SD%Complete: 95 -SDComment: Blood siphon spell buggy cause of Core Issue. -SDCategory: Zul'Gurub -EndScriptData */ +/* +Name: Boss_Hakkar +%Complete: 95 +Comment: Blood siphon spell buggy cause of Core Issue. +Category: Zul'Gurub +*/ #include "ScriptMgr.h" #include "ScriptedCreature.h" @@ -31,18 +30,18 @@ enum Says { SAY_AGGRO = 0, SAY_FLEEING = 1, - SAY_MINION_DESTROY = 2, //where does it belong? - SAY_PROTECT_ALTAR = 3 //where does it belong? + SAY_MINION_DESTROY = 2, // Where does it belong? + SAY_PROTECT_ALTAR = 3 // Where does it belong? }; enum Spells { - SPELL_BLOODSIPHON = 24322, - SPELL_CORRUPTEDBLOOD = 24328, - SPELL_CAUSEINSANITY = 24327, //Not working disabled. - SPELL_WILLOFHAKKAR = 24178, + SPELL_BLOOD_SIPHON = 24322, // Buggy ? + SPELL_CORRUPTED_BLOOD = 24328, + SPELL_CAUSE_INSANITY = 24327, // Spell needs scripting. + SPELL_WILL_OF_HAKKAR = 24178, SPELL_ENRAGE = 24318, -// The Aspects of all High Priests + // The Aspects of all High Priests spells SPELL_ASPECT_OF_JEKLIK = 24687, SPELL_ASPECT_OF_VENOXIS = 24688, SPELL_ASPECT_OF_MARLI = 24686, @@ -50,7 +49,22 @@ enum Spells SPELL_ASPECT_OF_ARLOKK = 24690 }; -class boss_hakkar : public CreatureScript // hakkar +enum Events +{ + EVENT_BLOOD_SIPHON = 0, + EVENT_CORRUPTED_BLOOD = 1, + EVENT_CAUSE_INSANITY = 2, // Spell needs scripting. Event disabled + EVENT_WILL_OF_HAKKAR = 3, + EVENT_ENRAGE = 4, + // The Aspects of all High Priests events + EVENT_ASPECT_OF_JEKLIK = 5, + EVENT_ASPECT_OF_VENOXIS = 6, + EVENT_ASPECT_OF_MARLI = 7, + EVENT_ASPECT_OF_THEKAL = 8, + EVENT_ASPECT_OF_ARLOKK = 9 +}; + +class boss_hakkar : public CreatureScript { public: boss_hakkar() : CreatureScript("boss_hakkar") {} @@ -58,47 +72,9 @@ class boss_hakkar : public CreatureScript // hakkar { boss_hakkarAI(Creature* creature) : BossAI(creature, DATA_HAKKAR) {} - uint32 BloodSiphon_Timer; - uint32 CorruptedBlood_Timer; - uint32 CauseInsanity_Timer; - uint32 WillOfHakkar_Timer; - uint32 Enrage_Timer; - - uint32 CheckJeklik_Timer; - uint32 CheckVenoxis_Timer; - uint32 CheckMarli_Timer; - uint32 CheckThekal_Timer; - uint32 CheckArlokk_Timer; - - uint32 AspectOfJeklik_Timer; - uint32 AspectOfVenoxis_Timer; - uint32 AspectOfMarli_Timer; - uint32 AspectOfThekal_Timer; - uint32 AspectOfArlokk_Timer; - - bool Enraged; - void Reset() { - BloodSiphon_Timer = 90000; - CorruptedBlood_Timer = 25000; - CauseInsanity_Timer = 17000; - WillOfHakkar_Timer = 17000; - Enrage_Timer = 600000; - - CheckJeklik_Timer = 1000; - CheckVenoxis_Timer = 2000; - CheckMarli_Timer = 3000; - CheckThekal_Timer = 4000; - CheckArlokk_Timer = 5000; - - AspectOfJeklik_Timer = 4000; - AspectOfVenoxis_Timer = 7000; - AspectOfMarli_Timer = 12000; - AspectOfThekal_Timer = 8000; - AspectOfArlokk_Timer = 18000; - - Enraged = false; + _Reset(); } void JustDied(Unit* /*killer*/) @@ -109,139 +85,83 @@ class boss_hakkar : public CreatureScript // hakkar void EnterCombat(Unit* /*who*/) { _EnterCombat(); + events.ScheduleEvent(EVENT_BLOOD_SIPHON, 90000); + events.ScheduleEvent(EVENT_CORRUPTED_BLOOD, 25000); + events.ScheduleEvent(EVENT_CAUSE_INSANITY, 17000); + events.ScheduleEvent(EVENT_WILL_OF_HAKKAR, 17000); + events.ScheduleEvent(EVENT_ENRAGE, 600000); + if (instance->GetData(DATA_JEKLIK) != DONE) + events.ScheduleEvent(EVENT_ASPECT_OF_JEKLIK, 4000); + if (instance->GetData(DATA_VENOXIS) != DONE) + events.ScheduleEvent(EVENT_ASPECT_OF_VENOXIS, 7000); + if (instance->GetData(DATA_MARLI) != DONE) + events.ScheduleEvent(EVENT_ASPECT_OF_MARLI, 12000); + if (instance->GetData(DATA_THEKAL) != DONE) + events.ScheduleEvent(EVENT_ASPECT_OF_THEKAL, 8000); + if (instance->GetData(DATA_ARLOKK) != DONE) + events.ScheduleEvent(EVENT_ASPECT_OF_ARLOKK, 18000); Talk(SAY_AGGRO); } - void UpdateAI(const uint32 diff) + void UpdateAI(uint32 const diff) { if (!UpdateVictim()) return; - //BloodSiphon_Timer - if (BloodSiphon_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_BLOODSIPHON); - BloodSiphon_Timer = 90000; - } else BloodSiphon_Timer -= diff; - - //CorruptedBlood_Timer - if (CorruptedBlood_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_CORRUPTEDBLOOD); - CorruptedBlood_Timer = urand(30000, 45000); - } else CorruptedBlood_Timer -= diff; - - //CauseInsanity_Timer - /*if (CauseInsanity_Timer <= diff) - { - if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM, 0)) - DoCast(target, SPELL_CAUSEINSANITY); - - CauseInsanity_Timer = urand(35000, 43000); - } else CauseInsanity_Timer -= diff;*/ - - //WillOfHakkar_Timer - if (WillOfHakkar_Timer <= diff) - { - if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) - DoCast(target, SPELL_WILLOFHAKKAR); - - WillOfHakkar_Timer = urand(25000, 35000); - } else WillOfHakkar_Timer -= diff; + events.Update(diff); - if (!Enraged && Enrage_Timer <= diff) - { - DoCast(me, SPELL_ENRAGE); - Enraged = true; - } else Enrage_Timer -= diff; - - //Checking if Jeklik is dead. If not we cast her Aspect - if (CheckJeklik_Timer <= diff) - { - if (instance) - { - if (instance->GetData(DATA_JEKLIK) != DONE) - { - if (AspectOfJeklik_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_ASPECT_OF_JEKLIK); - AspectOfJeklik_Timer = urand(10000, 14000); - } else AspectOfJeklik_Timer -= diff; - } - } - CheckJeklik_Timer = 1000; - } else CheckJeklik_Timer -= diff; - - //Checking if Venoxis is dead. If not we cast his Aspect - if (CheckVenoxis_Timer <= diff) - { - if (instance) - { - if (instance->GetData(DATA_VENOXIS) != DONE) - { - if (AspectOfVenoxis_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_ASPECT_OF_VENOXIS); - AspectOfVenoxis_Timer = 8000; - } else AspectOfVenoxis_Timer -= diff; - } - } - CheckVenoxis_Timer = 1000; - } else CheckVenoxis_Timer -= diff; - - //Checking if Marli is dead. If not we cast her Aspect - if (CheckMarli_Timer <= diff) - { - if (instance) - { - if (instance->GetData(DATA_MARLI) != DONE) - { - if (AspectOfMarli_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_ASPECT_OF_MARLI); - AspectOfMarli_Timer = 10000; - } else AspectOfMarli_Timer -= diff; - - } - } - CheckMarli_Timer = 1000; - } else CheckMarli_Timer -= diff; - - //Checking if Thekal is dead. If not we cast his Aspect - if (CheckThekal_Timer <= diff) - { - if (instance) - { - if (instance->GetData(DATA_THEKAL) != DONE) - { - if (AspectOfThekal_Timer <= diff) - { - DoCast(me, SPELL_ASPECT_OF_THEKAL); - AspectOfThekal_Timer = 15000; - } else AspectOfThekal_Timer -= diff; - } - } - CheckThekal_Timer = 1000; - } else CheckThekal_Timer -= diff; + if (me->HasUnitState(UNIT_STATE_CASTING)) + return; - //Checking if Arlokk is dead. If yes we cast her Aspect - if (CheckArlokk_Timer <= diff) + while (uint32 eventId = events.ExecuteEvent()) { - if (instance) + switch (eventId) { - if (instance->GetData(DATA_ARLOKK) != DONE) - { - if (AspectOfArlokk_Timer <= diff) - { - DoCast(me, SPELL_ASPECT_OF_ARLOKK); - DoResetThreat(); - - AspectOfArlokk_Timer = urand(10000, 15000); - } else AspectOfArlokk_Timer -= diff; - } + case EVENT_BLOOD_SIPHON: + DoCastVictim(SPELL_BLOOD_SIPHON, true); + events.ScheduleEvent(EVENT_BLOOD_SIPHON, 90000); + break; + case EVENT_CORRUPTED_BLOOD: + DoCastVictim(SPELL_CORRUPTED_BLOOD, true); + events.ScheduleEvent(EVENT_CORRUPTED_BLOOD, urand(30000, 45000)); + break; + case EVENT_CAUSE_INSANITY: + // DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true), SPELL_CAUSE_INSANITY); + // events.ScheduleEvent(EVENT_CAUSE_INSANITY, urand(35000, 45000)); + break; + case EVENT_WILL_OF_HAKKAR: + DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true), SPELL_WILL_OF_HAKKAR); + events.ScheduleEvent(EVENT_WILL_OF_HAKKAR, urand(25000, 35000)); + break; + case EVENT_ENRAGE: + if (!me->HasAura(SPELL_ENRAGE)) + DoCast(me, SPELL_ENRAGE); + events.ScheduleEvent(EVENT_ENRAGE, 90000); + break; + case EVENT_ASPECT_OF_JEKLIK: + DoCastVictim(SPELL_ASPECT_OF_JEKLIK, true); + events.ScheduleEvent(EVENT_ASPECT_OF_JEKLIK, urand(10000, 14000)); + break; + case EVENT_ASPECT_OF_VENOXIS: + DoCastVictim(SPELL_ASPECT_OF_VENOXIS, true); + events.ScheduleEvent(EVENT_ASPECT_OF_VENOXIS, 8000); + break; + case EVENT_ASPECT_OF_MARLI: + DoCastVictim(SPELL_ASPECT_OF_MARLI, true); + events.ScheduleEvent(EVENT_ASPECT_OF_MARLI, 10000); + break; + case EVENT_ASPECT_OF_THEKAL: + DoCastVictim(SPELL_ASPECT_OF_THEKAL, true); + events.ScheduleEvent(EVENT_ASPECT_OF_THEKAL, 15000); + break; + case EVENT_ASPECT_OF_ARLOKK: + DoCastVictim(SPELL_ASPECT_OF_ARLOKK, true); + events.ScheduleEvent(EVENT_ASPECT_OF_ARLOKK, urand(10000, 15000)); + break; + default: + break; } - CheckArlokk_Timer = 1000; - } else CheckArlokk_Timer -= diff; + } DoMeleeAttackIfReady(); } diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_hazzarah.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_hazzarah.cpp index cd55d648196..15228815d69 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_hazzarah.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_hazzarah.cpp @@ -48,6 +48,11 @@ class boss_hazzarah : public CreatureScript { boss_hazzarahAI(Creature* creature) : BossAI(creature, DATA_EDGE_OF_MADNESS) {} + void Reset() + { + _Reset(); + } + void JustDied(Unit* /*killer*/) { _JustDied(); diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_jeklik.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_jeklik.cpp index 4d27fd99769..7f19962e719 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_jeklik.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_jeklik.cpp @@ -70,6 +70,7 @@ class boss_jeklik : public CreatureScript //jeklik void Reset() { + _Reset(); Charge_Timer = 20000; SonicBurst_Timer = 8000; Screech_Timer = 13000; diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp index dd1edcb3529..005609e88db 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp @@ -55,12 +55,6 @@ enum Events EVENT_TELEPORT = 4 }; -enum CreatureId -{ - NPC_SHADE_OF_JINDO = 14986, - NPC_SACRIFICED_TROLL = 14826 -}; - Position const TeleportLoc = {-11583.7783f, -1249.4278f, 77.5471f, 4.745f}; class boss_jindo : public CreatureScript @@ -71,6 +65,11 @@ class boss_jindo : public CreatureScript { boss_jindoAI(Creature* creature) : BossAI(creature, DATA_JINDO) {} + void Reset() + { + _Reset(); + } + void JustDied(Unit* /*killer*/) { _JustDied(); diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp index 6b527ba45f3..258dda26c11 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp @@ -51,11 +51,6 @@ enum Spells SPELL_SUNDERARMOR = 24317 }; -enum CreatureId -{ - NPC_SPEAKER = 11391 -}; - class boss_mandokir : public CreatureScript { public: boss_mandokir() : CreatureScript("boss_mandokir") {} diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp index 4d2a892d305..40850a988e4 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp @@ -77,6 +77,11 @@ class boss_marli : public CreatureScript { boss_marliAI(Creature* creature) : BossAI(creature, DATA_MARLI) {} + void Reset() + { + _Reset(); + } + void JustDied(Unit* /*killer*/) { _JustDied(); diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_renataki.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_renataki.cpp index 65730d1baf2..6bf87decf7e 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_renataki.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_renataki.cpp @@ -57,6 +57,7 @@ class boss_renataki : public CreatureScript void Reset() { + _Reset(); Invisible_Timer = urand(8000, 18000); Ambush_Timer = 3000; Visible_Timer = 4000; diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp index 6710ca67863..ab45162fc35 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp @@ -89,6 +89,7 @@ class boss_thekal : public CreatureScript void Reset() { + _Reset(); Enraged = false; WasDead = false; } diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_venoxis.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_venoxis.cpp index f5c10631a9b..11a6e710c3c 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_venoxis.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_venoxis.cpp @@ -54,11 +54,6 @@ enum Spells SPELL_FRENZY = 8269 // 20% health - frenzy }; -enum NPCs -{ - NPC_PARASITIC_SERPENT = 14884 -}; - enum Events { // troll form @@ -83,6 +78,11 @@ enum Phases PHASE_TWO = 2 // snake form }; +enum NPCs +{ + NPC_PARASITIC_SERPENT = 14884 +}; + class boss_venoxis : public CreatureScript { public: boss_venoxis() : CreatureScript("boss_venoxis") {} @@ -93,21 +93,14 @@ class boss_venoxis : public CreatureScript void Reset() { - events.Reset(); - summons.DespawnAll(); - - // make sure this boss is properly reset - instance->SetBossState(DATA_VENOXIS, NOT_STARTED); - + _Reset(); // remove all spells and auras from previous attempts me->RemoveAllAuras(); me->SetReactState(REACT_PASSIVE); - // set some internally used variables to their defaults _inMeleeRange = 0; _transformed = false; _frenzied = false; - events.SetPhase(PHASE_ONE); } diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_wushoolay.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_wushoolay.cpp index 196df2b98b9..d1e7edf0218 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_wushoolay.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_wushoolay.cpp @@ -47,6 +47,11 @@ class boss_wushoolay : public CreatureScript { boss_wushoolayAI(Creature* creature) : BossAI(creature, DATA_EDGE_OF_MADNESS) {} + void Reset() + { + _Reset(); + } + void JustDied(Unit* /*killer*/) { _JustDied(); diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h b/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h index 55bf0e50e3c..2544e4f4d5f 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h +++ b/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h @@ -26,15 +26,15 @@ enum DataTypes DATA_VENOXIS = 1, // Main boss DATA_MARLI = 2, // Main boss DATA_ARLOKK = 3, // Main boss - DATA_HAKKAR = 4, // Main boss - DATA_MANDOKIR = 5, // Optional boss - DATA_JINDO = 6, // Optional boss - DATA_GAHZRANKA = 7, // Optional boss - DATA_EDGE_OF_MADNESS = 8, // Optional Event Edge of Madness - one of: Gri'lek, Renataki, Hazza'rah, or Wushoolay - DATA_THEKAL = 9, // ?? - DATA_LORKHAN = 10, // ?? - DATA_ZATH = 11, // ?? - DATA_OHGAN = 12 // ?? + DATA_THEKAL = 4, // Main boss + DATA_HAKKAR = 5, // End boss + DATA_MANDOKIR = 6, // Optional boss + DATA_JINDO = 7, // Optional boss + DATA_GAHZRANKA = 8, // Optional boss + DATA_EDGE_OF_MADNESS = 9, // Optional Event Edge of Madness - one of: Gri'lek, Renataki, Hazza'rah, or Wushoolay + DATA_LORKHAN = 10, // Zealot Lor'Khan add to High priest Thekal! + DATA_ZATH = 11, // Zealot Zath add to High priest Thekal! + DATA_OHGAN = 12 // Bloodlord Mandokir's raptor mount }; enum CreatureIds @@ -43,7 +43,11 @@ enum CreatureIds NPC_ZEALOT_ZATH = 11348, NPC_HIGH_PRIEST_THEKAL = 14509, NPC_JINDO_THE_HEXXER = 11380, - NPC_NIGHTMARE_ILLUSION = 15163 + NPC_NIGHTMARE_ILLUSION = 15163, + NPC_ZULIAN_PROWLER = 15101, + NPC_SPEAKER = 11391, + NPC_SHADE_OF_JINDO = 14986, + NPC_SACRIFICED_TROLL = 14826 }; #endif diff --git a/src/server/scripts/Events/childrens_week.cpp b/src/server/scripts/Events/childrens_week.cpp index 26f83922f87..9d35b510f6e 100644 --- a/src/server/scripts/Events/childrens_week.cpp +++ b/src/server/scripts/Events/childrens_week.cpp @@ -189,10 +189,10 @@ class npc_winterfin_playmate : public CreatureScript return; } - switch(phase) + switch (phase) { case 1: - orphan->GetMotionMaster()->MovePoint(0, me->GetPositionX() + cos(me->GetOrientation()) * 5,me->GetPositionY() + sin(me->GetOrientation()) * 5, me->GetPositionZ()); + orphan->GetMotionMaster()->MovePoint(0, me->GetPositionX() + cos(me->GetOrientation()) * 5, me->GetPositionY() + sin(me->GetOrientation()) * 5, me->GetPositionZ()); orphan->AI()->Talk(TEXT_ORACLE_ORPHAN_1); timer = 3000; break; @@ -290,7 +290,7 @@ class npc_snowfall_glade_playmate : public CreatureScript switch (phase) { case 1: - orphan->GetMotionMaster()->MovePoint(0, me->GetPositionX() + cos(me->GetOrientation()) * 5,me->GetPositionY() + sin(me->GetOrientation()) * 5, me->GetPositionZ()); + orphan->GetMotionMaster()->MovePoint(0, me->GetPositionX() + cos(me->GetOrientation()) * 5, me->GetPositionY() + sin(me->GetOrientation()) * 5, me->GetPositionZ()); orphan->AI()->Talk(TEXT_WOLVAR_ORPHAN_1); timer = 5000; break; @@ -810,7 +810,7 @@ class npc_alexstraza_the_lifebinder : public CreatureScript timer = 5000; break; case 8: - if(Creature* krasus = me->FindNearestCreature(NPC_KRASUS, 10.0f)) + if (Creature* krasus = me->FindNearestCreature(NPC_KRASUS, 10.0f)) { orphan->SetFacingToObject(krasus); krasus->AI()->Talk(TEXT_KRASUS_8); @@ -974,7 +974,7 @@ class npc_cw_area_trigger : public CreatureScript if (Creature* samuro = me->FindNearestCreature(25151, 20.0f)) { uint32 emote = 0; - switch(urand(1,5)) + switch (urand(1, 5)) { case 1: emote = EMOTE_ONESHOT_WAVE; diff --git a/src/server/scripts/Kalimdor/zone_silithus.cpp b/src/server/scripts/Kalimdor/zone_silithus.cpp index 58665224bdd..a612269eff7 100644 --- a/src/server/scripts/Kalimdor/zone_silithus.cpp +++ b/src/server/scripts/Kalimdor/zone_silithus.cpp @@ -544,7 +544,7 @@ public: switch (AnimationCount) { case 0: - Talk(ANACHRONOS_SAY_1,Fandral->GetGUID()); + Talk(ANACHRONOS_SAY_1, Fandral->GetGUID()); break; case 1: Fandral->SetTarget(me->GetGUID()); diff --git a/src/server/scripts/Kalimdor/zone_the_barrens.cpp b/src/server/scripts/Kalimdor/zone_the_barrens.cpp index 8f7ab09260b..b349de8f083 100644 --- a/src/server/scripts/Kalimdor/zone_the_barrens.cpp +++ b/src/server/scripts/Kalimdor/zone_the_barrens.cpp @@ -146,7 +146,7 @@ public: Talk(SAY_GIL_FREEBOOTERS, player->GetGUID()); break; case 37: - Talk(SAY_GIL_ALMOST,player->GetGUID()); + Talk(SAY_GIL_ALMOST, player->GetGUID()); break; case 47: Talk(SAY_GIL_SWEET, player->GetGUID()); diff --git a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp index 02245c92efd..d484e2a4279 100644 --- a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp +++ b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp @@ -89,11 +89,11 @@ public: { _EnterCombat(); - events.ScheduleEvent(EVENT_ROOT, urand(5,9)*IN_MILLISECONDS); - events.ScheduleEvent(EVENT_BASH, urand(10,14)*IN_MILLISECONDS); - events.ScheduleEvent(EVENT_BOLT, urand(15,20)*IN_MILLISECONDS); - events.ScheduleEvent(EVENT_MINI, urand(12,18)*IN_MILLISECONDS); - events.ScheduleEvent(EVENT_SPAWN, 5 *IN_MILLISECONDS); + events.ScheduleEvent(EVENT_ROOT, urand(5, 9) * IN_MILLISECONDS); + events.ScheduleEvent(EVENT_BASH, urand(10, 14) * IN_MILLISECONDS); + events.ScheduleEvent(EVENT_BOLT, urand(15, 20) * IN_MILLISECONDS); + events.ScheduleEvent(EVENT_MINI, urand(12, 18) * IN_MILLISECONDS); + events.ScheduleEvent(EVENT_SPAWN, 5 * IN_MILLISECONDS); me->SetInCombatWithZone(); if (instance) @@ -123,7 +123,7 @@ public: { u = 1 - u; trigger->DisappearAndDie(); - me->SummonCreature(u > 0 ? NPC_POISONOUS_MUSHROOM : NPC_HEALTHY_MUSHROOM, pos, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 60*IN_MILLISECONDS); + me->SummonCreature(u > 0 ? NPC_POISONOUS_MUSHROOM : NPC_HEALTHY_MUSHROOM, pos, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 60 * IN_MILLISECONDS); } } } @@ -145,23 +145,23 @@ public: { case EVENT_SPAWN: SpawnAdds(); - events.ScheduleEvent(EVENT_SPAWN, 20*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_SPAWN, 20 * IN_MILLISECONDS); break; case EVENT_MINI: DoCast(SPELL_MINI); - events.ScheduleEvent(EVENT_MINI, urand(25,30)*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_MINI, urand(25, 30) * IN_MILLISECONDS); break; case EVENT_ROOT: - DoCast(SelectTarget(SELECT_TARGET_RANDOM,0, 100, true),SPELL_ENTANGLING_ROOTS,true); - events.ScheduleEvent(EVENT_ROOT, urand(10,15)*IN_MILLISECONDS); + DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true), SPELL_ENTANGLING_ROOTS, true); + events.ScheduleEvent(EVENT_ROOT, urand(10, 15) * IN_MILLISECONDS); break; case EVENT_BASH: DoCastVictim(SPELL_BASH); - events.ScheduleEvent(EVENT_BASH, urand(7,12)*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_BASH, urand(7, 12) * IN_MILLISECONDS); break; case EVENT_BOLT: - DoCast(SelectTarget(SELECT_TARGET_RANDOM,0, 100, true),SPELL_VENOM_BOLT_VOLLEY,true); - events.ScheduleEvent(EVENT_BOLT, urand(18,22)*IN_MILLISECONDS); + DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true), SPELL_VENOM_BOLT_VOLLEY, true); + events.ScheduleEvent(EVENT_BOLT, urand(18, 22) * IN_MILLISECONDS); break; default: break; @@ -191,7 +191,7 @@ public: void Reset() { events.Reset(); - events.ScheduleEvent(EVENT_AURA, 1*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_AURA, 1 * IN_MILLISECONDS); me->SetDisplayId(me->GetCreatureTemplate()->Modelid2); DoCast(SPELL_PUTRID_MUSHROOM); @@ -231,7 +231,7 @@ public: DoCast(me, SPELL_POISONOUS_MUSHROOM_VISUAL_AREA, true); DoCast(me, SPELL_POISONOUS_MUSHROOM_POISON_CLOUD); } - events.ScheduleEvent(EVENT_AURA, 7*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_AURA, 7 * IN_MILLISECONDS); break; default: break; @@ -250,4 +250,4 @@ void AddSC_boss_amanitar() { new boss_amanitar(); new mob_amanitar_mushrooms(); -}
\ No newline at end of file +} diff --git a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_elder_nadox.cpp b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_elder_nadox.cpp index cd583603734..ac668c33874 100644 --- a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_elder_nadox.cpp +++ b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_elder_nadox.cpp @@ -94,13 +94,13 @@ class boss_elder_nadox : public CreatureScript if (instance) instance->SetData(DATA_ELDER_NADOX_EVENT, IN_PROGRESS); - events.ScheduleEvent(EVENT_PLAGUE, 13*IN_MILLISECONDS); - events.ScheduleEvent(EVENT_SUMMON_SWARMER, 10*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_PLAGUE, 13 * IN_MILLISECONDS); + events.ScheduleEvent(EVENT_SUMMON_SWARMER, 10 * IN_MILLISECONDS); if (IsHeroic()) { - events.ScheduleEvent(EVENT_RAGE, 12*IN_MILLISECONDS); - events.ScheduleEvent(EVENT_CHECK_ENRAGE, 5*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_RAGE, 12 * IN_MILLISECONDS); + events.ScheduleEvent(EVENT_CHECK_ENRAGE, 5 * IN_MILLISECONDS); } } @@ -151,25 +151,25 @@ class boss_elder_nadox : public CreatureScript switch (eventId) { case EVENT_PLAGUE: - DoCast(SelectTarget(SELECT_TARGET_RANDOM,0, 100, true),SPELL_BROOD_PLAGUE,true); - events.ScheduleEvent(EVENT_PLAGUE, 15*IN_MILLISECONDS); + DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true), SPELL_BROOD_PLAGUE, true); + events.ScheduleEvent(EVENT_PLAGUE, 15 * IN_MILLISECONDS); break; case EVENT_RAGE: DoCast(H_SPELL_BROOD_RAGE); - events.ScheduleEvent(EVENT_RAGE, urand(10*IN_MILLISECONDS, 50*IN_MILLISECONDS)); + events.ScheduleEvent(EVENT_RAGE, urand(10 * IN_MILLISECONDS, 50 * IN_MILLISECONDS)); break; case EVENT_SUMMON_SWARMER: DoCast(me, SPELL_SUMMON_SWARMERS); if (urand(1, 3) == 3) // 33% chance of dialog Talk(SAY_EGG_SAC); - events.ScheduleEvent(EVENT_SUMMON_SWARMER, 10*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_SUMMON_SWARMER, 10 * IN_MILLISECONDS); break; case EVENT_CHECK_ENRAGE: if (me->HasAura(SPELL_ENRAGE)) return; if (me->GetPositionZ() < 24.0f) DoCast(me, SPELL_ENRAGE, true); - events.ScheduleEvent(EVENT_CHECK_ENRAGE, 5*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_CHECK_ENRAGE, 5 * IN_MILLISECONDS); break; default: break; @@ -209,7 +209,7 @@ class mob_ahnkahar_nerubian : public CreatureScript if (me->GetEntry() == NPC_AHNKAHAR_GUARDIAN) DoCast(me, SPELL_GUARDIAN_AURA, true); - events.ScheduleEvent(EVENT_SPRINT, 13*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_SPRINT, 13 * IN_MILLISECONDS); } void JustDied(Unit* /*killer*/) @@ -234,7 +234,7 @@ class mob_ahnkahar_nerubian : public CreatureScript { case EVENT_SPRINT: DoCast(me, SPELL_SPRINT); - events.ScheduleEvent(EVENT_SPRINT, 20*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_SPRINT, 20 * IN_MILLISECONDS); break; } } diff --git a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_general_zarithrian.cpp b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_general_zarithrian.cpp index ab53351cd6b..94325ca015b 100644 --- a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_general_zarithrian.cpp +++ b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_general_zarithrian.cpp @@ -135,13 +135,18 @@ class boss_general_zarithrian : public CreatureScript Talk(SAY_KILL); } + bool CanAIAttack(Unit const* /*target*/) const + { + return (instance->GetBossState(DATA_SAVIANA_RAGEFIRE) == DONE && instance->GetBossState(DATA_BALTHARUS_THE_WARBORN) == DONE); + } + void UpdateAI(uint32 const diff) { if (!UpdateVictim()) return; // Can't use room boundary here, the gameobject is spawned at the same position as the boss. This is just as good anyway. - if (me->GetPositionX() > 3060.0f) + if (me->GetPositionX() > 3058.0f) { EnterEvadeMode(); return; @@ -159,9 +164,11 @@ class boss_general_zarithrian : public CreatureScript case EVENT_SUMMON_ADDS: { if (Creature* stalker1 = ObjectAccessor::GetCreature(*me, instance->GetData64(DATA_ZARITHRIAN_SPAWN_STALKER_1))) - stalker1->AI()->DoCast(stalker1, SPELL_SUMMON_FLAMECALLER); + stalker1->CastSpell(stalker1, SPELL_SUMMON_FLAMECALLER, false); + if (Creature* stalker2 = ObjectAccessor::GetCreature(*me, instance->GetData64(DATA_ZARITHRIAN_SPAWN_STALKER_2))) - stalker2->AI()->DoCast(stalker2, SPELL_SUMMON_FLAMECALLER); + stalker2->CastSpell(stalker2, SPELL_SUMMON_FLAMECALLER, false); + Talk(SAY_ADDS); events.ScheduleEvent(EVENT_SUMMON_ADDS, 42000); break; @@ -195,9 +202,8 @@ class npc_onyx_flamecaller : public CreatureScript struct npc_onyx_flamecallerAI : public npc_escortAI { - npc_onyx_flamecallerAI(Creature* creature) : npc_escortAI(creature) + npc_onyx_flamecallerAI(Creature* creature) : npc_escortAI(creature), _instance(creature->GetInstanceScript()) { - _instance = creature->GetInstanceScript(); npc_escortAI::SetDespawnAtEnd(false); } @@ -289,7 +295,6 @@ class npc_onyx_flamecaller : public CreatureScript } private: EventMap _events; - bool _movementComplete; InstanceScript* _instance; uint8 _lavaGoutCount; }; diff --git a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp index 781dd86cb86..7f8108e5e71 100644 --- a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp +++ b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp @@ -226,9 +226,9 @@ struct generic_halionAI : public BossAI { generic_halionAI(Creature* creature, uint32 bossId) : BossAI(creature, bossId), _canEvade(false) { } - void EnterCombat(Unit* who) + void EnterCombat(Unit* /*who*/) { - BossAI::EnterCombat(who); + _EnterCombat(); me->AddAura(SPELL_TWILIGHT_PRECISION, me); _canEvade = false; events.ScheduleEvent(EVENT_CLEAVE, urand(8000, 10000)); @@ -239,13 +239,13 @@ struct generic_halionAI : public BossAI void Reset() { _canEvade = false; - BossAI::Reset(); + _Reset(); } - void EnterEvadeMode() + void JustReachedHome() { - BossAI::EnterEvadeMode(); instance->SendEncounterUnit(ENCOUNTER_FRAME_DISENGAGE, me); + _JustReachedHome(); } void ExecuteEvent(uint32 const eventId) @@ -349,15 +349,20 @@ class boss_halion : public CreatureScript controller->AI()->SetData(DATA_FIGHT_PHASE, PHASE_ONE); } - void JustDied(Unit* killer) + void JustDied(Unit* /*killer*/) { - BossAI::JustDied(killer); + _JustDied(); Talk(SAY_DEATH); instance->SendEncounterUnit(ENCOUNTER_FRAME_DISENGAGE, me); + if (Creature* twilightHalion = ObjectAccessor::GetCreature(*me, instance->GetData64(DATA_TWILIGHT_HALION))) + if (twilightHalion->isAlive()) + twilightHalion->Kill(twilightHalion); + if (Creature* controller = ObjectAccessor::GetCreature(*me, instance->GetData64(DATA_HALION_CONTROLLER))) - me->Kill(controller); + if (controller->isAlive()) + controller->Kill(controller); } Position const* GetMeteorStrikePosition() const { return &_meteorStrikePos; } @@ -515,7 +520,8 @@ class boss_twilight_halion : public CreatureScript } if (Creature* controller = ObjectAccessor::GetCreature(*me, instance->GetData64(DATA_HALION_CONTROLLER))) - controller->Kill(controller); + if (controller->isAlive()) + controller->Kill(controller); instance->SendEncounterUnit(ENCOUNTER_FRAME_DISENGAGE, me); } @@ -592,7 +598,6 @@ class npc_halion_controller : public CreatureScript _instance(creature->GetInstanceScript()), _summons(me) { me->SetPhaseMask(me->GetPhaseMask() | 0x20, true); - _events.SetPhase(PHASE_INTRO); } void Reset() diff --git a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/instance_ruby_sanctum.cpp b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/instance_ruby_sanctum.cpp index c373c2340ff..abfa2df5c97 100644 --- a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/instance_ruby_sanctum.cpp +++ b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/instance_ruby_sanctum.cpp @@ -60,8 +60,11 @@ class instance_ruby_sanctum : public InstanceMapScript void OnPlayerEnter(Player* /*player*/) { if (!GetData64(DATA_HALION_CONTROLLER) && GetBossState(DATA_HALION) != DONE && GetBossState(DATA_GENERAL_ZARITHRIAN) == DONE) + { + instance->LoadGrid(HalionControllerSpawnPos.GetPositionX(), HalionControllerSpawnPos.GetPositionY()); if (Creature* halionController = instance->SummonCreature(NPC_HALION_CONTROLLER, HalionControllerSpawnPos)) halionController->AI()->DoAction(ACTION_INTRO_HALION); + } } void OnCreatureCreate(Creature* creature) @@ -164,6 +167,20 @@ class instance_ruby_sanctum : public InstanceMapScript } } + void OnUnitDeath(Unit* unit) + { + Creature* creature = unit->ToCreature(); + if (!creature) + return; + + if (creature->GetEntry() == NPC_GENERAL_ZARITHRIAN && GetBossState(DATA_HALION) != DONE) + { + instance->LoadGrid(HalionControllerSpawnPos.GetPositionX(), HalionControllerSpawnPos.GetPositionY()); + if (Creature* halionController = instance->SummonCreature(NPC_HALION_CONTROLLER, HalionControllerSpawnPos)) + halionController->AI()->DoAction(ACTION_INTRO_HALION); + } + } + uint64 GetData64(uint32 type) const { switch (type) @@ -238,11 +255,6 @@ class instance_ruby_sanctum : public InstanceMapScript { if (GetBossState(DATA_SAVIANA_RAGEFIRE) == DONE && GetBossState(DATA_BALTHARUS_THE_WARBORN) == DONE) HandleGameObject(FlameWallsGUID, state != IN_PROGRESS); - - // Not called at instance loading, no big deal. - if (state == DONE && GetBossState(DATA_HALION) != DONE) - if (Creature* halionController = instance->SummonCreature(NPC_HALION_CONTROLLER, HalionControllerSpawnPos)) - halionController->AI()->DoAction(ACTION_INTRO_HALION); break; } case DATA_HALION: 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 ac520968db8..82cff5ff01f 100644 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_lord_jaraxxus.cpp +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_lord_jaraxxus.cpp @@ -182,7 +182,7 @@ class boss_jaraxxus : public CreatureScript events.ScheduleEvent(EVENT_INCINERATE_FLESH, urand(20*IN_MILLISECONDS, 25*IN_MILLISECONDS)); return; case EVENT_NETHER_POWER: - me->CastCustomSpell(SPELL_NETHER_POWER, SPELLVALUE_AURA_STACK, RAID_MODE<uint32>(5, 10, 5,10), me, true); + me->CastCustomSpell(SPELL_NETHER_POWER, SPELLVALUE_AURA_STACK, RAID_MODE<uint32>(5, 10, 5, 10), me, true); events.ScheduleEvent(EVENT_NETHER_POWER, 40*IN_MILLISECONDS); return; case EVENT_LEGION_FLAME: 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 70fe03c5e0f..f42c985d3e5 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 @@ -136,8 +136,8 @@ const Position AnubarakLoc[]= const Position EndSpawnLoc[]= { {648.9167f, 131.0208f, 141.6161f, 0}, // 0 - Highlord Tirion Fordring - {649.1614f, 142.0399f, 141.3057f ,0}, // 1 - Argent Mage - {644.6250f, 149.2743f, 140.6015f ,0} // 2 - Portal to Dalaran + {649.1614f, 142.0399f, 141.3057f, 0}, // 1 - Argent Mage + {644.6250f, 149.2743f, 140.6015f, 0} // 2 - Portal to Dalaran }; enum euiWorldStates diff --git a/src/server/scripts/Northrend/FrozenHalls/ForgeOfSouls/boss_devourer_of_souls.cpp b/src/server/scripts/Northrend/FrozenHalls/ForgeOfSouls/boss_devourer_of_souls.cpp index caf38fd2418..b3781f89e06 100644 --- a/src/server/scripts/Northrend/FrozenHalls/ForgeOfSouls/boss_devourer_of_souls.cpp +++ b/src/server/scripts/Northrend/FrozenHalls/ForgeOfSouls/boss_devourer_of_souls.cpp @@ -109,7 +109,7 @@ struct outroPosition { { 0, 0 }, { 0.0f, 0.0f, 0.0f, 0.0f } } }; -Position const CrucibleSummonPos = {5672.294f,2520.686f, 713.4386f, 0.9599311f}; +Position const CrucibleSummonPos = {5672.294f, 2520.686f, 713.4386f, 0.9599311f}; #define DATA_THREE_FACED 1 diff --git a/src/server/scripts/Northrend/Gundrak/boss_slad_ran.cpp b/src/server/scripts/Northrend/Gundrak/boss_slad_ran.cpp index 4acabc3b2b3..1b5f6e5d426 100644 --- a/src/server/scripts/Northrend/Gundrak/boss_slad_ran.cpp +++ b/src/server/scripts/Northrend/Gundrak/boss_slad_ran.cpp @@ -251,7 +251,7 @@ public: if (TempSummon* _me = me->ToTempSummon()) if (Creature* sladran = _me->GetSummoner()->ToCreature()) - sladran->AI()->SetGUID(target->GetGUID() ,DATA_SNAKES_WHYD_IT_HAVE_TO_BE_SNAKES); + sladran->AI()->SetGUID(target->GetGUID(), DATA_SNAKES_WHYD_IT_HAVE_TO_BE_SNAKES); me->DespawnOrUnsummon(); } diff --git a/src/server/scripts/Northrend/Naxxramas/boss_kelthuzad.cpp b/src/server/scripts/Northrend/Naxxramas/boss_kelthuzad.cpp index 35f703e0563..1b34e2a93a7 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_kelthuzad.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_kelthuzad.cpp @@ -603,7 +603,7 @@ public: ThreatContainer::StorageType const &threatList = me->getThreatManager().getThreatList(); for (ThreatContainer::StorageType::const_iterator itr = threatList.begin(); itr != threatList.end(); ++itr) { - Unit * const target = (*itr)->getTarget(); + Unit* const target = (*itr)->getTarget(); if (target->GetTypeId() == TYPEID_PLAYER && target->getPowerType() == POWER_MANA diff --git a/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp b/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp index 952363c6dcf..1be93dcbaa5 100644 --- a/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp +++ b/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp @@ -167,7 +167,7 @@ enum Texts #define MAX_HOVER_DISK_WAYPOINTS 18 -// Sniffed data (x, y,z) +// Sniffed data (x, y, z) const Position HoverDiskWaypoints[MAX_HOVER_DISK_WAYPOINTS] = { {782.9821f, 1296.652f, 282.1114f, 0.0f}, @@ -192,7 +192,7 @@ const Position HoverDiskWaypoints[MAX_HOVER_DISK_WAYPOINTS] = #define GROUND_Z 268 -// Source: Sniffs (x,y,z) +// Source: Sniffs (x, y, z) #define MALYGOS_MAX_WAYPOINTS 16 const Position MalygosPhaseTwoWaypoints[MALYGOS_MAX_WAYPOINTS] = { diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp index 7934f6fba72..d3c174841ee 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp @@ -787,7 +787,7 @@ class instance_ulduar : public InstanceMapScript return 0; } - bool CheckAchievementCriteriaMeet(uint32 criteriaId, Player const* , Unit const* /* = NULL */, uint32 /* = 0 */) + bool CheckAchievementCriteriaMeet(uint32 criteriaId, Player const*, Unit const* /* = NULL */, uint32 /* = 0 */) { switch (criteriaId) { diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_ingvar_the_plunderer.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_ingvar_the_plunderer.cpp index 1fd84b6f6ce..f579fb2b93c 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_ingvar_the_plunderer.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_ingvar_the_plunderer.cpp @@ -124,10 +124,10 @@ public: events.Reset(); events.SetPhase(PHASE_HUMAN); - events.ScheduleEvent(EVENT_CLEAVE, urand(6,12)*IN_MILLISECONDS, 0, PHASE_HUMAN); - events.ScheduleEvent(EVENT_STAGGERING_ROAR, urand(18,21)*IN_MILLISECONDS, 0, PHASE_HUMAN); - events.ScheduleEvent(EVENT_ENRAGE, urand(7,14)*IN_MILLISECONDS, 0, PHASE_HUMAN); - events.ScheduleEvent(EVENT_SMASH, urand(12,17)*IN_MILLISECONDS, 0, PHASE_HUMAN); + events.ScheduleEvent(EVENT_CLEAVE, urand(6, 12)*IN_MILLISECONDS, 0, PHASE_HUMAN); + events.ScheduleEvent(EVENT_STAGGERING_ROAR, urand(18, 21)*IN_MILLISECONDS, 0, PHASE_HUMAN); + events.ScheduleEvent(EVENT_ENRAGE, urand(7, 14)*IN_MILLISECONDS, 0, PHASE_HUMAN); + events.ScheduleEvent(EVENT_SMASH, urand(12, 17)*IN_MILLISECONDS, 0, PHASE_HUMAN); if (instance) instance->SetData(DATA_INGVAR_EVENT, NOT_STARTED); @@ -193,9 +193,9 @@ public: void ScheduleSecondPhase() { events.SetPhase(PHASE_UNDEAD); - events.ScheduleEvent(EVENT_DARK_SMASH, urand(14,18)*IN_MILLISECONDS, 0, PHASE_UNDEAD); - events.ScheduleEvent(EVENT_DREADFUL_ROAR, urand(18,22)*IN_MILLISECONDS, 0, PHASE_UNDEAD); - events.ScheduleEvent(EVENT_WOE_STRIKE, urand(10,14)*IN_MILLISECONDS, 0, PHASE_UNDEAD); + events.ScheduleEvent(EVENT_DARK_SMASH, urand(14, 18)*IN_MILLISECONDS, 0, PHASE_UNDEAD); + events.ScheduleEvent(EVENT_DREADFUL_ROAR, urand(18, 22)*IN_MILLISECONDS, 0, PHASE_UNDEAD); + events.ScheduleEvent(EVENT_WOE_STRIKE, urand(10, 14)*IN_MILLISECONDS, 0, PHASE_UNDEAD); events.ScheduleEvent(EVENT_SHADOW_AXE, 30*IN_MILLISECONDS, 0, PHASE_UNDEAD); } @@ -221,19 +221,19 @@ public: // PHASE ONE case EVENT_CLEAVE: DoCastVictim(SPELL_CLEAVE); - events.ScheduleEvent(EVENT_CLEAVE, urand(6,12)*IN_MILLISECONDS, 0, PHASE_HUMAN); + events.ScheduleEvent(EVENT_CLEAVE, urand(6, 12)*IN_MILLISECONDS, 0, PHASE_HUMAN); break; case EVENT_STAGGERING_ROAR: DoCast(me, SPELL_STAGGERING_ROAR); - events.ScheduleEvent(EVENT_STAGGERING_ROAR, urand(18,22)*IN_MILLISECONDS, 0, PHASE_HUMAN); + events.ScheduleEvent(EVENT_STAGGERING_ROAR, urand(18, 22)*IN_MILLISECONDS, 0, PHASE_HUMAN); break; case EVENT_ENRAGE: DoCast(me, SPELL_ENRAGE); - events.ScheduleEvent(EVENT_ENRAGE, urand(7,14)*IN_MILLISECONDS, 0, PHASE_HUMAN); + events.ScheduleEvent(EVENT_ENRAGE, urand(7, 14)*IN_MILLISECONDS, 0, PHASE_HUMAN); break; case EVENT_SMASH: DoCastAOE(SPELL_SMASH); - events.ScheduleEvent(EVENT_SMASH, urand(12,16)*IN_MILLISECONDS, 0, PHASE_HUMAN); + events.ScheduleEvent(EVENT_SMASH, urand(12, 16)*IN_MILLISECONDS, 0, PHASE_HUMAN); break; case EVENT_JUST_TRANSFORMED: me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); @@ -247,15 +247,15 @@ public: // PHASE TWO case EVENT_DARK_SMASH: DoCastVictim(SPELL_DARK_SMASH); - events.ScheduleEvent(EVENT_DARK_SMASH, urand(12,16)*IN_MILLISECONDS, 0, PHASE_UNDEAD); + events.ScheduleEvent(EVENT_DARK_SMASH, urand(12, 16)*IN_MILLISECONDS, 0, PHASE_UNDEAD); break; case EVENT_DREADFUL_ROAR: DoCast(me, SPELL_DREADFUL_ROAR); - events.ScheduleEvent(EVENT_DREADFUL_ROAR, urand(18,22)*IN_MILLISECONDS, 0, PHASE_UNDEAD); + events.ScheduleEvent(EVENT_DREADFUL_ROAR, urand(18, 22)*IN_MILLISECONDS, 0, PHASE_UNDEAD); break; case EVENT_WOE_STRIKE: DoCastVictim(SPELL_WOE_STRIKE); - events.ScheduleEvent(EVENT_WOE_STRIKE, urand(10,14)*IN_MILLISECONDS, 0, PHASE_UNDEAD); + events.ScheduleEvent(EVENT_WOE_STRIKE, urand(10, 14)*IN_MILLISECONDS, 0, PHASE_UNDEAD); break; case EVENT_SHADOW_AXE: if (Unit* target = SelectTarget(SELECT_TARGET_TOPAGGRO, 1)) diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_keleseth.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_keleseth.cpp index d709182bf04..6e532a88396 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_keleseth.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_keleseth.cpp @@ -129,8 +129,8 @@ public: instance->SetData(DATA_PRINCEKELESETH_EVENT, NOT_STARTED); events.Reset(); - events.ScheduleEvent(EVENT_SHADOWBOLT, urand(2,3)*IN_MILLISECONDS); - events.ScheduleEvent(EVENT_FROST_TOMB, urand(14,19)*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_SHADOWBOLT, urand(2, 3)*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_FROST_TOMB, urand(14, 19)*IN_MILLISECONDS); events.ScheduleEvent(EVENT_SUMMON_SKELETONS, 6*IN_MILLISECONDS); summons.DespawnAll(); @@ -213,7 +213,7 @@ public: break; case EVENT_SHADOWBOLT: DoCastVictim(SPELL_SHADOWBOLT); - events.ScheduleEvent(EVENT_SHADOWBOLT, urand(2,3)*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_SHADOWBOLT, urand(2, 3)*IN_MILLISECONDS); break; case EVENT_FROST_TOMB: if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true, -SPELL_FROST_TOMB)) @@ -225,7 +225,7 @@ public: // checked from sniffs - the player casts the spell target->CastSpell(target, SPELL_FROST_TOMB_SUMMON, true); } - events.ScheduleEvent(EVENT_FROST_TOMB, urand(14,19)*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_FROST_TOMB, urand(14, 19)*IN_MILLISECONDS); break; } } @@ -261,7 +261,7 @@ public: void Reset() { events.Reset(); - events.ScheduleEvent(EVENT_DECREPIFY, urand(4,6)*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_DECREPIFY, urand(4, 6)*IN_MILLISECONDS); } @@ -280,7 +280,7 @@ public: me->SetFlag(UNIT_FIELD_BYTES_1, UNIT_STAND_STATE_DEAD); events.Reset(); - events.ScheduleEvent(EVENT_RESURRECT, urand(18,22)*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_RESURRECT, urand(18, 22)*IN_MILLISECONDS); me->GetMotionMaster()->MovementExpired(false); me->GetMotionMaster()->MoveIdle(); @@ -304,7 +304,7 @@ public: { case EVENT_DECREPIFY: DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 0.0f, true, -SPELL_DECREPIFY), SPELL_DECREPIFY); - events.ScheduleEvent(EVENT_DECREPIFY, urand(1,5)*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_DECREPIFY, urand(1, 5)*IN_MILLISECONDS); break; case EVENT_RESURRECT: events.ScheduleEvent(EVENT_FULL_HEAL, 1*IN_MILLISECONDS); @@ -325,7 +325,7 @@ public: me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); me->RemoveFlag(UNIT_FIELD_BYTES_1, UNIT_STAND_STATE_DEAD); me->GetMotionMaster()->MoveChase(me->getVictim()); - events.ScheduleEvent(EVENT_DECREPIFY, urand(4,6)*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_DECREPIFY, urand(4, 6)*IN_MILLISECONDS); break; } } diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_svala.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_svala.cpp index 9468a111db5..dffdadc5b9c 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_svala.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_svala.cpp @@ -101,8 +101,8 @@ enum SvalaPhase static const float spectatorWP[2][3] = { - {296.95f,-312.76f,86.36f}, - {297.69f,-275.81f,86.36f} + {296.95f, -312.76f, 86.36f}, + {297.69f, -275.81f, 86.36f} }; static Position ArthasPos = { 295.81f, -366.16f, 92.57f, 1.58f }; @@ -517,7 +517,7 @@ public: if (motionType == POINT_MOTION_TYPE) { if (pointId == 1) - me->GetMotionMaster()->MovePoint(2,spectatorWP[1][0],spectatorWP[1][1],spectatorWP[1][2]); + me->GetMotionMaster()->MovePoint(2, spectatorWP[1][0], spectatorWP[1][1], spectatorWP[1][2]); else if (pointId == 2) me->DespawnOrUnsummon(1000); } diff --git a/src/server/scripts/Northrend/zone_icecrown.cpp b/src/server/scripts/Northrend/zone_icecrown.cpp index 2ec5a3e8164..098fa80a3d3 100644 --- a/src/server/scripts/Northrend/zone_icecrown.cpp +++ b/src/server/scripts/Northrend/zone_icecrown.cpp @@ -586,7 +586,7 @@ public: struct npc_blessed_bannerAI : public Scripted_NoMovementAI { - npc_blessed_bannerAI(Creature* creature) : Scripted_NoMovementAI(creature) , Summons(me) + npc_blessed_bannerAI(Creature* creature) : Scripted_NoMovementAI(creature), Summons(me) { HalofSpawned = false; PhaseCount = 0; @@ -611,7 +611,7 @@ public: me->setRegeneratingHealth(false); DoCast(SPELL_THREAT_PULSE); me->AI()->Talk(BANNER_SAY); - events.ScheduleEvent(EVENT_SPAWN,3000); + events.ScheduleEvent(EVENT_SPAWN, 3000); } void EnterCombat(Unit* /*who*/) {} @@ -672,167 +672,167 @@ public: guidMason[2] = Mason3->GetGUID(); Mason3->GetMotionMaster()->MovePoint(0, Mason3Pos[1]); } - events.ScheduleEvent(EVENT_INTRO_1,15000); + events.ScheduleEvent(EVENT_INTRO_1, 15000); } break; case EVENT_INTRO_1: { - if (Creature* Dalfors = me->GetCreature(*me,guidDalfors)) + if (Creature* Dalfors = me->GetCreature(*me, guidDalfors)) Dalfors->AI()->Talk(DALFORS_SAY_PRE_1); - events.ScheduleEvent(EVENT_INTRO_2,5000); + events.ScheduleEvent(EVENT_INTRO_2, 5000); } break; case EVENT_INTRO_2: { - if (Creature* Dalfors = me->GetCreature(*me,guidDalfors)) + if (Creature* Dalfors = me->GetCreature(*me, guidDalfors)) { Dalfors->SetFacingTo(6.215f); Dalfors->AI()->Talk(DALFORS_SAY_PRE_2); } - events.ScheduleEvent(EVENT_INTRO_3,5000); + events.ScheduleEvent(EVENT_INTRO_3, 5000); } break; case EVENT_INTRO_3: { - if (Creature* Dalfors = me->GetCreature(*me,guidDalfors)) + if (Creature* Dalfors = me->GetCreature(*me, guidDalfors)) { Dalfors->GetMotionMaster()->MovePoint(0, DalforsPos[2]); Dalfors->SetHomePosition(DalforsPos[2]); } - if (Creature* Priest1 = me->GetCreature(*me,guidPriest[0])) + if (Creature* Priest1 = me->GetCreature(*me, guidPriest[0])) { Priest1->SetFacingTo(5.7421f); Priest1->SetHomePosition(Priest1Pos[1]); } - if (Creature* Priest2 = me->GetCreature(*me,guidPriest[1])) + if (Creature* Priest2 = me->GetCreature(*me, guidPriest[1])) { Priest2->SetFacingTo(5.7421f); Priest2->SetHomePosition(Priest2Pos[1]); } - if (Creature* Priest3 = me->GetCreature(*me,guidPriest[2])) + if (Creature* Priest3 = me->GetCreature(*me, guidPriest[2])) { Priest3->SetFacingTo(5.7421f); Priest3->SetHomePosition(Priest3Pos[1]); } - if (Creature* Mason1 = me->GetCreature(*me,guidMason[0])) + if (Creature* Mason1 = me->GetCreature(*me, guidMason[0])) { Mason1->GetMotionMaster()->MovePoint(0, Mason1Pos[2]); Mason1->SetHomePosition(Mason1Pos[2]); } - if (Creature* Mason2 = me->GetCreature(*me,guidMason[1])) + if (Creature* Mason2 = me->GetCreature(*me, guidMason[1])) { Mason2->GetMotionMaster()->MovePoint(0, Mason2Pos[2]); Mason2->SetHomePosition(Mason2Pos[2]); } - if (Creature* Mason3 = me->GetCreature(*me,guidMason[2])) + if (Creature* Mason3 = me->GetCreature(*me, guidMason[2])) { Mason3->GetMotionMaster()->MovePoint(0, Mason3Pos[2]); Mason3->SetHomePosition(Mason3Pos[2]); } - events.ScheduleEvent(EVENT_START_FIGHT,5000); - events.ScheduleEvent(EVENT_MASON_ACTION,15000); + events.ScheduleEvent(EVENT_START_FIGHT, 5000); + events.ScheduleEvent(EVENT_MASON_ACTION, 15000); } break; case EVENT_MASON_ACTION: { - if (Creature* Mason1 = me->GetCreature(*me,guidMason[0])) + if (Creature* Mason1 = me->GetCreature(*me, guidMason[0])) { Mason1->SetFacingTo(2.8972f); - Mason1->AI()->SetData(1,1); // triggers SAI actions on npc + Mason1->AI()->SetData(1, 1); // triggers SAI actions on npc } - if (Creature* Mason2 = me->GetCreature(*me,guidMason[1])) + if (Creature* Mason2 = me->GetCreature(*me, guidMason[1])) { Mason2->SetFacingTo(3.1241f); - Mason2->AI()->SetData(1,1); // triggers SAI actions on npc + Mason2->AI()->SetData(1, 1); // triggers SAI actions on npc } - if (Creature* Mason3 = me->GetCreature(*me,guidMason[2])) + if (Creature* Mason3 = me->GetCreature(*me, guidMason[2])) { Mason3->SetFacingTo(3.6651f); - Mason3->AI()->SetData(1,1); // triggers SAI actions on npc + Mason3->AI()->SetData(1, 1); // triggers SAI actions on npc } } break; case EVENT_START_FIGHT: { - if(Creature* LK = GetClosestCreatureWithEntry(me,NPC_LK,100)) + if (Creature* LK = GetClosestCreatureWithEntry(me, NPC_LK, 100)) LK->AI()->Talk(LK_TALK_1); - if (Creature* Dalfors = me->GetCreature(*me,guidDalfors)) + if (Creature* Dalfors = me->GetCreature(*me, guidDalfors)) Dalfors->AI()->Talk(DALFORS_SAY_START); - events.ScheduleEvent(EVENT_WAVE_SPAWN,1000); + events.ScheduleEvent(EVENT_WAVE_SPAWN, 1000); } break; case EVENT_WAVE_SPAWN: { if (PhaseCount == 3) { - if (Creature* LK = GetClosestCreatureWithEntry(me,NPC_LK,100)) + if (Creature* LK = GetClosestCreatureWithEntry(me, NPC_LK, 100)) LK->AI()->Talk(LK_TALK_2); } else if (PhaseCount == 6) { - if (Creature* LK = GetClosestCreatureWithEntry(me,NPC_LK,100)) + if (Creature* LK = GetClosestCreatureWithEntry(me, NPC_LK, 100)) LK->AI()->Talk(LK_TALK_3); } - if (Creature* tempsum = DoSummon(NPC_SCOURGE_DRUDGE,Mason3Pos[0])) + if (Creature* tempsum = DoSummon(NPC_SCOURGE_DRUDGE, Mason3Pos[0])) { tempsum->SetHomePosition(DalforsPos[2]); - tempsum->AI()->AttackStart(GetClosestCreatureWithEntry(me,NPC_BLESSED_BANNER,100)); + tempsum->AI()->AttackStart(GetClosestCreatureWithEntry(me, NPC_BLESSED_BANNER, 100)); } - if (urand(0,1) == 0) + if (urand(0, 1) == 0) { - if (Creature* tempsum = DoSummon(NPC_HIDEOUS_PLAGEBRINGER,Mason1Pos[0])) + if (Creature* tempsum = DoSummon(NPC_HIDEOUS_PLAGEBRINGER, Mason1Pos[0])) { tempsum->SetHomePosition(DalforsPos[2]); - tempsum->AI()->AttackStart(GetClosestCreatureWithEntry(me,NPC_BLESSED_BANNER,100)); + tempsum->AI()->AttackStart(GetClosestCreatureWithEntry(me, NPC_BLESSED_BANNER, 100)); } - if (Creature* tempsum = DoSummon(NPC_HIDEOUS_PLAGEBRINGER,Mason2Pos[0])) + if (Creature* tempsum = DoSummon(NPC_HIDEOUS_PLAGEBRINGER, Mason2Pos[0])) { tempsum->SetHomePosition(DalforsPos[2]); - tempsum->AI()->AttackStart(GetClosestCreatureWithEntry(me,NPC_BLESSED_BANNER,100)); + tempsum->AI()->AttackStart(GetClosestCreatureWithEntry(me, NPC_BLESSED_BANNER, 100)); } } else { - if (Creature* tempsum = DoSummon(NPC_REANIMATED_CAPTAIN,Mason1Pos[0])) + if (Creature* tempsum = DoSummon(NPC_REANIMATED_CAPTAIN, Mason1Pos[0])) { tempsum->SetHomePosition(DalforsPos[2]); - tempsum->AI()->AttackStart(GetClosestCreatureWithEntry(me,NPC_BLESSED_BANNER,100)); + tempsum->AI()->AttackStart(GetClosestCreatureWithEntry(me, NPC_BLESSED_BANNER, 100)); } - if (Creature* tempsum = DoSummon(NPC_REANIMATED_CAPTAIN,Mason2Pos[0])) + if (Creature* tempsum = DoSummon(NPC_REANIMATED_CAPTAIN, Mason2Pos[0])) { tempsum->SetHomePosition(DalforsPos[2]); - tempsum->AI()->AttackStart(GetClosestCreatureWithEntry(me,NPC_BLESSED_BANNER,100)); + tempsum->AI()->AttackStart(GetClosestCreatureWithEntry(me, NPC_BLESSED_BANNER, 100)); } } PhaseCount++; if (PhaseCount < 8) - events.ScheduleEvent(EVENT_WAVE_SPAWN,urand(10000,20000)); + events.ScheduleEvent(EVENT_WAVE_SPAWN, urand(10000, 20000)); else - events.ScheduleEvent(EVENT_HALOF,urand(10000,20000)); + events.ScheduleEvent(EVENT_HALOF, urand(10000, 20000)); } break; case EVENT_HALOF: { - if (Creature* LK = GetClosestCreatureWithEntry(me,NPC_LK,100)) + if (Creature* LK = GetClosestCreatureWithEntry(me, NPC_LK, 100)) LK->AI()->Talk(LK_TALK_4); - if (Creature* tempsum = DoSummon(NPC_SCOURGE_DRUDGE,Mason1Pos[0])) + if (Creature* tempsum = DoSummon(NPC_SCOURGE_DRUDGE, Mason1Pos[0])) { tempsum->SetHomePosition(DalforsPos[2]); - tempsum->AI()->AttackStart(GetClosestCreatureWithEntry(me,NPC_BLESSED_BANNER,100)); + tempsum->AI()->AttackStart(GetClosestCreatureWithEntry(me, NPC_BLESSED_BANNER, 100)); } - if (Creature* tempsum = DoSummon(NPC_SCOURGE_DRUDGE,Mason2Pos[0])) + if (Creature* tempsum = DoSummon(NPC_SCOURGE_DRUDGE, Mason2Pos[0])) { tempsum->SetHomePosition(DalforsPos[2]); - tempsum->AI()->AttackStart(GetClosestCreatureWithEntry(me,NPC_BLESSED_BANNER,100)); + tempsum->AI()->AttackStart(GetClosestCreatureWithEntry(me, NPC_BLESSED_BANNER, 100)); } - if (Creature* tempsum = DoSummon(NPC_HALOF_THE_DEATHBRINGER,DalforsPos[0])) + if (Creature* tempsum = DoSummon(NPC_HALOF_THE_DEATHBRINGER, DalforsPos[0])) { HalofSpawned = true; guidHalof = tempsum->GetGUID(); tempsum->SetHomePosition(DalforsPos[2]); - tempsum->AI()->AttackStart(GetClosestCreatureWithEntry(me,NPC_BLESSED_BANNER,100)); + tempsum->AI()->AttackStart(GetClosestCreatureWithEntry(me, NPC_BLESSED_BANNER, 100)); } } break; @@ -845,17 +845,17 @@ public: } if (PhaseCount == 8) - if (Creature* Halof = me->GetCreature(*me,guidHalof)) + if (Creature* Halof = me->GetCreature(*me, guidHalof)) if (Halof->isDead()) { - DoCast(me,SPELL_CRUSADERS_SPIRE_VICTORY,true); + DoCast(me, SPELL_CRUSADERS_SPIRE_VICTORY, true); Summons.DespawnEntry(NPC_HIDEOUS_PLAGEBRINGER); Summons.DespawnEntry(NPC_REANIMATED_CAPTAIN); Summons.DespawnEntry(NPC_SCOURGE_DRUDGE); Summons.DespawnEntry(NPC_HALOF_THE_DEATHBRINGER); - if (Creature* Dalfors = me->GetCreature(*me,guidDalfors)) + if (Creature* Dalfors = me->GetCreature(*me, guidDalfors)) Dalfors->AI()->Talk(DALFORS_YELL_FINISHED); - events.ScheduleEvent(EVENT_ENDED,10000); + events.ScheduleEvent(EVENT_ENDED, 10000); } } }; diff --git a/src/server/scripts/Northrend/zone_sholazar_basin.cpp b/src/server/scripts/Northrend/zone_sholazar_basin.cpp index 2aa355084a1..f3afc03e68a 100644 --- a/src/server/scripts/Northrend/zone_sholazar_basin.cpp +++ b/src/server/scripts/Northrend/zone_sholazar_basin.cpp @@ -540,13 +540,13 @@ public: Player* player = Player::GetPlayer(*me, playerGUID); Creature* orphan = Creature::GetCreature(*me, orphanGUID); - if(!orphan || !player) + if (!orphan || !player) { Reset(); return; } - switch(phase) + switch (phase) { case 1: orphan->GetMotionMaster()->MovePoint(0, me->GetPositionX() + cos(me->GetOrientation()) * 5, me->GetPositionY() + sin(me->GetOrientation()) * 5, me->GetPositionZ()); diff --git a/src/server/scripts/Northrend/zone_storm_peaks.cpp b/src/server/scripts/Northrend/zone_storm_peaks.cpp index 85ab1dc1127..dae2ffd36f6 100644 --- a/src/server/scripts/Northrend/zone_storm_peaks.cpp +++ b/src/server/scripts/Northrend/zone_storm_peaks.cpp @@ -423,7 +423,7 @@ public: Unit* player = me->GetVehicleKit()->GetPassenger(0); if (player && player->GetTypeId() == TYPEID_PLAYER) { - // for each prisoner on drake,give credit + // for each prisoner on drake, give credit for (uint8 i = 1; i < 4; ++i) if (Unit* prisoner = me->GetVehicleKit()->GetPassenger(i)) { diff --git a/src/server/scripts/Northrend/zone_wintergrasp.cpp b/src/server/scripts/Northrend/zone_wintergrasp.cpp index 8935c77b30e..8c255d49d25 100644 --- a/src/server/scripts/Northrend/zone_wintergrasp.cpp +++ b/src/server/scripts/Northrend/zone_wintergrasp.cpp @@ -271,7 +271,7 @@ class npc_wg_queue : public CreatureScript return true; } - bool OnGossipSelect(Player* player, Creature* /*creature*/ , uint32 /*sender*/ , uint32 /*action*/) + bool OnGossipSelect(Player* player, Creature* /*creature*/, uint32 /*sender*/, uint32 /*action*/) { player->CLOSE_GOSSIP_MENU(); diff --git a/src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp b/src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp index 11569c30f1e..ec85d675225 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp @@ -45,7 +45,7 @@ enum MotherShahraz SPELL_ATTRACTION = 40871, SPELL_SILENCING_SHRIEK = 40823, SPELL_ENRAGE = 23537, - SPELL_SABER_LASH = 40810,//43267 + SPELL_SABER_LASH = 40810, //43267 SPELL_SABER_LASH_IMM = 43690, SPELL_TELEPORT_VISUAL = 40869, SPELL_BERSERK = 45078 diff --git a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp index 4eaf7cc2d6c..be51b7922a2 100644 --- a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp @@ -375,23 +375,23 @@ class instance_blood_furnace : public InstanceMapScript switch (id) { case DATA_PRISON_CELL5: - HandleGameObject(PrisonCell5GUID,true); + HandleGameObject(PrisonCell5GUID, true); ActivatePrisoners(PrisonersCell5); break; case DATA_PRISON_CELL6: - HandleGameObject(PrisonCell6GUID,true); + HandleGameObject(PrisonCell6GUID, true); ActivatePrisoners(PrisonersCell6); break; case DATA_PRISON_CELL7: - HandleGameObject(PrisonCell7GUID,true); + HandleGameObject(PrisonCell7GUID, true); ActivatePrisoners(PrisonersCell7); break; case DATA_PRISON_CELL8: - HandleGameObject(PrisonCell8GUID,true); + HandleGameObject(PrisonCell8GUID, true); ActivatePrisoners(PrisonersCell8); break; case DATA_DOOR5: - HandleGameObject(Door5GUID,true); + HandleGameObject(Door5GUID, true); if (Creature* broggok = instance->GetCreature(BroggokGUID)) broggok->AI()->DoAction(ACTION_ACTIVATE_BROGGOK); break; diff --git a/src/server/scripts/Outland/TempestKeep/Eye/boss_astromancer.cpp b/src/server/scripts/Outland/TempestKeep/Eye/boss_astromancer.cpp index 9c4b764fd2a..01ca1636c6b 100644 --- a/src/server/scripts/Outland/TempestKeep/Eye/boss_astromancer.cpp +++ b/src/server/scripts/Outland/TempestKeep/Eye/boss_astromancer.cpp @@ -518,7 +518,7 @@ class spell_astromancer_wrath_of_the_astromancer : public SpellScriptLoader return; Unit* target = GetUnitOwner(); - target->CastSpell(target, GetSpellInfo()->Effects[EFFECT_1].CalcValue(),false); + target->CastSpell(target, GetSpellInfo()->Effects[EFFECT_1].CalcValue(), false); } void Register() diff --git a/src/server/scripts/Outland/TempestKeep/Mechanar/boss_nethermancer_sepethrea.cpp b/src/server/scripts/Outland/TempestKeep/Mechanar/boss_nethermancer_sepethrea.cpp index 0b2370e1b17..9bda618b732 100644 --- a/src/server/scripts/Outland/TempestKeep/Mechanar/boss_nethermancer_sepethrea.cpp +++ b/src/server/scripts/Outland/TempestKeep/Mechanar/boss_nethermancer_sepethrea.cpp @@ -65,7 +65,7 @@ class boss_nethermancer_sepethrea : public CreatureScript struct boss_nethermancer_sepethreaAI : public BossAI { - boss_nethermancer_sepethreaAI(Creature* creature) : BossAI(creature,DATA_NETHERMANCER_SEPRETHREA) {} + boss_nethermancer_sepethreaAI(Creature* creature) : BossAI(creature, DATA_NETHERMANCER_SEPRETHREA) {} void EnterCombat(Unit* who) { diff --git a/src/server/scripts/Outland/TempestKeep/Mechanar/instance_mechanar.cpp b/src/server/scripts/Outland/TempestKeep/Mechanar/instance_mechanar.cpp index e6cb05084ad..146569db284 100644 --- a/src/server/scripts/Outland/TempestKeep/Mechanar/instance_mechanar.cpp +++ b/src/server/scripts/Outland/TempestKeep/Mechanar/instance_mechanar.cpp @@ -41,7 +41,7 @@ class instance_mechanar : public InstanceMapScript SetBossNumber(EncounterCount); LoadDoorData(doorData); } - + void OnGameObjectCreate(GameObject* gameObject) { diff --git a/src/server/scripts/Outland/zone_nagrand.cpp b/src/server/scripts/Outland/zone_nagrand.cpp index 0a92b985c95..edb7a2642d5 100644 --- a/src/server/scripts/Outland/zone_nagrand.cpp +++ b/src/server/scripts/Outland/zone_nagrand.cpp @@ -639,7 +639,7 @@ public: if (ChainLightningTimer <= diff) { DoCast(me->getVictim(), SPELL_KUR_CHAIN_LIGHTNING); - ChainLightningTimer = urand(7000,14000); + ChainLightningTimer = urand(7000, 14000); } else ChainLightningTimer -= diff; if (HealthBelowPct(30)) @@ -654,7 +654,7 @@ public: if (FrostShockTimer <= diff) { DoCast(me->getVictim(), SPELL_KUR_FROST_SHOCK); - FrostShockTimer = urand(7500,15000); + FrostShockTimer = urand(7500, 15000); } else FrostShockTimer -= diff; DoMeleeAttackIfReady(); diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp index 4a1b0d558ff..b5f4312bae5 100644 --- a/src/server/scripts/Spells/spell_generic.cpp +++ b/src/server/scripts/Spells/spell_generic.cpp @@ -1594,7 +1594,7 @@ class spell_gen_gnomish_transporter : public SpellScriptLoader void HandleDummy(SpellEffIndex /* effIndex */) { Unit* caster = GetCaster(); - caster->CastSpell(caster, roll_chance_i(50) ? SPELL_TRANSPORTER_SUCCESS : SPELL_TRANSPORTER_FAILURE , true); + caster->CastSpell(caster, roll_chance_i(50) ? SPELL_TRANSPORTER_SUCCESS : SPELL_TRANSPORTER_FAILURE, true); } void Register() diff --git a/src/server/scripts/Spells/spell_item.cpp b/src/server/scripts/Spells/spell_item.cpp index ccd8f3f81e7..b4e06cb6b48 100644 --- a/src/server/scripts/Spells/spell_item.cpp +++ b/src/server/scripts/Spells/spell_item.cpp @@ -1350,7 +1350,7 @@ class spell_item_poultryizer : public SpellScriptLoader void HandleDummy(SpellEffIndex /* effIndex */) { if (GetCastItem() && GetHitUnit()) - GetCaster()->CastSpell(GetHitUnit(), roll_chance_i(80) ? SPELL_POULTRYIZER_SUCCESS : SPELL_POULTRYIZER_BACKFIRE , true, GetCastItem()); + GetCaster()->CastSpell(GetHitUnit(), roll_chance_i(80) ? SPELL_POULTRYIZER_SUCCESS : SPELL_POULTRYIZER_BACKFIRE, true, GetCastItem()); } void Register() @@ -1710,7 +1710,7 @@ class spell_item_teach_language : public SpellScriptLoader Player* caster = GetCaster()->ToPlayer(); if (roll_chance_i(34)) - caster->CastSpell(caster,caster->GetTeam() == ALLIANCE ? SPELL_LEARN_GNOMISH_BINARY : SPELL_LEARN_GOBLIN_BINARY, true); + caster->CastSpell(caster, caster->GetTeam() == ALLIANCE ? SPELL_LEARN_GNOMISH_BINARY : SPELL_LEARN_GOBLIN_BINARY, true); } void Register() @@ -2004,7 +2004,7 @@ public: void HandleDummy(SpellEffIndex /*effIndex*/) { if (GetHitUnit()) - GetCaster()->CastSpell(GetCaster(),SPELL_FORCE_CAST_SUMMON_GNOME_SOUL); + GetCaster()->CastSpell(GetCaster(), SPELL_FORCE_CAST_SUMMON_GNOME_SOUL); } void Register() diff --git a/src/server/scripts/Spells/spell_pet.cpp b/src/server/scripts/Spells/spell_pet.cpp index 5198e555ee1..c4d5562ab39 100644 --- a/src/server/scripts/Spells/spell_pet.cpp +++ b/src/server/scripts/Spells/spell_pet.cpp @@ -1451,7 +1451,7 @@ public: if (pet->GetEntry() == ENTRY_ARMY_OF_THE_DEAD_GHOUL) amount = -90; // Night of the dead - else if ( Aura * aur = owner->GetAuraOfRankedSpell(SPELL_NIGHT_OF_THE_DEAD)) + else if (Aura* aur = owner->GetAuraOfRankedSpell(SPELL_NIGHT_OF_THE_DEAD)) amount = aur->GetSpellInfo()->Effects[EFFECT_2].CalcValue(); } } diff --git a/src/server/scripts/World/npcs_special.cpp b/src/server/scripts/World/npcs_special.cpp index aaac8ee4b83..8a3342cf2de 100644 --- a/src/server/scripts/World/npcs_special.cpp +++ b/src/server/scripts/World/npcs_special.cpp @@ -2509,11 +2509,11 @@ public: break; case GOSSIP_ACTION_INFO_DEF + 8: player->CLOSE_GOSSIP_MENU(); - player->AddItem(ITEM_KEY_TO_THE_FOCUSING_IRIS,1); + player->AddItem(ITEM_KEY_TO_THE_FOCUSING_IRIS, 1); break; case GOSSIP_ACTION_INFO_DEF + 9: player->CLOSE_GOSSIP_MENU(); - player->AddItem(ITEM_HC_KEY_TO_THE_FOCUSING_IRIS,1); + player->AddItem(ITEM_HC_KEY_TO_THE_FOCUSING_IRIS, 1); break; } return true; @@ -2828,7 +2828,7 @@ public: { if (!me->FindNearestCreature(NPC_OMEN, 100.0f, false) && me->GetDistance2d(omenSummonPos.GetPositionX(), omenSummonPos.GetPositionY()) <= 100.0f) { - switch (urand(0,9)) + switch (urand(0, 9)) { case 0: case 1: |