diff --git a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_mekgineer_steamrigger.cpp b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_mekgineer_steamrigger.cpp index c5c4612d9..6f29d3544 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_mekgineer_steamrigger.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_mekgineer_steamrigger.cpp @@ -29,6 +29,7 @@ enum MekgineerSteamrigger SPELL_SUPER_SHRINK_RAY = 31485, SPELL_SAW_BLADE = 31486, SPELL_ELECTRIFIED_NET = 35107, + SPELL_ENRAGE = 26662, SPELL_REPAIR_N = 31532, SPELL_REPAIR_H = 37936, @@ -39,7 +40,8 @@ enum MekgineerSteamrigger EVENT_CHECK_HP75 = 3, EVENT_SPELL_SHRINK = 4, EVENT_SPELL_SAW = 5, - EVENT_SPELL_NET = 6 + EVENT_SPELL_NET = 6, + EVENT_ENRAGE = 7 }; struct boss_mekgineer_steamrigger : public BossAI @@ -62,9 +64,10 @@ struct boss_mekgineer_steamrigger : public BossAI { Talk(SAY_AGGRO); _JustEngagedWith(); - events.ScheduleEvent(EVENT_SPELL_SHRINK, 20000); - events.ScheduleEvent(EVENT_SPELL_SAW, 15000); - events.ScheduleEvent(EVENT_SPELL_NET, 10000); + events.ScheduleEvent(EVENT_SPELL_SHRINK, 26550); + events.ScheduleEvent(EVENT_SPELL_SAW, 6050, 17650); + events.ScheduleEvent(EVENT_SPELL_NET, 14400); + events.ScheduleEvent(EVENT_ENRAGE, 300000); events.ScheduleEvent(EVENT_CHECK_HP75, 5000); events.ScheduleEvent(EVENT_CHECK_HP50, 5000); events.ScheduleEvent(EVENT_CHECK_HP25, 5000); @@ -96,19 +99,22 @@ struct boss_mekgineer_steamrigger : public BossAI { case EVENT_SPELL_SHRINK: me->CastSpell(me->GetVictim(), SPELL_SUPER_SHRINK_RAY, false); - events.RepeatEvent(20000); + events.Repeat(35100ms, 54100ms); break; case EVENT_SPELL_SAW: if (Unit* target = SelectTarget(SelectTargetMethod::Random, 1)) me->CastSpell(target, SPELL_SAW_BLADE, false); else me->CastSpell(me->GetVictim(), SPELL_SAW_BLADE, false); - events.RepeatEvent(15000); + events.Repeat(6050ms, 17650ms); break; case EVENT_SPELL_NET: if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0)) me->CastSpell(target, SPELL_ELECTRIFIED_NET, false); - events.RepeatEvent(10000); + events.Repeat(21800ms, 34200ms); + break; + case EVENT_ENRAGE: + DoCastSelf(SPELL_ENRAGE, true); break; case EVENT_CHECK_HP25: case EVENT_CHECK_HP50: diff --git a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_warlord_kalithresh.cpp b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_warlord_kalithresh.cpp index 4a7b5caa7..7b8d92e6d 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_warlord_kalithresh.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_warlord_kalithresh.cpp @@ -30,6 +30,7 @@ enum NagaDistiller SPELL_SPELL_REFLECTION = 31534, SPELL_IMPALE = 39061, + SPELL_HEAD_CRACK = 16172, SPELL_WARLORDS_RAGE = 37081, SPELL_WARLORDS_RAGE_NAGA = 31543, SPELL_WARLORDS_RAGE_PROC = 36453, @@ -38,7 +39,8 @@ enum NagaDistiller EVENT_SPELL_REFLECTION = 1, EVENT_SPELL_IMPALE = 2, - EVENT_SPELL_RAGE = 3 + EVENT_SPELL_HEAD_CRACK = 3, + EVENT_SPELL_RAGE = 4 }; struct boss_warlord_kalithresh : public BossAI @@ -49,8 +51,9 @@ struct boss_warlord_kalithresh : public BossAI { Talk(SAY_AGGRO); _JustEngagedWith(); - events.ScheduleEvent(EVENT_SPELL_REFLECTION, 10000); - events.ScheduleEvent(EVENT_SPELL_IMPALE, urand(7000, 14000)); + events.ScheduleEvent(EVENT_SPELL_REFLECTION, 20000, 36000); + events.ScheduleEvent(EVENT_SPELL_IMPALE, 7000, 14000); + events.ScheduleEvent(EVENT_SPELL_HEAD_CRACK, 15000); events.ScheduleEvent(EVENT_SPELL_RAGE, 20000); } @@ -78,12 +81,16 @@ struct boss_warlord_kalithresh : public BossAI { case EVENT_SPELL_REFLECTION: me->CastSpell(me, SPELL_SPELL_REFLECTION, false); - events.RepeatEvent(urand(15000, 20000)); + events.Repeat(20s, 36s); break; case EVENT_SPELL_IMPALE: if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 10.0f, true)) me->CastSpell(target, SPELL_IMPALE, false); - events.RepeatEvent(urand(7500, 12500)); + events.Repeat(7500ms, 12500ms); + break; + case EVENT_SPELL_HEAD_CRACK: + DoCastVictim(SPELL_HEAD_CRACK); + events.Repeat(45s, 55s); break; case EVENT_SPELL_RAGE: if (Creature* distiller = me->FindNearestCreature(NPC_NAGA_DISTILLER, 100.0f))