Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
zone_shadowmoon_valley.cpp File Reference
#include "ScriptMgr.h"
#include "ScriptedCreature.h"
#include "ScriptedGossip.h"
#include "ScriptedEscortAI.h"
#include "Group.h"
#include "SpellScript.h"
#include "Player.h"
#include "WorldSession.h"
Include dependency graph for zone_shadowmoon_valley.cpp:

Go to the source code of this file.

Classes

class  go_crystal_prison
struct  Location
class  npc_dragonmaw_peon
struct  npc_dragonmaw_peon::npc_dragonmaw_peonAI
class  npc_drake_dealer_hurlunk
class  npc_earthmender_wilda
struct  npc_earthmender_wilda::npc_earthmender_wildaAI
class  npc_enraged_spirit
struct  npc_enraged_spirit::npc_enraged_spiritAI
class  npc_enslaved_netherwing_drake
struct  npc_enslaved_netherwing_drake::npc_enslaved_netherwing_drakeAI
class  npc_illidari_spawn
struct  npc_illidari_spawn::npc_illidari_spawnAI
class  npc_karynaku
class  npc_lord_illidan_stormrage
struct  npc_lord_illidan_stormrage::npc_lord_illidan_stormrageAI
class  npc_mature_netherwing_drake
struct  npc_mature_netherwing_drake::npc_mature_netherwing_drakeAI
class  npc_murkblood_overseer
class  npc_oronok_tornheart
class  npc_overlord_morghor
struct  npc_overlord_morghor::npc_overlord_morghorAI
class  npc_shadowmoon_tuber_node
struct  npc_shadowmoon_tuber_node::npc_shadowmoon_tuber_nodeAI
class  npc_torloth_the_magnificent
struct  npc_torloth_the_magnificent::npc_torloth_the_magnificentAI
class  npcs_flanis_swiftwing_and_kagrosh
struct  SpawnSpells
class  spell_unlocking_zuluheds_chains
class  spell_unlocking_zuluheds_chains::spell_unlocking_zuluheds_chains_SpellScript
struct  TorlothCinematic
struct  WaveData

Macros

#define EVENT_AREA_RADIUS   65
#define EVENT_COOLDOWN   30000
#define GOSSIP_HMO   "I am here for you, overseer."
#define GOSSIP_HSK1   "Take Flanis's Pack"
#define GOSSIP_HSK2   "Take Kagrosh's Pack"
#define GOSSIP_ORONOK1   "I am ready to hear your story, Oronok."
#define GOSSIP_ORONOK2   "How do I find the cipher?"
#define GOSSIP_ORONOK3   "How do you know all of this?"
#define GOSSIP_ORONOK4   "Yet what? What is it, Oronok?"
#define GOSSIP_ORONOK5   "Continue, please."
#define GOSSIP_ORONOK6   "So what of the cipher now? And your boys?"
#define GOSSIP_ORONOK7   "I will find your boys and the cipher, Oronok."
#define GOSSIP_SMO1   "How dare you question an overseer of the Dragonmaw!"
#define GOSSIP_SMO2   "Who speaks of me? What are you talking about, broken?"
#define GOSSIP_SMO3   "Continue please."
#define GOSSIP_SMO4   "Who are these bidders?"
#define GOSSIP_SMO5   "Well... yes."
#define QUEST_11082   11082
#define QUEST_BATTLE_OF_THE_CRIMSON_WATCH   10781

Enumerations

