aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp41
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h5
2 files changed, 19 insertions, 27 deletions
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp
index fd9f79eb9c7..91a06b11732 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp
@@ -59,15 +59,14 @@ enum Spells
enum Events
{
- EVENT_CHECK_SPEAKER = 1,
- EVENT_CHECK_START = 2,
- EVENT_STARTED = 3,
- EVENT_OVERPOWER = 4,
- EVENT_MORTAL_STRIKE = 5,
- EVENT_WHIRLWIND = 6,
- EVENT_CHECK_OHGAN = 7,
- EVENT_WATCH_PLAYER = 8,
- EVENT_CHARGE_PLAYER = 9
+ EVENT_CHECK_SPEAKER,
+ EVENT_CHECK_START,
+ EVENT_STARTED,
+ EVENT_OVERPOWER,
+ EVENT_MORTAL_STRIKE,
+ EVENT_WHIRLWIND,
+ EVENT_WATCH_PLAYER,
+ EVENT_CHARGE_PLAYER
};
enum Misc
@@ -162,7 +161,6 @@ class boss_mandokir : public CreatureScript
events.ScheduleEvent(EVENT_OVERPOWER, urand(7000, 9000));
events.ScheduleEvent(EVENT_MORTAL_STRIKE, urand(12000, 18000));
events.ScheduleEvent(EVENT_WHIRLWIND, urand(24000, 30000));
- events.ScheduleEvent(EVENT_CHECK_OHGAN, 1000);
events.ScheduleEvent(EVENT_WATCH_PLAYER, urand(13000, 15000));
events.ScheduleEvent(EVENT_CHARGE_PLAYER, urand(33000, 38000));
me->SetHomePosition(me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), me->GetOrientation());
@@ -195,6 +193,15 @@ class boss_mandokir : public CreatureScript
}
}
+ void SummonedCreatureDies(Creature* summon, Unit* /*killer*/)
+ {
+ if (summon->GetEntry() == NPC_OHGAN)
+ {
+ DoCast(me, SPELL_FRENZY);
+ Talk(SAY_OHGAN_DEAD);
+ }
+ }
+
void MovementInform(uint32 type, uint32 id) override
{
if (type == WAYPOINT_MOTION_TYPE)
@@ -262,15 +269,6 @@ class boss_mandokir : public CreatureScript
DoCast(me, SPELL_WHIRLWIND);
events.ScheduleEvent(EVENT_WHIRLWIND, urand(22000, 26000));
break;
- case EVENT_CHECK_OHGAN:
- if (instance->GetBossState(DATA_OHGAN) == DONE)
- {
- DoCast(me, SPELL_FRENZY);
- Talk(SAY_OHGAN_DEAD);
- }
- else
- events.ScheduleEvent(EVENT_CHECK_OHGAN, 1000);
- break;
case EVENT_WATCH_PLAYER:
if (Unit* player = SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true))
{
@@ -336,11 +334,6 @@ class npc_ohgan : public CreatureScript
void JustEngagedWith(Unit* /*who*/) override { }
- void JustDied(Unit* /*killer*/) override
- {
- instance->SetBossState(DATA_OHGAN, DONE);
- }
-
void UpdateAI(uint32 diff) override
{
// Return since we have no target
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h b/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h
index f1c03745569..27db3ee4448 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h
@@ -23,7 +23,7 @@
#define ZGScriptName "instance_zulgurub"
#define DataHeader "ZG"
-uint32 const EncounterCount = 13;
+uint32 const EncounterCount = 12;
enum ZGDataTypes
{
@@ -39,8 +39,7 @@ enum ZGDataTypes
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
- TYPE_EDGE_OF_MADNESS = 13 // Boss storage
+ TYPE_EDGE_OF_MADNESS = 12 // Boss storage
};
enum ZGCreatureIds