diff options
-rw-r--r-- | sql/updates/world/2011_10_02_06_world_misc.sql | 6 | ||||
-rw-r--r-- | src/server/scripts/Kalimdor/dustwallow_marsh.cpp | 31 |
2 files changed, 37 insertions, 0 deletions
diff --git a/sql/updates/world/2011_10_02_06_world_misc.sql b/sql/updates/world/2011_10_02_06_world_misc.sql new file mode 100644 index 00000000000..03a2bf96b7d --- /dev/null +++ b/sql/updates/world/2011_10_02_06_world_misc.sql @@ -0,0 +1,6 @@ +-- Prisoners of the Grimtotems +UPDATE `gameobject_template` SET `ScriptName`='go_blackhoof_cage'/*,`data2`=30000*/ WHERE `entry`=186287; +UPDATE `quest_template` SET `ReqSpellCast1`=0 WHERE `entry`=11145; +DELETE FROM `creature_text` WHERE `entry`=23720; +INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES +(23720,0,0,"Thank you! There's no telling what those brutes would've done to me.",12,0,100,18,0,0,"Theramore Prisoner"); diff --git a/src/server/scripts/Kalimdor/dustwallow_marsh.cpp b/src/server/scripts/Kalimdor/dustwallow_marsh.cpp index 120f17c1cb6..244250b8204 100644 --- a/src/server/scripts/Kalimdor/dustwallow_marsh.cpp +++ b/src/server/scripts/Kalimdor/dustwallow_marsh.cpp @@ -823,6 +823,36 @@ class spell_energize_aoe : public SpellScriptLoader } }; +/*###### +## go_blackhoof_cage +######*/ + +enum PrisonersOfTheGrimTotems +{ + NPC_THERAMORE_PRISONER = 23720, + SAY_FREE = 0, +}; + +class go_blackhoof_cage : public GameObjectScript +{ +public: + go_blackhoof_cage() : GameObjectScript("go_blackhoof_cage") { } + + bool OnGossipHello(Player* player, GameObject* go) + { + if (Creature* prisoner = go->FindNearestCreature(NPC_THERAMORE_PRISONER, 1.0f)) + { + go->UseDoorOrButton(); + if (player) + player->KilledMonsterCredit(NPC_THERAMORE_PRISONER, 0); + + prisoner->AI()->Talk(SAY_FREE); // We also emote cry here (handled in creature_text.emote) + prisoner->ForcedDespawn(6000); + } + return true; + } +}; + void AddSC_dustwallow_marsh() { new mobs_risen_husk_spirit(); @@ -836,4 +866,5 @@ void AddSC_dustwallow_marsh() new spell_ooze_zap(); new spell_ooze_zap_channel_end(); new spell_energize_aoe(); + new go_blackhoof_cage(); } |