TrinityCore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
npcs_special.cpp File Reference
#include "ScriptMgr.h"
#include "ScriptedCreature.h"
#include "ScriptedGossip.h"
#include "ScriptedEscortAI.h"
#include "ObjectMgr.h"
#include "World.h"
#include "PassiveAI.h"
#include "GameEventMgr.h"
#include "GameObjectAI.h"
#include "GridNotifiers.h"
#include "GridNotifiersImpl.h"
#include "Cell.h"
#include "CellImpl.h"
#include "SpellAuras.h"
#include "Pet.h"
#include "PetAI.h"
#include "CreatureTextMgr.h"
#include "SpellHistory.h"
+ Include dependency graph for npcs_special.cpp:

Classes

struct  SpawnAssociation
 
class  npc_air_force_bots
 
struct  npc_air_force_bots::npc_air_force_botsAI
 
class  npc_lunaclaw_spirit
 
class  npc_chicken_cluck
 
struct  npc_chicken_cluck::npc_chicken_cluckAI
 
class  npc_dancing_flames
 
struct  npc_dancing_flames::npc_dancing_flamesAI
 
class  npc_torch_tossing_target_bunny_controller
 
struct  npc_torch_tossing_target_bunny_controller::npc_torch_tossing_target_bunny_controllerAI
 
class  npc_doctor
 
struct  npc_doctor::npc_doctorAI
 
class  npc_injured_patient
 
struct  npc_injured_patient::npc_injured_patientAI
 
class  npc_garments_of_quests
 
struct  npc_garments_of_quests::npc_garments_of_questsAI
 
class  npc_guardian
 
struct  npc_guardian::npc_guardianAI
 
class  npc_sayge
 
class  npc_steam_tonk
 
struct  npc_steam_tonk::npc_steam_tonkAI
 
class  npc_tonk_mine
 
struct  npc_tonk_mine::npc_tonk_mineAI
 
class  npc_brewfest_reveler
 
struct  npc_brewfest_reveler::npc_brewfest_revelerAI
 
class  npc_training_dummy
 
struct  npc_training_dummy::npc_training_dummyAI
 
class  npc_wormhole
 
struct  npc_wormhole::npc_wormholeAI
 
class  npc_pet_trainer
 
class  npc_locksmith
 
class  npc_experience
 
class  npc_firework
 
struct  npc_firework::npc_fireworkAI
 
class  npc_spring_rabbit
 
struct  npc_spring_rabbit::npc_spring_rabbitAI
 
class  npc_imp_in_a_ball
 
struct  npc_imp_in_a_ball::npc_imp_in_a_ballAI
 
class  npc_train_wrecker
 
struct  npc_train_wrecker::npc_train_wreckerAI
 
class  npc_egbert
 
struct  npc_egbert::npc_egbertAI
 
class  npc_pandaren_monk
 
struct  npc_pandaren_monk::npc_pandaren_monkAI
 

Macros

#define GOSSIP_ITEM_GRANT   "You have thought well, spirit. I ask you to grant me the strength of your body and the strength of your heart."
 
#define A_RUNTOX   -3742.96f
 
#define A_RUNTOY   -4531.52f
 
#define A_RUNTOZ   11.91f
 
#define H_RUNTOX   -1016.44f
 
#define H_RUNTOY   -3508.48f
 
#define H_RUNTOZ   62.96f
 
#define GOSSIP_HELLO_SAYGE   "Yes"
 
#define GOSSIP_SENDACTION_SAYGE1   "Slay the Man"
 
#define GOSSIP_SENDACTION_SAYGE2   "Turn him over to liege"
 
#define GOSSIP_SENDACTION_SAYGE3   "Confiscate the corn"
 
#define GOSSIP_SENDACTION_SAYGE4   "Let him go and have the corn"
 
#define GOSSIP_SENDACTION_SAYGE5   "Execute your friend painfully"
 
#define GOSSIP_SENDACTION_SAYGE6   "Execute your friend painlessly"
 
#define GOSSIP_SENDACTION_SAYGE7   "Let your friend go"
 
#define GOSSIP_SENDACTION_SAYGE8   "Confront the diplomat"
 
#define GOSSIP_SENDACTION_SAYGE9   "Show not so quiet defiance"
 
#define GOSSIP_SENDACTION_SAYGE10   "Remain quiet"
 
#define GOSSIP_SENDACTION_SAYGE11   "Speak against your brother openly"
 
#define GOSSIP_SENDACTION_SAYGE12   "Help your brother in"
 
#define GOSSIP_SENDACTION_SAYGE13   "Keep your brother out without letting him know"
 
#define GOSSIP_SENDACTION_SAYGE14   "Take credit, keep gold"
 
#define GOSSIP_SENDACTION_SAYGE15   "Take credit, share the gold"
 
#define GOSSIP_SENDACTION_SAYGE16   "Let the knight take credit"
 
#define GOSSIP_SENDACTION_SAYGE17   "Thanks"
 
#define GOSSIP_ENGINEERING1   "Borean Tundra"
 
#define GOSSIP_ENGINEERING2   "Howling Fjord"
 
#define GOSSIP_ENGINEERING3   "Sholazar Basin"
 
#define GOSSIP_ENGINEERING4   "Icecrown"
 
#define GOSSIP_ENGINEERING5   "Storm Peaks"
 
#define GOSSIP_ENGINEERING6   "Underground..."
 
#define GOSSIP_PET1   "How do I train my pet?"
 
#define GOSSIP_PET2   "I wish to untrain my pet."
 
#define GOSSIP_PET_CONFIRM   "Yes, please do."
 
#define GOSSIP_LOST_ARCATRAZ_KEY   "I've lost my key to the Arcatraz."
 
#define GOSSIP_LOST_SHADOWFORGE_KEY   "I've lost my key to the Blackrock Depths."
 
#define GOSSIP_LOST_SKELETON_KEY   "I've lost my key to the Scholomance."
 
#define GOSSIP_LOST_SHATTERED_HALLS_KEY   "I've lost my key to the Shattered Halls."
 
#define GOSSIP_LOST_THE_MASTERS_KEY   "I've lost my key to the Karazhan."
 
#define GOSSIP_LOST_VIOLET_HOLD_KEY   "I've lost my key to the Violet Hold."
 
