Skip to content

Commit b1d8337

Browse files
committed
Scripts/Mechanar: Update gatewatchers
1 parent 9746b68 commit b1d8337

2 files changed

Lines changed: 27 additions & 13 deletions

File tree

src/server/scripts/Outland/TempestKeep/Mechanar/boss_gatewatcher_gyrokill.cpp

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,14 @@
1515
* with this program. If not, see <http://www.gnu.org/licenses/>.
1616
*/
1717

18+
/*
19+
* Timers requires update
20+
*/
21+
1822
#include "ScriptMgr.h"
19-
#include "SpellInfo.h"
2023
#include "mechanar.h"
2124
#include "ScriptedCreature.h"
25+
#include "SpellInfo.h"
2226

2327
enum GyroKillTexts
2428
{
@@ -51,15 +55,18 @@ struct boss_gatewatcher_gyrokill : public BossAI
5155
void JustEngagedWith(Unit* who) override
5256
{
5357
BossAI::JustEngagedWith(who);
54-
events.ScheduleEvent(EVENT_STREAM_OF_MACHINE_FLUID, 15s, 25s);
55-
events.ScheduleEvent(EVENT_SAW_BLADE, 20s);
56-
events.ScheduleEvent(EVENT_SHADOW_POWER, 25s);
58+
5759
Talk(SAY_AGGRO);
60+
61+
events.ScheduleEvent(EVENT_STREAM_OF_MACHINE_FLUID, 15s, 25s);
62+
events.ScheduleEvent(EVENT_SAW_BLADE, 20s, 30s);
63+
events.ScheduleEvent(EVENT_SHADOW_POWER, 20s, 25s);
5864
}
5965

60-
void OnSpellCast(SpellInfo const* spell) override
66+
void OnSpellCast(SpellInfo const* spellInfo) override
6167
{
62-
if (spell->Id == SPELL_SAW_BLADE)
68+
// Only in normal mode
69+
if (spellInfo->Id == SPELL_SAW_BLADE)
6370
Talk(SAY_SAW_BLADES);
6471
}
6572

@@ -94,7 +101,8 @@ struct boss_gatewatcher_gyrokill : public BossAI
94101
events.Repeat(35s, 50s);
95102
break;
96103
case EVENT_SAW_BLADE:
97-
DoCastVictim(SPELL_SAW_BLADE);
104+
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 100.0f))
105+
DoCast(target, SPELL_SAW_BLADE);
98106
events.Repeat(20s, 30s);
99107
break;
100108
case EVENT_SHADOW_POWER:

src/server/scripts/Outland/TempestKeep/Mechanar/boss_gatewatcher_ironhand.cpp

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@
1515
* with this program. If not, see <http://www.gnu.org/licenses/>.
1616
*/
1717

18+
/*
19+
* Timers requires update
20+
*/
21+
1822
#include "ScriptMgr.h"
1923
#include "mechanar.h"
2024
#include "ScriptedCreature.h"
@@ -55,23 +59,25 @@ struct boss_gatewatcher_iron_hand : public BossAI
5559
void JustEngagedWith(Unit* who) override
5660
{
5761
BossAI::JustEngagedWith(who);
62+
63+
Talk(SAY_AGGRO);
64+
5865
events.ScheduleEvent(EVENT_STREAM_OF_MACHINE_FLUID, 15s, 25s);
5966
events.ScheduleEvent(EVENT_HAMMER_PUNCH, 15s, 25s);
6067
events.ScheduleEvent(EVENT_JACKHAMMER, 10s, 30s);
61-
events.ScheduleEvent(EVENT_SHADOW_POWER, 25s);
62-
Talk(SAY_AGGRO);
68+
events.ScheduleEvent(EVENT_SHADOW_POWER, 20s, 25s);
6369
}
6470

65-
void OnSpellStart(SpellInfo const* spell) override
71+
void OnSpellStart(SpellInfo const* spellInfo) override
6672
{
67-
if (spell->Id == sSpellMgr->GetSpellIdForDifficulty(SPELL_JACKHAMMER, me))
73+
if (spellInfo->Id == sSpellMgr->GetSpellIdForDifficulty(SPELL_JACKHAMMER, me))
6874
Talk(EMOTE_HAMMER);
6975
}
7076

71-
void OnSpellCast(SpellInfo const* spell) override
77+
void OnSpellCast(SpellInfo const* spellInfo) override
7278
{
7379
// Only in normal mode
74-
if (spell->Id == SPELL_JACKHAMMER)
80+
if (spellInfo->Id == SPELL_JACKHAMMER)
7581
Talk(SAY_HAMMER);
7682
}
7783

0 commit comments

Comments
 (0)