enum  Earthmender {
  SAY_WIL_START = 0 , SAY_WIL_AGGRO = 1 , SAY_WIL_PROGRESS1 = 2 , SAY_WIL_PROGRESS2 = 3 ,
  SAY_WIL_FIND_EXIT = 4 , SAY_WIL_JUST_AHEAD = 5 , SAY_WIL_END = 6 , SPELL_CHAIN_LIGHTNING = 16006 ,
  SPELL_EARTHBING_TOTEM = 15786 , SPELL_FROST_SHOCK = 12548 , SPELL_HEALING_WAVE = 12491 , QUEST_ESCAPE_COILSCAR = 10451 ,
  NPC_COILSKAR_ASSASSIN = 21044 , FACTION_EARTHEN = 1726
}
enum  Enraged_Dpirits {
  QUEST_ENRAGED_SPIRITS_FIRE_EARTH = 10458 , QUEST_ENRAGED_SPIRITS_AIR = 10481 , QUEST_ENRAGED_SPIRITS_WATER = 10480 , ENTRY_TOTEM_OF_SPIRITS = 21071 ,
  RADIUS_TOTEM_OF_SPIRITS = 15 , NPC_ENRAGED_EARTH_SPIRIT = 21050 , NPC_ENRAGED_FIRE_SPIRIT = 21061 , NPC_ENRAGED_AIR_SPIRIT = 21060 ,
  NPC_ENRAGED_WATER_SPIRIT = 21059 , NPC_EARTHEN_SOUL = 21073 , NPC_FIERY_SOUL = 21097 , NPC_ENRAGED_AIRY_SOUL = 21116 ,
  NPC_ENRAGED_WATERY_SOUL = 21109 , SPELL_EARTHEN_SOUL_CAPTURED_CREDIT = 36108 , SPELL_FIERY_SOUL_CAPTURED_CREDIT = 36117 , SPELL_AIRY_SOUL_CAPTURED_CREDIT = 36182 ,
  SPELL_WATERY_SOUL_CAPTURED_CREDIT = 36171 , NPC_CREDIT_FIRE = 21094 , NPC_CREDIT_WATER = 21095 , NPC_CREDIT_AIR = 21096 ,
  NPC_CREDIT_EARTH = 21092 , SPELL_SOUL_CAPTURED = 36115 , FACTION_ENRAGED_SOUL_FRIENDLY = 35 , FACTION_ENRAGED_SOUL_HOSTILE = 14
}
enum  EnshlavedNetherwingDrake {
  FACTION_DEFAULT = 62 , FACTION_FRIENDLY = 1840 , SPELL_HIT_FORCE_OF_NELTHARAKU = 38762 , SPELL_FORCE_OF_NELTHARAKU = 38775 ,
  NPC_DRAGONMAW_SUBJUGATOR = 21718 , NPC_ESCAPE_DUMMY = 22317
}
enum  Karynaku { QUEST_ALLY_OF_NETHER = 10870 , QUEST_ZUHULED_THE_WACK = 10866 , NPC_ZUHULED_THE_WACKED = 11980 , TAXI_PATH_ID = 649 }
enum  MatureNetherwing {
  SAY_JUST_EATEN = 0 , SPELL_PLACE_CARCASS = 38439 , SPELL_JUST_EATEN = 38502 , SPELL_NETHER_BREATH = 38467 ,
  POINT_ID = 1 , GO_CARCASS = 185155 , QUEST_KINDNESS = 10804 , NPC_EVENT_PINGER = 22131
}
enum  OverlordData {
  QUEST_LORD_ILLIDAN_STORMRAGE = 11108 , C_ILLIDAN = 22083 , C_YARZILL = 23141 , SPELL_ONE = 39990 ,
  SPELL_TWO = 41528 , SPELL_THREE = 40216 , SPELL_FOUR = 42016 , OVERLORD_SAY_1 = 0 ,
  OVERLORD_SAY_2 = 1 , OVERLORD_SAY_4 = 3 , OVERLORD_SAY_5 = 4 , OVERLORD_SAY_6 = 5 ,
  OVERLORD_YELL_1 = 6 , OVERLORD_YELL_2 = 7 , LORD_ILLIDAN_SAY_1 = 0 , LORD_ILLIDAN_SAY_2 = 1 ,
  LORD_ILLIDAN_SAY_3 = 2 , LORD_ILLIDAN_SAY_4 = 3 , LORD_ILLIDAN_SAY_5 = 4 , LORD_ILLIDAN_SAY_6 = 5 ,
  LORD_ILLIDAN_SAY_7 = 6 , YARZILL_THE_MERC_SAY = 0
}
enum  ShadowMoonTuberEnum {
  SPELL_WHISTLE = 36652 , SPELL_SHADOWMOON_TUBER = 36462 , NPC_BOAR_ENTRY = 21195 , GO_SHADOWMOON_TUBER_MOUND = 184701 ,
  POINT_TUBER = 1 , TYPE_BOAR = 1 , DATA_BOAR = 1
}
enum  ZuluhedChains { QUEST_ZULUHED = 10866 , NPC_KARYNAKU = 22112 }