#define GOSSIP_LOST_ESSENCE_INFUSED_MOONSTONE   "I've lost my Essence-Infused Moonstone."
 
#define GOSSIP_LOST_KEY_TO_THE_FOCUSING_IRIS   "I've lost my Key to the Focusing Iris."
 
#define GOSSIP_LOST_HC_KEY_TO_THE_FOCUSING_IRIS   "I've lost my Heroic Key to the Focusing Iris."
 
#define EXP_COST   100000
 
#define GOSSIP_TEXT_EXP   14736
 
#define GOSSIP_XP_OFF   "I no longer wish to gain experience."
 
#define GOSSIP_XP_ON   "I wish to start gaining experience again."
 

Enumerations

enum  SpawnType { SPAWNTYPE_TRIPWIRE_ROOFTOP, SPAWNTYPE_ALARMBOT }
 
enum  AirFoceBots { SPELL_GUARDS_MARK = 38067, AURA_DURATION_TIME_LEFT = 5000 }
 
enum  LunaclawSpirit { QUEST_BODY_HEART_A = 6001, QUEST_BODY_HEART_H = 6002, TEXT_ID_DEFAULT = 4714, TEXT_ID_PROGRESS = 4715 }
 
enum  ChickenCluck {
  EMOTE_HELLO_A = 0, EMOTE_HELLO_H = 1, EMOTE_CLUCK_TEXT = 2, QUEST_CLUCK = 3861,
  FACTION_FRIENDLY = 35, FACTION_CHICKEN = 31
}
 
enum  DancingFlames { SPELL_BRAZIER = 45423, SPELL_SEDUCTION = 47057, SPELL_FIERY_AURA = 45427 }
 
enum  TorchTossingTarget { NPC_TORCH_TOSSING_TARGET_BUNNY = 25535, SPELL_TARGET_INDICATOR = 45723 }
 
enum  Doctor {
  SAY_DOC = 0, DOCTOR_ALLIANCE = 12939, DOCTOR_HORDE = 12920, ALLIANCE_COORDS = 7,
  HORDE_COORDS = 6
}
 
enum  Garments {
  SPELL_LESSER_HEAL_R2 = 2052, SPELL_FORTITUDE_R1 = 1243, QUEST_MOON = 5621, QUEST_LIGHT_1 = 5624,
  QUEST_LIGHT_2 = 5625, QUEST_SPIRIT = 5648, QUEST_DARKNESS = 5650, ENTRY_SHAYA = 12429,
  ENTRY_ROBERTS = 12423, ENTRY_DOLF = 12427, ENTRY_KORJA = 12430, ENTRY_DG_KEL = 12428,
  SAY_THANKS = 0, SAY_GOODBYE = 1, SAY_HEALED = 2
}
 
enum  GuardianSpells { SPELL_DEATHTOUCH = 5 }
 
enum  Sayge {
  SPELL_DMG = 23768, SPELL_RES = 23769, SPELL_ARM = 23767, SPELL_SPI = 23738,
  SPELL_INT = 23766, SPELL_STM = 23737, SPELL_STR = 23735, SPELL_AGI = 23736,
  SPELL_FORTUNE = 23765
}
 
enum  TonkMine { SPELL_TONK_MINE_DETONATE = 25099 }
 
enum  BrewfestReveler { SPELL_BREWFEST_TOAST = 41586 }
 
enum  TrainingDummy { NPC_ADVANCED_TARGET_DUMMY = 2674, NPC_TARGET_DUMMY = 2673, EVENT_TD_CHECK_COMBAT = 1, EVENT_TD_DESPAWN = 2 }
 
enum  WormholeSpells {
  SPELL_BOREAN_TUNDRA = 67834, SPELL_SHOLAZAR_BASIN = 67835, SPELL_ICECROWN = 67836, SPELL_STORM_PEAKS = 67837,
  SPELL_HOWLING_FJORD = 67838, SPELL_UNDERGROUND = 68081, TEXT_WORMHOLE = 907, DATA_SHOW_UNDERGROUND = 1
}
 
enum  PetTrainer { TEXT_ISHUNTER = 5838, TEXT_NOTHUNTER = 5839, TEXT_PETINFO = 13474, TEXT_CONFIRM = 7722 }
 
enum  LockSmith {
  QUEST_HOW_TO_BRAKE_IN_TO_THE_ARCATRAZ = 10704, QUEST_DARK_IRON_LEGACY = 3802, QUEST_THE_KEY_TO_SCHOLOMANCE_A = 5505, QUEST_THE_KEY_TO_SCHOLOMANCE_H = 5511,
  QUEST_HOTTER_THAN_HELL_A = 10758, QUEST_HOTTER_THAN_HELL_H = 10764, QUEST_RETURN_TO_KHAGDAR = 9837, QUEST_CONTAINMENT = 13159,
  QUEST_ETERNAL_VIGILANCE = 11011, QUEST_KEY_TO_THE_FOCUSING_IRIS = 13372, QUEST_HC_KEY_TO_THE_FOCUSING_IRIS = 13375, ITEM_ARCATRAZ_KEY = 31084,
  ITEM_SHADOWFORGE_KEY = 11000, ITEM_SKELETON_KEY = 13704, ITEM_SHATTERED_HALLS_KEY = 28395, ITEM_THE_MASTERS_KEY = 24490,
  ITEM_VIOLET_HOLD_KEY = 42482, ITEM_ESSENCE_INFUSED_MOONSTONE = 32449, ITEM_KEY_TO_THE_FOCUSING_IRIS = 44582, ITEM_HC_KEY_TO_THE_FOCUSING_IRIS = 44581,
  SPELL_ARCATRAZ_KEY = 54881, SPELL_SHADOWFORGE_KEY = 54882, SPELL_SKELETON_KEY = 54883, SPELL_SHATTERED_HALLS_KEY = 54884,
  SPELL_THE_MASTERS_KEY = 54885, SPELL_VIOLET_HOLD_KEY = 67253, SPELL_ESSENCE_INFUSED_MOONSTONE = 40173
}
 
