aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDiscover- <amort11@hotmail.com>2011-10-22 17:33:12 +0100
committerNay <dnpd.dd@gmail.com>2011-10-22 17:33:12 +0100
commit8cc675038803737b95b81df3447325739d166497 (patch)
treedc7351ff2114d191c64a218eb32545c23ae04cf7 /src
parent6e1107f5fc10bde72119b769166493a8d6492849 (diff)
Scripts/Nagrand: Fix quest Finding The Survivors
Closes #442 Closes #3033
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Outland/nagrand.cpp40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/server/scripts/Outland/nagrand.cpp b/src/server/scripts/Outland/nagrand.cpp
index 3431fbe70dc..aa8e8918493 100644
--- a/src/server/scripts/Outland/nagrand.cpp
+++ b/src/server/scripts/Outland/nagrand.cpp
@@ -1156,6 +1156,45 @@ public:
};
};
+/*######
+## go_warmaul_prison
+######*/
+
+enum FindingTheSurvivorsData
+{
+ QUEST_FINDING_THE_SURVIVORS = 9948,
+ NPC_MAGHAR_PRISONER = 18428,
+
+ SAY_FREE_0 = 0,
+ SAY_FREE_1 = 1,
+ SAY_FREE_2 = 2,
+ SAY_FREE_3 = 3,
+ SAY_FREE_4 = 4,
+};
+
+class go_warmaul_prison : public GameObjectScript
+{
+public:
+ go_warmaul_prison() : GameObjectScript("go_warmaul_prison") { }
+
+ bool OnGossipHello(Player* player, GameObject* go)
+ {
+ if (Creature* prisoner = go->FindNearestCreature(NPC_MAGHAR_PRISONER, 1.0f))
+ {
+ if (prisoner)
+ {
+ go->UseDoorOrButton();
+ if (player)
+ player->KilledMonsterCredit(NPC_MAGHAR_PRISONER, 0);
+
+ prisoner->AI()->Talk(RAND(SAY_FREE_0, SAY_FREE_1, SAY_FREE_2, SAY_FREE_3, SAY_FREE_4), player->GetGUID());
+ prisoner->ForcedDespawn(6000);
+ }
+ }
+ return true;
+ }
+};
+
void AddSC_nagrand()
{
new mob_shattered_rumbler();
@@ -1169,4 +1208,5 @@ void AddSC_nagrand()
new npc_corki();
new go_corkis_prison();
new npc_kurenai_captive();
+ new go_warmaul_prison();
}