aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bindings/scripts/scripts/northrend/borean_tundra.cpp97
1 files changed, 97 insertions, 0 deletions
diff --git a/src/bindings/scripts/scripts/northrend/borean_tundra.cpp b/src/bindings/scripts/scripts/northrend/borean_tundra.cpp
index 9f0bd982233..0788c828ba2 100644
--- a/src/bindings/scripts/scripts/northrend/borean_tundra.cpp
+++ b/src/bindings/scripts/scripts/northrend/borean_tundra.cpp
@@ -25,6 +25,8 @@ EndScriptData */
npc_fizzcrank_fullthrottle
npc_surristrasz
npc_tiare
+npc_iruk
+npc_corastrasza
EndContentData */
#include "precompiled.h"
@@ -359,6 +361,89 @@ bool GossipSelect_npc_keristrasza(Player* pPlayer, Creature* pCreature, uint32 u
return true;
}
+/*######
+## npc_corastrasza
+######*/
+
+#define GOSSIP_ITEM_C_1 "I... I think so..."
+
+enum
+{
+ SPELL_SUMMON_WYRMREST_SKYTALON = 61240,
+ SPELL_WYRMREST_SKYTALON_RIDE_PERIODIC = 61244,
+
+ QUEST_ACES_HIGH = 13414
+
+};
+
+bool GossipHello_npc_corastrasza(Player* pPlayer, Creature* pCreature)
+{
+ if (pCreature->isQuestGiver())
+ pPlayer->PrepareQuestMenu(pCreature->GetGUID());
+
+ if (pPlayer->GetQuestStatus(QUEST_ACES_HIGH) == QUEST_STATUS_INCOMPLETE)
+ {
+ pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_C_1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1);
+ }
+
+ pPlayer->SEND_GOSSIP_MENU(pCreature->GetNpcTextId(), pCreature->GetGUID());
+ return true;
+}
+
+bool GossipSelect_npc_corastrasza(Player* pPlayer, Creature* pCreature, uint32 uiSender, uint32 uiAction)
+{
+ if (uiAction == GOSSIP_ACTION_INFO_DEF+1)
+ {
+ pPlayer->CLOSE_GOSSIP_MENU();
+
+ pPlayer->CastSpell(pPlayer, SPELL_SUMMON_WYRMREST_SKYTALON, true);
+ pPlayer->CastSpell(pPlayer, SPELL_WYRMREST_SKYTALON_RIDE_PERIODIC, true);
+
+ }
+
+ return true;
+}
+
+/*######
+## npc_iruk
+######*/
+
+#define GOSSIP_ITEM_I "Give me the Issliruk's Totem" // This is not offilike.
+
+enum
+{
+
+ QUEST_SPIRITS_WATCH_OVER_US = 11961,
+
+ SPELL_CREATURE_TOTEM_OF_ISSLIRUK = 46816,
+
+ GOSSIP_TEXT_I = 12585 // This is blizzlike.
+
+};
+
+bool GossipHello_npc_iruk(Player* pPlayer, Creature* pCreature)
+{
+
+ if (pPlayer->GetQuestStatus(QUEST_SPIRITS_WATCH_OVER_US) == QUEST_STATUS_INCOMPLETE)
+ pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_I, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1);
+
+ pPlayer->PlayerTalkClass->SendGossipMenu(GOSSIP_TEXT_I, pCreature->GetGUID());
+ return true;
+}
+
+bool GossipSelect_npc_iruk(Player* pPlayer, Creature* pCreature, uint32 uiSender, uint32 uiAction)
+{
+ switch(uiAction)
+ {
+ case GOSSIP_ACTION_INFO_DEF+1:
+ pPlayer->CastSpell(pPlayer, SPELL_CREATURE_TOTEM_OF_ISSLIRUK, true);
+ pPlayer->CLOSE_GOSSIP_MENU();
+ break;
+
+ }
+ return true;
+}
+
void AddSC_borean_tundra()
{
Script *newscript;
@@ -396,4 +481,16 @@ void AddSC_borean_tundra()
newscript->pGossipHello = &GossipHello_npc_keristrasza;
newscript->pGossipSelect = &GossipSelect_npc_keristrasza;
newscript->RegisterSelf();
+
+ newscript = new Script;
+ newscript->Name = "npc_corastrasza";
+ newscript->pGossipHello = &GossipHello_npc_corastrasza;
+ newscript->pGossipSelect = &GossipSelect_npc_corastrasza;
+ newscript->RegisterSelf();
+
+ newscript = new Script;
+ newscript->Name = "npc_iruk";
+ newscript->pGossipHello = &GossipHello_npc_iruk;
+ newscript->pGossipSelect = &GossipSelect_npc_iruk;
+ newscript->RegisterSelf();
}