enum  Fireworks {
  NPC_OMEN = 15467, NPC_MINION_OF_OMEN = 15466, NPC_FIREWORK_BLUE = 15879, NPC_FIREWORK_GREEN = 15880,
  NPC_FIREWORK_PURPLE = 15881, NPC_FIREWORK_RED = 15882, NPC_FIREWORK_YELLOW = 15883, NPC_FIREWORK_WHITE = 15884,
  NPC_FIREWORK_BIG_BLUE = 15885, NPC_FIREWORK_BIG_GREEN = 15886, NPC_FIREWORK_BIG_PURPLE = 15887, NPC_FIREWORK_BIG_RED = 15888,
  NPC_FIREWORK_BIG_YELLOW = 15889, NPC_FIREWORK_BIG_WHITE = 15890, NPC_CLUSTER_BLUE = 15872, NPC_CLUSTER_RED = 15873,
  NPC_CLUSTER_GREEN = 15874, NPC_CLUSTER_PURPLE = 15875, NPC_CLUSTER_WHITE = 15876, NPC_CLUSTER_YELLOW = 15877,
  NPC_CLUSTER_BIG_BLUE = 15911, NPC_CLUSTER_BIG_GREEN = 15912, NPC_CLUSTER_BIG_PURPLE = 15913, NPC_CLUSTER_BIG_RED = 15914,
  NPC_CLUSTER_BIG_WHITE = 15915, NPC_CLUSTER_BIG_YELLOW = 15916, NPC_CLUSTER_ELUNE = 15918, GO_FIREWORK_LAUNCHER_1 = 180771,
  GO_FIREWORK_LAUNCHER_2 = 180868, GO_FIREWORK_LAUNCHER_3 = 180850, GO_CLUSTER_LAUNCHER_1 = 180772, GO_CLUSTER_LAUNCHER_2 = 180859,
  GO_CLUSTER_LAUNCHER_3 = 180869, GO_CLUSTER_LAUNCHER_4 = 180874, SPELL_ROCKET_BLUE = 26344, SPELL_ROCKET_GREEN = 26345,
  SPELL_ROCKET_PURPLE = 26346, SPELL_ROCKET_RED = 26347, SPELL_ROCKET_WHITE = 26348, SPELL_ROCKET_YELLOW = 26349,
  SPELL_ROCKET_BIG_BLUE = 26351, SPELL_ROCKET_BIG_GREEN = 26352, SPELL_ROCKET_BIG_PURPLE = 26353, SPELL_ROCKET_BIG_RED = 26354,
  SPELL_ROCKET_BIG_WHITE = 26355, SPELL_ROCKET_BIG_YELLOW = 26356, SPELL_LUNAR_FORTUNE = 26522, ANIM_GO_LAUNCH_FIREWORK = 3,
  ZONE_MOONGLADE = 493
}
 
enum  rabbitSpells {
  SPELL_SPRING_FLING = 61875, SPELL_SPRING_RABBIT_JUMP = 61724, SPELL_SPRING_RABBIT_WANDER = 61726, SPELL_SUMMON_BABY_BUNNY = 61727,
  SPELL_SPRING_RABBIT_IN_LOVE = 61728, NPC_SPRING_RABBIT = 32791
}
 
enum  TrainWrecker {
  GO_TOY_TRAIN = 193963, SPELL_TOY_TRAIN_PULSE = 61551, SPELL_WRECK_TRAIN = 62943, ACTION_WRECKED = 1,
  EVENT_DO_JUMP = 1, EVENT_DO_FACING = 2, EVENT_DO_WRECK = 3, EVENT_DO_DANCE = 4,
  MOVEID_CHASE = 1, MOVEID_JUMP = 2, NPC_EXULTING_WIND_UP_TRAIN_WRECKER = 81071
}
 
enum  EgbertMisc { EVENT_MOVE_POS = 1, EVENT_RETURN = 2 }
 
enum  PandarenMonkMisc {
  SPELL_PANDAREN_MONK = 69800, EVENT_FOCUS = 1, EVENT_EMOTE = 2, EVENT_FOLLOW = 3,
  EVENT_DRINK = 4
}
 

Functions

void AddSC_npcs_special ()
 

Variables

float const RANGE_TRIPWIRE = 15.0f
 
float const RANGE_GUARDS_MARK = 50.0f
 
SpawnAssociation spawnAssociations []
 
Position const AllianceCoords []
 
Position const HordeCoords []
 
uint32 const AllianceSoldierId [3]
 
uint32 const HordeSoldierId [3]
 
Position omenSummonPos = {7558.993f, -2839.999f, 450.0214f, 4.46f}
 

Macro Definition Documentation

#define A_RUNTOX   -3742.96f
#define A_RUNTOY   -4531.52f
#define A_RUNTOZ   11.91f
#define EXP_COST   100000
#define GOSSIP_ENGINEERING1   "Borean Tundra"
#define GOSSIP_ENGINEERING2   "Howling Fjord"
#define GOSSIP_ENGINEERING3   "Sholazar Basin"
#define GOSSIP_ENGINEERING4   "Icecrown"
#define GOSSIP_ENGINEERING5   "Storm Peaks"
#define GOSSIP_ENGINEERING6   "Underground..."
#define GOSSIP_HELLO_SAYGE   "Yes"
#define GOSSIP_ITEM_GRANT   "You have thought well, spirit. I ask you to grant me the strength of your body and the strength of your heart."
#define GOSSIP_LOST_ARCATRAZ_KEY   "I've lost my key to the Arcatraz."
#define GOSSIP_LOST_ESSENCE_INFUSED_MOONSTONE   "I've lost my Essence-Infused Moonstone."
#define GOSSIP_LOST_HC_KEY_TO_THE_FOCUSING_IRIS   "I've lost my Heroic Key to the Focusing Iris."
#define GOSSIP_LOST_KEY_TO_THE_FOCUSING_IRIS   "I've lost my Key to the Focusing Iris."
#define GOSSIP_LOST_SHADOWFORGE_KEY   "I've lost my key to the Blackrock Depths."
#define GOSSIP_LOST_SHATTERED_HALLS_KEY   "I've lost my key to the Shattered Halls."
#define GOSSIP_LOST_SKELETON_KEY   "I've lost my key to the Scholomance."
#define GOSSIP_LOST_THE_MASTERS_KEY   "I've lost my key to the Karazhan."
#define GOSSIP_LOST_VIOLET_HOLD_KEY   "I've lost my key to the Violet Hold."
#define GOSSIP_PET1   "How do I train my pet?"
#define GOSSIP_PET2   "I wish to untrain my pet."
#define GOSSIP_PET_CONFIRM   "Yes, please do."
#define GOSSIP_SENDACTION_SAYGE1   "Slay the Man"
#define GOSSIP_SENDACTION_SAYGE10   "Remain quiet"
#define GOSSIP_SENDACTION_SAYGE11   "Speak against your brother openly"
#define GOSSIP_SENDACTION_SAYGE12   "Help your brother in"
#define GOSSIP_SENDACTION_SAYGE13   "Keep your brother out without letting him know"
#define GOSSIP_SENDACTION_SAYGE14   "Take credit, keep gold"
#define GOSSIP_SENDACTION_SAYGE15   "Take credit, share the gold"
#define GOSSIP_SENDACTION_SAYGE16   "Let the knight take credit"
#define GOSSIP_SENDACTION_SAYGE17   "Thanks"
#define GOSSIP_SENDACTION_SAYGE2   "Turn him over to liege"
#define GOSSIP_SENDACTION_SAYGE3   "Confiscate the corn"
#define GOSSIP_SENDACTION_SAYGE4   "Let him go and have the corn"
#define GOSSIP_SENDACTION_SAYGE5   "Execute your friend painfully"
#define GOSSIP_SENDACTION_SAYGE6   "Execute your friend painlessly"
#define GOSSIP_SENDACTION_SAYGE7   "Let your friend go"
#define GOSSIP_SENDACTION_SAYGE8   "Confront the diplomat"
#define GOSSIP_SENDACTION_SAYGE9   "Show not so quiet defiance"
#define GOSSIP_TEXT_EXP   14736
#define GOSSIP_XP_OFF   "I no longer wish to gain experience."
#define GOSSIP_XP_ON   "I wish to start gaining experience again."
#define H_RUNTOX   -1016.44f
#define H_RUNTOY   -3508.48f
#define H_RUNTOZ   62.96f