Functions

void AddSC_shadowmoon_valley ()

Variables

static SpawnSpells SpawnCast []
static Location SpawnLocation []
static TorlothCinematic TorlothAnim []
static WaveData WavesInfo []

Macro Definition Documentation

◆ EVENT_AREA_RADIUS

#define EVENT_AREA_RADIUS   65

◆ EVENT_COOLDOWN

#define EVENT_COOLDOWN   30000

Definition at line 1157 of file zone_shadowmoon_valley.cpp.

◆ GOSSIP_HMO

#define GOSSIP_HMO   "I am here for you, overseer."

Definition at line 487 of file zone_shadowmoon_valley.cpp.

Referenced by npc_murkblood_overseer::OnGossipHello().

◆ GOSSIP_HSK1

#define GOSSIP_HSK1   "Take Flanis's Pack"

◆ GOSSIP_HSK2

#define GOSSIP_HSK2   "Take Kagrosh's Pack"

◆ GOSSIP_ORONOK1

#define GOSSIP_ORONOK1   "I am ready to hear your story, Oronok."

Definition at line 553 of file zone_shadowmoon_valley.cpp.

Referenced by npc_oronok_tornheart::OnGossipHello().

◆ GOSSIP_ORONOK2

#define GOSSIP_ORONOK2   "How do I find the cipher?"

Definition at line 554 of file zone_shadowmoon_valley.cpp.

Referenced by npc_oronok_tornheart::OnGossipSelect().

◆ GOSSIP_ORONOK3

#define GOSSIP_ORONOK3   "How do you know all of this?"

Definition at line 555 of file zone_shadowmoon_valley.cpp.

Referenced by npc_oronok_tornheart::OnGossipSelect().

◆ GOSSIP_ORONOK4

#define GOSSIP_ORONOK4   "Yet what? What is it, Oronok?"

Definition at line 556 of file zone_shadowmoon_valley.cpp.

Referenced by npc_oronok_tornheart::OnGossipSelect().

◆ GOSSIP_ORONOK5

#define GOSSIP_ORONOK5   "Continue, please."

Definition at line 557 of file zone_shadowmoon_valley.cpp.

Referenced by npc_oronok_tornheart::OnGossipSelect().

◆ GOSSIP_ORONOK6

#define GOSSIP_ORONOK6   "So what of the cipher now? And your boys?"

Definition at line 558 of file zone_shadowmoon_valley.cpp.

Referenced by npc_oronok_tornheart::OnGossipSelect().

◆ GOSSIP_ORONOK7

#define GOSSIP_ORONOK7   "I will find your boys and the cipher, Oronok."

Definition at line 559 of file zone_shadowmoon_valley.cpp.

Referenced by npc_oronok_tornheart::OnGossipSelect().

◆ GOSSIP_SMO1

#define GOSSIP_SMO1   "How dare you question an overseer of the Dragonmaw!"

Definition at line 488 of file zone_shadowmoon_valley.cpp.

Referenced by npc_murkblood_overseer::OnGossipSelect().

◆ GOSSIP_SMO2

#define GOSSIP_SMO2   "Who speaks of me? What are you talking about, broken?"

Definition at line 489 of file zone_shadowmoon_valley.cpp.

Referenced by npc_murkblood_overseer::OnGossipSelect().

◆ GOSSIP_SMO3

#define GOSSIP_SMO3   "Continue please."

Definition at line 490 of file zone_shadowmoon_valley.cpp.

Referenced by npc_murkblood_overseer::OnGossipSelect().

◆ GOSSIP_SMO4

#define GOSSIP_SMO4   "Who are these bidders?"

Definition at line 491 of file zone_shadowmoon_valley.cpp.

Referenced by npc_murkblood_overseer::OnGossipSelect().

◆ GOSSIP_SMO5

#define GOSSIP_SMO5   "Well... yes."

Definition at line 492 of file zone_shadowmoon_valley.cpp.

