aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authortreeston <treeston.mmoc@gmail.com>2016-06-16 17:52:54 +0200
committertreeston <treeston.mmoc@gmail.com>2016-06-16 17:53:14 +0200
commit90ff3ce8c8256796cb637fba52e8ae38a0751176 (patch)
tree4d9ce73ea336ba8cfb7487d4e563aba176afffe3 /src
parent994eab6baeeed8987ad56ef595eb601035e13c0a (diff)
parent7eda9fb617ef22b9ee6212d38b42a80a28c005dd (diff)
Merge branch '3.3.5-frogger' into 3.3.5 (PR #17261)
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp15
-rw-r--r--src/server/scripts/Northrend/Naxxramas/naxxramas.h6
2 files changed, 20 insertions, 1 deletions
diff --git a/src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp b/src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp
index e3971248513..720549de0b2 100644
--- a/src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp
+++ b/src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp
@@ -123,6 +123,9 @@ class instance_naxxramas : public InstanceMapScript
CurrentWingTaunt = SAY_KELTHUZAD_FIRST_WING_TAUNT;
playerDied = 0;
+
+ nextFroggerWave = 0;
+ events.ScheduleEvent(EVENT_SUMMON_FROGGER_WAVE, Seconds(1));
}
void OnCreatureCreate(Creature* creature) override
@@ -477,6 +480,16 @@ class instance_naxxramas : public InstanceMapScript
kelthuzad->AI()->Talk(CurrentWingTaunt);
++CurrentWingTaunt;
break;
+ case EVENT_SUMMON_FROGGER_WAVE:
+ {
+ std::list<TempSummon*> spawns;
+ instance->SummonCreatureGroup(nextFroggerWave, &spawns);
+ if (!spawns.empty())
+ (*spawns.begin())->GetMotionMaster()->MovePath(10 * NPC_FROGGER + nextFroggerWave, false);
+ events.Repeat(Seconds(1) + Milliseconds(666));
+ nextFroggerWave = (nextFroggerWave+1) % 3;
+ break;
+ }
case EVENT_DIALOGUE_SAPPHIRON_KELTHUZAD:
if (Creature* kelthuzad = instance->GetCreature(KelthuzadGUID))
kelthuzad->AI()->Talk(SAY_DIALOGUE_SAPPHIRON_KELTHUZAD);
@@ -613,6 +626,8 @@ class instance_naxxramas : public InstanceMapScript
/* The Immortal / The Undying */
uint32 playerDied;
+ int8 nextFroggerWave;
+
EventMap events;
};
diff --git a/src/server/scripts/Northrend/Naxxramas/naxxramas.h b/src/server/scripts/Northrend/Naxxramas/naxxramas.h
index a3fedf5aa40..75e7314c5d0 100644
--- a/src/server/scripts/Northrend/Naxxramas/naxxramas.h
+++ b/src/server/scripts/Northrend/Naxxramas/naxxramas.h
@@ -107,7 +107,8 @@ enum CreaturesIds
NPC_DK_UNDERSTUDY = 16803,
NPC_BIGGLESWORTH = 16998,
NPC_LICH_KING = 16980,
- NPC_OLD_WORLD_TRIGGER = 15384
+ NPC_OLD_WORLD_TRIGGER = 15384,
+ NPC_FROGGER = 16027
};
enum GameObjectsIds
@@ -175,6 +176,9 @@ enum InstanceEvents
// Dialogue that happens after each wing.
EVENT_KELTHUZAD_WING_TAUNT,
+ // Periodic Frogger summon
+ EVENT_SUMMON_FROGGER_WAVE,
+
// Dialogue that happens after Sapphiron's death.
EVENT_DIALOGUE_SAPPHIRON_KELTHUZAD,
EVENT_DIALOGUE_SAPPHIRON_LICHKING,