Enumeration Type Documentation

Enumerator
SPELL_GUARDS_MARK 
AURA_DURATION_TIME_LEFT 
82 {
83  SPELL_GUARDS_MARK = 38067,
85 };
Definition: npcs_special.cpp:83
Definition: npcs_special.cpp:84
Enumerator
SPELL_BREWFEST_TOAST 
1434 {
1435  SPELL_BREWFEST_TOAST = 41586
1436 };
Definition: npcs_special.cpp:1435
Enumerator
EMOTE_HELLO_A 
EMOTE_HELLO_H 
EMOTE_CLUCK_TEXT 
QUEST_CLUCK 
FACTION_FRIENDLY 
FACTION_CHICKEN 
318 {
319  EMOTE_HELLO_A = 0,
320  EMOTE_HELLO_H = 1,
321  EMOTE_CLUCK_TEXT = 2,
322 
323  QUEST_CLUCK = 3861,
324  FACTION_FRIENDLY = 35,
325  FACTION_CHICKEN = 31
326 };
Definition: npcs_special.cpp:323
Definition: npcs_special.cpp:325
Definition: npcs_special.cpp:324
Definition: npcs_special.cpp:321
Definition: npcs_special.cpp:319
Definition: npcs_special.cpp:320
Enumerator
SPELL_BRAZIER 
SPELL_SEDUCTION 
SPELL_FIERY_AURA 
425 {
426  SPELL_BRAZIER = 45423,
427  SPELL_SEDUCTION = 47057,
428  SPELL_FIERY_AURA = 45427
429 };
Definition: npcs_special.cpp:428
Definition: npcs_special.cpp:427
Definition: npcs_special.cpp:426
enum Doctor
Enumerator
SAY_DOC 
DOCTOR_ALLIANCE 
DOCTOR_HORDE 
ALLIANCE_COORDS 
HORDE_COORDS 
583 {
584  SAY_DOC = 0,
585 
586  DOCTOR_ALLIANCE = 12939,
587  DOCTOR_HORDE = 12920,
588  ALLIANCE_COORDS = 7,
589  HORDE_COORDS = 6
590 };
Definition: npcs_special.cpp:587
Definition: npcs_special.cpp:584
Definition: npcs_special.cpp:588
Definition: npcs_special.cpp:589
Definition: npcs_special.cpp:586
enum EgbertMisc
Enumerator
EVENT_MOVE_POS 
EVENT_RETURN 
2517 {
2518  EVENT_MOVE_POS = 1,
2519  EVENT_RETURN = 2
2520 };
Definition: npcs_special.cpp:2519
Definition: npcs_special.cpp:2518
enum Fireworks
Enumerator
NPC_OMEN 
NPC_MINION_OF_OMEN 
NPC_FIREWORK_BLUE 
NPC_FIREWORK_GREEN 
NPC_FIREWORK_PURPLE 
NPC_FIREWORK_RED 
NPC_FIREWORK_YELLOW 
NPC_FIREWORK_WHITE 
NPC_FIREWORK_BIG_BLUE 
NPC_FIREWORK_BIG_GREEN 
NPC_FIREWORK_BIG_PURPLE 
NPC_FIREWORK_BIG_RED 
NPC_FIREWORK_BIG_YELLOW 
NPC_FIREWORK_BIG_WHITE 
NPC_CLUSTER_BLUE 
NPC_CLUSTER_RED 
NPC_CLUSTER_GREEN 
NPC_CLUSTER_PURPLE 
NPC_CLUSTER_WHITE 
NPC_CLUSTER_YELLOW 
NPC_CLUSTER_BIG_BLUE 
NPC_CLUSTER_BIG_GREEN 
NPC_CLUSTER_BIG_PURPLE 
NPC_CLUSTER_BIG_RED 
NPC_CLUSTER_BIG_WHITE 
NPC_CLUSTER_BIG_YELLOW 
NPC_CLUSTER_ELUNE 
GO_FIREWORK_LAUNCHER_1 
GO_FIREWORK_LAUNCHER_2 
GO_FIREWORK_LAUNCHER_3 
GO_CLUSTER_LAUNCHER_1 
GO_CLUSTER_LAUNCHER_2 
GO_CLUSTER_LAUNCHER_3 
GO_CLUSTER_LAUNCHER_4 
SPELL_ROCKET_BLUE 
SPELL_ROCKET_GREEN 
SPELL_ROCKET_PURPLE 
SPELL_ROCKET_RED 
SPELL_ROCKET_WHITE 
SPELL_ROCKET_YELLOW 
SPELL_ROCKET_BIG_BLUE 
SPELL_ROCKET_BIG_GREEN 
SPELL_ROCKET_BIG_PURPLE 
SPELL_ROCKET_BIG_RED 
SPELL_ROCKET_BIG_WHITE 
SPELL_ROCKET_BIG_YELLOW 
SPELL_LUNAR_FORTUNE 
ANIM_GO_LAUNCH_FIREWORK 
ZONE_MOONGLADE 
1956 {
1957  NPC_OMEN = 15467,
1958  NPC_MINION_OF_OMEN = 15466,
1959  NPC_FIREWORK_BLUE = 15879,
1960  NPC_FIREWORK_GREEN = 15880,
1961  NPC_FIREWORK_PURPLE = 15881,
1962  NPC_FIREWORK_RED = 15882,
1963  NPC_FIREWORK_YELLOW = 15883,
1964  NPC_FIREWORK_WHITE = 15884,
1965  NPC_FIREWORK_BIG_BLUE = 15885,
1966  NPC_FIREWORK_BIG_GREEN = 15886,
1967  NPC_FIREWORK_BIG_PURPLE = 15887,
1968  NPC_FIREWORK_BIG_RED = 15888,
1969  NPC_FIREWORK_BIG_YELLOW = 15889,
1970  NPC_FIREWORK_BIG_WHITE = 15890,
1971 
1972  NPC_CLUSTER_BLUE = 15872,
1973  NPC_CLUSTER_RED = 15873,
1974  NPC_CLUSTER_GREEN = 15874,
1975  NPC_CLUSTER_PURPLE = 15875,
1976  NPC_CLUSTER_WHITE = 15876,
1977  NPC_CLUSTER_YELLOW = 15877,
1978  NPC_CLUSTER_BIG_BLUE = 15911,
1979  NPC_CLUSTER_BIG_GREEN = 15912,
1980  NPC_CLUSTER_BIG_PURPLE = 15913,
1981  NPC_CLUSTER_BIG_RED = 15914,
1982  NPC_CLUSTER_BIG_WHITE = 15915,
1983  NPC_CLUSTER_BIG_YELLOW = 15916,
1984  NPC_CLUSTER_ELUNE = 15918,
1985 
1986  GO_FIREWORK_LAUNCHER_1 = 180771,
1987  GO_FIREWORK_LAUNCHER_2 = 180868,
1988  GO_FIREWORK_LAUNCHER_3 = 180850,
1989  GO_CLUSTER_LAUNCHER_1 = 180772,
1990  GO_CLUSTER_LAUNCHER_2 = 180859,
1991  GO_CLUSTER_LAUNCHER_3 = 180869,
1992  GO_CLUSTER_LAUNCHER_4 = 180874,
1993 
1994  SPELL_ROCKET_BLUE = 26344,
1995  SPELL_ROCKET_GREEN = 26345,
1996  SPELL_ROCKET_PURPLE = 26346,
1997  SPELL_ROCKET_RED = 26347,
1998  SPELL_ROCKET_WHITE = 26348,
1999  SPELL_ROCKET_YELLOW = 26349,
2000  SPELL_ROCKET_BIG_BLUE = 26351,
2001  SPELL_ROCKET_BIG_GREEN = 26352,
2002  SPELL_ROCKET_BIG_PURPLE = 26353,
2003  SPELL_ROCKET_BIG_RED = 26354,
2004  SPELL_ROCKET_BIG_WHITE = 26355,
2005  SPELL_ROCKET_BIG_YELLOW = 26356,
2006  SPELL_LUNAR_FORTUNE = 26522,
2007 
2009  ZONE_MOONGLADE = 493,
2010 };
Definition: npcs_special.cpp:1986
Definition: npcs_special.cpp:1988
Definition: npcs_special.cpp:1963
Definition: npcs_special.cpp:1965
Definition: npcs_special.cpp:1960
Definition: npcs_special.cpp:1964
Definition: npcs_special.cpp:2006
Definition: npcs_special.cpp:1973
Definition: npcs_special.cpp:2009
Definition: npcs_special.cpp:1977
Definition: npcs_special.cpp:1961
Definition: npcs_special.cpp:1972
Definition: npcs_special.cpp:1997
Definition: npcs_special.cpp:1976
Definition: npcs_special.cpp:1990
Definition: npcs_special.cpp:2003
Definition: npcs_special.cpp:1968
Definition: npcs_special.cpp:1974
Definition: npcs_special.cpp:1992
Definition: npcs_special.cpp:1999
Definition: npcs_special.cpp:1994
Definition: npcs_special.cpp:1996
Definition: npcs_special.cpp:1957
Definition: npcs_special.cpp:2008
Definition: npcs_special.cpp:1966
Definition: npcs_special.cpp:1995
Definition: npcs_special.cpp:1989
Definition: npcs_special.cpp:1959
Definition: npcs_special.cpp:1987
Definition: npcs_special.cpp:2001
Definition: npcs_special.cpp:1998
Definition: npcs_special.cpp:1982
Definition: npcs_special.cpp:2004
Definition: npcs_special.cpp:2005
Definition: npcs_special.cpp:1979
Definition: npcs_special.cpp:1984
Definition: npcs_special.cpp:1975
Definition: npcs_special.cpp:1962
Definition: npcs_special.cpp:1983
Definition: npcs_special.cpp:2000
Definition: npcs_special.cpp:1969
Definition: npcs_special.cpp:2002
Definition: npcs_special.cpp:1991
Definition: npcs_special.cpp:1970
Definition: npcs_special.cpp:1958
Definition: npcs_special.cpp:1967
Definition: npcs_special.cpp:1980
Definition: npcs_special.cpp:1978
Definition: npcs_special.cpp:1981
enum Garments
Todo:
get text for each NPC
Enumerator
SPELL_LESSER_HEAL_R2 
SPELL_FORTITUDE_R1 
QUEST_MOON 
QUEST_LIGHT_1 
QUEST_LIGHT_2 
QUEST_SPIRIT 
QUEST_DARKNESS 
ENTRY_SHAYA 
ENTRY_ROBERTS 
ENTRY_DOLF 
ENTRY_KORJA 
ENTRY_DG_KEL 
SAY_THANKS 
SAY_GOODBYE 
SAY_HEALED 
972 {
973  SPELL_LESSER_HEAL_R2 = 2052,
974  SPELL_FORTITUDE_R1 = 1243,
975 
976  QUEST_MOON = 5621,
977  QUEST_LIGHT_1 = 5624,
978  QUEST_LIGHT_2 = 5625,
979  QUEST_SPIRIT = 5648,
980  QUEST_DARKNESS = 5650,
981 
982  ENTRY_SHAYA = 12429,
983  ENTRY_ROBERTS = 12423,
984  ENTRY_DOLF = 12427,
985  ENTRY_KORJA = 12430,
986  ENTRY_DG_KEL = 12428,
987 
988  // used by 12429, 12423, 12427, 12430, 12428, but signed for 12429
989  SAY_THANKS = 0,
990  SAY_GOODBYE = 1,
991  SAY_HEALED = 2,
992 };
Definition: npcs_special.cpp:985
Definition: npcs_special.cpp:973
Definition: npcs_special.cpp:977
Definition: npcs_special.cpp:990
Definition: npcs_special.cpp:980
Definition: npcs_special.cpp:989
Definition: npcs_special.cpp:982
Definition: npcs_special.cpp:986
Definition: npcs_special.cpp:979
Definition: npcs_special.cpp:976
Definition: npcs_special.cpp:991
Definition: npcs_special.cpp:983
Definition: npcs_special.cpp:974
Definition: npcs_special.cpp:984
Definition: npcs_special.cpp:978
Enumerator
SPELL_DEATHTOUCH 
1139 {
1140  SPELL_DEATHTOUCH = 5
1141 };
Definition: npcs_special.cpp:1140
enum LockSmith
Enumerator
QUEST_HOW_TO_BRAKE_IN_TO_THE_ARCATRAZ 
QUEST_DARK_IRON_LEGACY 
QUEST_THE_KEY_TO_SCHOLOMANCE_A 
QUEST_THE_KEY_TO_SCHOLOMANCE_H 
QUEST_HOTTER_THAN_HELL_A 
QUEST_HOTTER_THAN_HELL_H 
QUEST_RETURN_TO_KHAGDAR 
QUEST_CONTAINMENT 
QUEST_ETERNAL_VIGILANCE 
QUEST_KEY_TO_THE_FOCUSING_IRIS 
QUEST_HC_KEY_TO_THE_FOCUSING_IRIS 
ITEM_ARCATRAZ_KEY 
ITEM_SHADOWFORGE_KEY 
ITEM_SKELETON_KEY 
ITEM_SHATTERED_HALLS_KEY 
ITEM_THE_MASTERS_KEY 
ITEM_VIOLET_HOLD_KEY 
ITEM_ESSENCE_INFUSED_MOONSTONE 
ITEM_KEY_TO_THE_FOCUSING_IRIS 
ITEM_HC_KEY_TO_THE_FOCUSING_IRIS 
SPELL_ARCATRAZ_KEY 
SPELL_SHADOWFORGE_KEY 
SPELL_SKELETON_KEY 
SPELL_SHATTERED_HALLS_KEY 
SPELL_THE_MASTERS_KEY 
SPELL_VIOLET_HOLD_KEY 
SPELL_ESSENCE_INFUSED_MOONSTONE 
1754 {
1756  QUEST_DARK_IRON_LEGACY = 3802,
1759  QUEST_HOTTER_THAN_HELL_A = 10758,
1760  QUEST_HOTTER_THAN_HELL_H = 10764,
1761  QUEST_RETURN_TO_KHAGDAR = 9837,
1762  QUEST_CONTAINMENT = 13159,
1763  QUEST_ETERNAL_VIGILANCE = 11011,
1766 
1767  ITEM_ARCATRAZ_KEY = 31084,
1768  ITEM_SHADOWFORGE_KEY = 11000,
1769  ITEM_SKELETON_KEY = 13704,
1770  ITEM_SHATTERED_HALLS_KEY = 28395,
1771  ITEM_THE_MASTERS_KEY = 24490,
1772  ITEM_VIOLET_HOLD_KEY = 42482,
1776 
1777  SPELL_ARCATRAZ_KEY = 54881,
1778  SPELL_SHADOWFORGE_KEY = 54882,
1779  SPELL_SKELETON_KEY = 54883,
1780  SPELL_SHATTERED_HALLS_KEY = 54884,
1781  SPELL_THE_MASTERS_KEY = 54885,
1782  SPELL_VIOLET_HOLD_KEY = 67253,
1784 };
Definition: npcs_special.cpp:1779
Definition: npcs_special.cpp:1782
Definition: npcs_special.cpp:1759
Definition: npcs_special.cpp:1781
Definition: npcs_special.cpp:1772
Definition: npcs_special.cpp:1755
Definition: npcs_special.cpp:1763
Definition: npcs_special.cpp:1770
Definition: npcs_special.cpp:1777
Definition: npcs_special.cpp:1774
Definition: npcs_special.cpp:1765
Definition: npcs_special.cpp:1775
Definition: npcs_special.cpp:1756
Definition: npcs_special.cpp:1768
Definition: npcs_special.cpp:1764
Definition: npcs_special.cpp:1773
Definition: npcs_special.cpp:1757
Definition: npcs_special.cpp:1771
Definition: npcs_special.cpp:1769
Definition: npcs_special.cpp:1783
Definition: npcs_special.cpp:1760
Definition: npcs_special.cpp:1778
Definition: npcs_special.cpp:1780
Definition: npcs_special.cpp:1758
Definition: npcs_special.cpp:1767
Definition: npcs_special.cpp:1761
Definition: npcs_special.cpp:1762
Enumerator
QUEST_BODY_HEART_A 
QUEST_BODY_HEART_H 
TEXT_ID_DEFAULT 
TEXT_ID_PROGRESS 
277 {
278  QUEST_BODY_HEART_A = 6001,
279  QUEST_BODY_HEART_H = 6002,
280 
281  TEXT_ID_DEFAULT = 4714,
282  TEXT_ID_PROGRESS = 4715
283 };
Definition: npcs_special.cpp:281
Definition: npcs_special.cpp:279
Definition: npcs_special.cpp:278
Definition: npcs_special.cpp:282
Enumerator
SPELL_PANDAREN_MONK 
EVENT_FOCUS 
EVENT_EMOTE 
EVENT_FOLLOW 
EVENT_DRINK 
2579 {
2580  SPELL_PANDAREN_MONK = 69800,
2581  EVENT_FOCUS = 1,
2582  EVENT_EMOTE = 2,
2583  EVENT_FOLLOW = 3,
2584  EVENT_DRINK = 4
2585 };
Definition: npcs_special.cpp:2584
Definition: npcs_special.cpp:2582
Definition: npcs_special.cpp:2581
Definition: npcs_special.cpp:2583
Definition: npcs_special.cpp:2580
enum PetTrainer
Enumerator
TEXT_ISHUNTER 
TEXT_NOTHUNTER 
TEXT_PETINFO 
TEXT_CONFIRM 
1690 {
1691  TEXT_ISHUNTER = 5838,
1692  TEXT_NOTHUNTER = 5839,
1693  TEXT_PETINFO = 13474,
1694  TEXT_CONFIRM = 7722
1695 };
Definition: npcs_special.cpp:1691
Definition: npcs_special.cpp:1693
Definition: npcs_special.cpp:1692
Definition: npcs_special.cpp:1694
Enumerator
SPELL_SPRING_FLING 
SPELL_SPRING_RABBIT_JUMP 
SPELL_SPRING_RABBIT_WANDER 
SPELL_SUMMON_BABY_BUNNY 
SPELL_SPRING_RABBIT_IN_LOVE 
NPC_SPRING_RABBIT 
2239 {
2240  SPELL_SPRING_FLING = 61875,
2241  SPELL_SPRING_RABBIT_JUMP = 61724,
2243  SPELL_SUMMON_BABY_BUNNY = 61727,
2245  NPC_SPRING_RABBIT = 32791
2246 };
Definition: npcs_special.cpp:2245
Definition: npcs_special.cpp:2241
Definition: npcs_special.cpp:2244
Definition: npcs_special.cpp:2243
Definition: npcs_special.cpp:2242
Definition: npcs_special.cpp:2240
enum Sayge
Enumerator
SPELL_DMG 
SPELL_RES 
SPELL_ARM 
SPELL_SPI 
SPELL_INT 
SPELL_STM 
SPELL_STR 
SPELL_AGI 
SPELL_FORTUNE 
1185 {
1186  SPELL_DMG = 23768, // dmg
1187  SPELL_RES = 23769, // res
1188  SPELL_ARM = 23767, // arm
1189  SPELL_SPI = 23738, // spi
1190  SPELL_INT = 23766, // int
1191  SPELL_STM = 23737, // stm
1192  SPELL_STR = 23735, // str
1193  SPELL_AGI = 23736, // agi
1194  SPELL_FORTUNE = 23765 // faire fortune
1195 };
Definition: npcs_special.cpp:1187
Definition: npcs_special.cpp:1194
Definition: npcs_special.cpp:1193
Definition: npcs_special.cpp:1192
Definition: npcs_special.cpp:1189
Definition: npcs_special.cpp:1188
Definition: npcs_special.cpp:1190
Definition: npcs_special.cpp:1186
Definition: npcs_special.cpp:1191
enum SpawnType
Enumerator
SPAWNTYPE_TRIPWIRE_ROOFTOP 
SPAWNTYPE_ALARMBOT 
69 {
70  SPAWNTYPE_TRIPWIRE_ROOFTOP, // no warning, summon Creature at smaller range
71  SPAWNTYPE_ALARMBOT, // cast guards mark and summon npc - if player shows up with that buff duration < 5 seconds attack
72 };
Definition: npcs_special.cpp:71
Definition: npcs_special.cpp:70
enum TonkMine
Enumerator
SPELL_TONK_MINE_DETONATE 
1377 {
1378  SPELL_TONK_MINE_DETONATE = 25099
1379 };
Definition: npcs_special.cpp:1378
Enumerator
NPC_TORCH_TOSSING_TARGET_BUNNY 
SPELL_TARGET_INDICATOR 
522 {
524  SPELL_TARGET_INDICATOR = 45723
525 };
Definition: npcs_special.cpp:523
Definition: npcs_special.cpp:524
Enumerator
NPC_ADVANCED_TARGET_DUMMY 
NPC_TARGET_DUMMY 
EVENT_TD_CHECK_COMBAT 
EVENT_TD_DESPAWN 
1464 {
1466  NPC_TARGET_DUMMY = 2673,
1467 
1469  EVENT_TD_DESPAWN = 2
1470 };
Definition: npcs_special.cpp:1466
Definition: npcs_special.cpp:1469
Definition: npcs_special.cpp:1465
Definition: npcs_special.cpp:1468
Enumerator
GO_TOY_TRAIN 
SPELL_TOY_TRAIN_PULSE 
SPELL_WRECK_TRAIN 
ACTION_WRECKED 
EVENT_DO_JUMP 
EVENT_DO_FACING 
EVENT_DO_WRECK 
EVENT_DO_DANCE 
MOVEID_CHASE 
MOVEID_JUMP 
NPC_EXULTING_WIND_UP_TRAIN_WRECKER 
2391 {
2392  GO_TOY_TRAIN = 193963,
2393  SPELL_TOY_TRAIN_PULSE = 61551,
2394  SPELL_WRECK_TRAIN = 62943,
2395  ACTION_WRECKED = 1,
2396  EVENT_DO_JUMP = 1,
2397  EVENT_DO_FACING = 2,
2398  EVENT_DO_WRECK = 3,
2399  EVENT_DO_DANCE = 4,
2400  MOVEID_CHASE = 1,
2401  MOVEID_JUMP = 2,
2402 
2404 };
Definition: npcs_special.cpp:2393
Definition: npcs_special.cpp:2398
Definition: npcs_special.cpp:2401
Definition: npcs_special.cpp:2403
Definition: npcs_special.cpp:2399
Definition: npcs_special.cpp:2392
Definition: npcs_special.cpp:2400
Definition: npcs_special.cpp:2396
Definition: npcs_special.cpp:2394
Definition: npcs_special.cpp:2397
Definition: npcs_special.cpp:2395
Enumerator
SPELL_BOREAN_TUNDRA 
SPELL_SHOLAZAR_BASIN 
SPELL_ICECROWN 
SPELL_STORM_PEAKS 
SPELL_HOWLING_FJORD 
SPELL_UNDERGROUND 
TEXT_WORMHOLE 
DATA_SHOW_UNDERGROUND 
1578 {
1579  SPELL_BOREAN_TUNDRA = 67834,
1580  SPELL_SHOLAZAR_BASIN = 67835,
1581  SPELL_ICECROWN = 67836,
1582  SPELL_STORM_PEAKS = 67837,
1583  SPELL_HOWLING_FJORD = 67838,
1584  SPELL_UNDERGROUND = 68081,
1585 
1586  TEXT_WORMHOLE = 907,
1587 
1589 };
Definition: npcs_special.cpp:1582
Definition: npcs_special.cpp:1588
Definition: npcs_special.cpp:1586
Definition: npcs_special.cpp:1584
Definition: npcs_special.cpp:1581
Definition: npcs_special.cpp:1580
Definition: npcs_special.cpp:1583
Definition: npcs_special.cpp:1579