Referenced by npc_murkblood_overseer::OnGossipSelect().

◆ QUEST_11082

#define QUEST_11082   11082

◆ QUEST_BATTLE_OF_THE_CRIMSON_WATCH

Enumeration Type Documentation

◆ Earthmender

Enumerator
SAY_WIL_START 
SAY_WIL_AGGRO 
SAY_WIL_PROGRESS1 
SAY_WIL_PROGRESS2 
SAY_WIL_FIND_EXIT 
SAY_WIL_JUST_AHEAD 
SAY_WIL_END 
SPELL_CHAIN_LIGHTNING 
SPELL_EARTHBING_TOTEM 
SPELL_FROST_SHOCK 
SPELL_HEALING_WAVE 
QUEST_ESCAPE_COILSCAR 
NPC_COILSKAR_ASSASSIN 
FACTION_EARTHEN 

Definition at line 976 of file zone_shadowmoon_valley.cpp.

◆ Enraged_Dpirits

Enumerator
QUEST_ENRAGED_SPIRITS_FIRE_EARTH 
QUEST_ENRAGED_SPIRITS_AIR 
QUEST_ENRAGED_SPIRITS_WATER 
ENTRY_TOTEM_OF_SPIRITS 
RADIUS_TOTEM_OF_SPIRITS 
NPC_ENRAGED_EARTH_SPIRIT 
NPC_ENRAGED_FIRE_SPIRIT 
NPC_ENRAGED_AIR_SPIRIT 
NPC_ENRAGED_WATER_SPIRIT 
NPC_EARTHEN_SOUL 
NPC_FIERY_SOUL 
NPC_ENRAGED_AIRY_SOUL 
NPC_ENRAGED_WATERY_SOUL 
SPELL_EARTHEN_SOUL_CAPTURED_CREDIT 
SPELL_FIERY_SOUL_CAPTURED_CREDIT 
SPELL_AIRY_SOUL_CAPTURED_CREDIT 
SPELL_WATERY_SOUL_CAPTURED_CREDIT 
NPC_CREDIT_FIRE 
NPC_CREDIT_WATER 
NPC_CREDIT_AIR 
NPC_CREDIT_EARTH 
SPELL_SOUL_CAPTURED 
FACTION_ENRAGED_SOUL_FRIENDLY 
FACTION_ENRAGED_SOUL_HOSTILE 

Definition at line 1754 of file zone_shadowmoon_valley.cpp.

◆ EnshlavedNetherwingDrake

Enumerator
FACTION_DEFAULT 
FACTION_FRIENDLY 
SPELL_HIT_FORCE_OF_NELTHARAKU 
SPELL_FORCE_OF_NELTHARAKU 
NPC_DRAGONMAW_SUBJUGATOR 
NPC_ESCAPE_DUMMY 

Definition at line 180 of file zone_shadowmoon_valley.cpp.

◆ Karynaku

enum Karynaku
Enumerator
QUEST_ALLY_OF_NETHER 
QUEST_ZUHULED_THE_WACK 
NPC_ZUHULED_THE_WACKED 
TAXI_PATH_ID 

Definition at line 628 of file zone_shadowmoon_valley.cpp.

◆ MatureNetherwing

Enumerator
SAY_JUST_EATEN 
SPELL_PLACE_CARCASS 
SPELL_JUST_EATEN 
SPELL_NETHER_BREATH 
POINT_ID 
GO_CARCASS 
QUEST_KINDNESS 
NPC_EVENT_PINGER 

Definition at line 43 of file zone_shadowmoon_valley.cpp.

◆ OverlordData

Enumerator
QUEST_LORD_ILLIDAN_STORMRAGE 
C_ILLIDAN 
C_YARZILL 
SPELL_ONE 
SPELL_TWO 
SPELL_THREE 
SPELL_FOUR 
OVERLORD_SAY_1 
OVERLORD_SAY_2 
OVERLORD_SAY_4 
OVERLORD_SAY_5 
OVERLORD_SAY_6 
OVERLORD_YELL_1 
OVERLORD_YELL_2 
LORD_ILLIDAN_SAY_1 
LORD_ILLIDAN_SAY_2 
LORD_ILLIDAN_SAY_3 
LORD_ILLIDAN_SAY_4 
LORD_ILLIDAN_SAY_5 
LORD_ILLIDAN_SAY_6 
LORD_ILLIDAN_SAY_7 
YARZILL_THE_MERC_SAY 