Function Documentation

void AddSC_npcs_special ( )
2670 {
2671  new npc_air_force_bots();
2672  new npc_lunaclaw_spirit();
2673  new npc_chicken_cluck();
2674  new npc_dancing_flames();
2676  new npc_doctor();
2677  new npc_injured_patient();
2678  new npc_garments_of_quests();
2679  new npc_guardian();
2680  new npc_sayge();
2681  new npc_steam_tonk();
2682  new npc_tonk_mine();
2683  new npc_brewfest_reveler();
2684  new npc_training_dummy();
2685  new npc_wormhole();
2686  new npc_pet_trainer();
2687  new npc_locksmith();
2688  new npc_experience();
2689  new npc_firework();
2690  new npc_spring_rabbit();
2691  new npc_imp_in_a_ball();
2692  new npc_train_wrecker();
2693  new npc_egbert();
2694  new npc_pandaren_monk();
2695 }
Definition: npcs_special.cpp:328
Definition: npcs_special.cpp:1438
Definition: npcs_special.cpp:1381
Definition: npcs_special.cpp:1701
Definition: npcs_special.cpp:994
Definition: npcs_special.cpp:2587
Definition: npcs_special.cpp:2014
Definition: npcs_special.cpp:791
Definition: npcs_special.cpp:1591
Definition: npcs_special.cpp:640
Definition: npcs_special.cpp:527
Definition: npcs_special.cpp:1143
Definition: npcs_special.cpp:2405
Definition: npcs_special.cpp:1216
Definition: npcs_special.cpp:1343
Definition: npcs_special.cpp:287
Definition: npcs_special.cpp:2336
Definition: npcs_special.cpp:2522
Definition: npcs_special.cpp:2248
Definition: npcs_special.cpp:121
Definition: npcs_special.cpp:431
Definition: npcs_special.cpp:1472
Definition: npcs_special.cpp:1796
Definition: npcs_special.cpp:1901

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Variable Documentation

Position const AllianceCoords[]
Initial value:
=
{
{-3757.38f, -4533.05f, 14.16f, 3.62f},
{-3754.36f, -4539.13f, 14.16f, 5.13f},
{-3749.54f, -4540.25f, 14.28f, 3.34f},
{-3742.10f, -4536.85f, 14.28f, 3.64f},
{-3755.89f, -4529.07f, 14.05f, 0.57f},
{-3749.51f, -4527.08f, 14.07f, 5.26f},
{-3746.37f, -4525.35f, 14.16f, 5.22f},
}
uint32 const AllianceSoldierId[3]
Initial value:
=
{
12938,
12936,
12937
}
Position const HordeCoords[]
Initial value:
=
{
{-1013.75f, -3492.59f, 62.62f, 4.34f},
{-1017.72f, -3490.92f, 62.62f, 4.34f},
{-1015.77f, -3497.15f, 62.82f, 4.34f},
{-1019.51f, -3495.49f, 62.82f, 4.34f},
{-1017.25f, -3500.85f, 62.98f, 4.34f},
{-1020.95f, -3499.21f, 62.98f, 4.34f}
}
uint32 const HordeSoldierId[3]
Initial value:
=
{
12923,
12924,
12925
}
Position omenSummonPos = {7558.993f, -2839.999f, 450.0214f, 4.46f}
float const RANGE_GUARDS_MARK = 50.0f
float const RANGE_TRIPWIRE = 15.0f
SpawnAssociation spawnAssociations[]
Initial value:
=
{
{2614, 15241, SPAWNTYPE_ALARMBOT},
{2615, 15242, SPAWNTYPE_ALARMBOT},
{21974, 21976, SPAWNTYPE_ALARMBOT},
{21993, 15242, SPAWNTYPE_ALARMBOT},
{21996, 15241, SPAWNTYPE_ALARMBOT},
{21997, 21976, SPAWNTYPE_ALARMBOT},
{21999, 15241, SPAWNTYPE_TRIPWIRE_ROOFTOP},
{22001, 15242, SPAWNTYPE_TRIPWIRE_ROOFTOP},
{22002, 15242, SPAWNTYPE_TRIPWIRE_ROOFTOP},
{22003, 15241, SPAWNTYPE_TRIPWIRE_ROOFTOP},
{22063, 21976, SPAWNTYPE_TRIPWIRE_ROOFTOP},
{22065, 22064, SPAWNTYPE_ALARMBOT},
{22066, 22067, SPAWNTYPE_ALARMBOT},
{22068, 22064, SPAWNTYPE_TRIPWIRE_ROOFTOP},
{22069, 22064, SPAWNTYPE_ALARMBOT},
{22070, 22067, SPAWNTYPE_TRIPWIRE_ROOFTOP},
{22071, 22067, SPAWNTYPE_ALARMBOT},
{22078, 22077, SPAWNTYPE_ALARMBOT},
{22079, 22077, SPAWNTYPE_ALARMBOT},
{22080, 22077, SPAWNTYPE_TRIPWIRE_ROOFTOP},
{22086, 22085, SPAWNTYPE_ALARMBOT},
{22087, 22085, SPAWNTYPE_ALARMBOT},
{22088, 22085, SPAWNTYPE_TRIPWIRE_ROOFTOP},
{22090, 22089, SPAWNTYPE_ALARMBOT},
{22124, 22122, SPAWNTYPE_ALARMBOT},
{22125, 22122, SPAWNTYPE_ALARMBOT},
{22126, 22122, SPAWNTYPE_ALARMBOT}
}
Definition: npcs_special.cpp:71
Definition: npcs_special.cpp:70