Definition at line 659 of file zone_shadowmoon_valley.cpp.

◆ ShadowMoonTuberEnum

Enumerator
SPELL_WHISTLE 
SPELL_SHADOWMOON_TUBER 
NPC_BOAR_ENTRY 
GO_SHADOWMOON_TUBER_MOUND 
POINT_TUBER 
TYPE_BOAR 
DATA_BOAR 

Definition at line 1909 of file zone_shadowmoon_valley.cpp.

◆ ZuluhedChains

Enumerator
QUEST_ZULUHED 
NPC_KARYNAKU 

Definition at line 1875 of file zone_shadowmoon_valley.cpp.

Function Documentation

◆ AddSC_shadowmoon_valley()

void AddSC_shadowmoon_valley ( )

Variable Documentation

◆ SpawnCast

SpawnSpells SpawnCast[]
static
Initial value:
=
{
{10000, 15000, 35871},
{10000, 10000, 38985},
{35000, 35000, 22884},
{20000, 20000, 17194},
{8000, 15000, 38010},
{12000, 20000, 16102},
{10000, 15000, 15284},
{18000, 20000, 39082},
{25000, 28000, 33961}
}

Definition at line 1222 of file zone_shadowmoon_valley.cpp.

Referenced by npc_illidari_spawn::npc_illidari_spawnAI::UpdateAI(), and npc_torloth_the_magnificent::npc_torloth_the_magnificentAI::UpdateAI().

◆ SpawnLocation

Location SpawnLocation[]
static
Initial value:
=
{
{-4615.8556f, 1342.2532f, 139.9f, 1.612f},
{-4598.9365f, 1377.3182f, 139.9f, 3.917f},
{-4598.4697f, 1360.8999f, 139.9f, 2.427f},
{-4589.3599f, 1369.1061f, 139.9f, 3.165f},
{-4608.3477f, 1386.0076f, 139.9f, 4.108f},
{-4633.1889f, 1359.8033f, 139.9f, 0.949f},
{-4623.5791f, 1351.4574f, 139.9f, 0.971f},
{-4607.2988f, 1351.6099f, 139.9f, 2.416f},
{-4633.7764f, 1376.0417f, 139.9f, 5.608f},
{-4600.2461f, 1369.1240f, 139.9f, 3.056f},
{-4631.7808f, 1367.9459f, 139.9f, 0.020f},
{-4600.2461f, 1369.1240f, 139.9f, 3.056f},
{-4631.7808f, 1367.9459f, 139.9f, 0.020f},
{-4615.5586f, 1353.0031f, 139.9f, 1.540f},
{-4616.4736f, 1384.2170f, 139.9f, 4.971f},
{-4627.1240f, 1378.8752f, 139.9f, 2.544f}
}

Definition at line 1182 of file zone_shadowmoon_valley.cpp.

Referenced by npc_lord_illidan_stormrage::npc_lord_illidan_stormrageAI::SummonNextWave().

◆ TorlothAnim

TorlothCinematic TorlothAnim[]
static
Initial value:
=
{
{0, 2000},
{1, 7000},
{0, 3000},
{0, 2000},
{0, 1000},
{0, 3000},
{0, 0}
}

Definition at line 1165 of file zone_shadowmoon_valley.cpp.

Referenced by npc_torloth_the_magnificent::npc_torloth_the_magnificentAI::HandleAnimation().

◆ WavesInfo

WaveData WavesInfo[]
static
Initial value:
=
{
{9, 0, 22075, 10000, 7000},
{2, 9, 22074, 10000, 7000},
{4, 11, 19797, 10000, 7000},
{1, 15, 22076, 10000, 7000}
}

Definition at line 1209 of file zone_shadowmoon_valley.cpp.

Referenced by npc_lord_illidan_stormrage::npc_lord_illidan_stormrageAI::SummonNextWave().