TrinityCore
Loading...
Searching...
No Matches
boss_kelthuzad.cpp File Reference
#include "ScriptMgr.h"
#include "GameObject.h"
#include "InstanceScript.h"
#include "MotionMaster.h"
#include "naxxramas.h"
#include "ObjectAccessor.h"
#include "Player.h"
#include "PlayerAI.h"
#include "ScriptedCreature.h"
#include "SpellAuraEffects.h"
#include "SpellScript.h"
#include "TemporarySummon.h"
+ Include dependency graph for boss_kelthuzad.cpp:

Go to the source code of this file.

Classes

class  KelThuzadCharmedPlayerAI
 
struct  KelThuzadCharmedPlayerAI::CharmedPlayerTargetSelectPred
 
struct  ManaUserTargetSelector
 
struct  boss_kelthuzad
 
struct  npc_kelthuzad_minionAI
 
struct  npc_kelthuzad_skeleton
 
struct  npc_kelthuzad_banshee
 
struct  npc_kelthuzad_abomination
 
struct  npc_kelthuzad_guardian
 
struct  npc_kelthuzad_shadow_fissure
 
class  spell_kelthuzad_chains
 
class  spell_kelthuzad_detonate_mana
 
class  spell_kelthuzad_frost_blast
 
class  at_kelthuzad_center
 
class  achievement_just_cant_get_enough
 

Enumerations

enum  Texts {
  SAY_AGGRO = 7 , SAY_SLAY = 8 , SAY_DEATH = 9 , SAY_CHAINS = 10 ,
  SAY_REQUEST_AID = 12 , EMOTE_PHASE_TWO = 13 , SAY_SUMMON_MINIONS = 14 , SAY_SPECIAL = 15 ,
  SAY_ANSWER_REQUEST = 3 , EMOTE_GUARDIAN_FLEE = 0 , EMOTE_GUARDIAN_APPEAR = 1
}
 
enum  Events {
  EVENT_SKELETON = 1 , EVENT_BANSHEE , EVENT_ABOMINATION , EVENT_DESPAWN_MINIONS ,
  EVENT_PHASE_TWO , EVENT_FROSTBOLT_VOLLEY , EVENT_SHADOW_FISSURE , EVENT_DETONATE_MANA ,
  EVENT_FROST_BLAST , EVENT_CHAINS , EVENT_TRANSITION_REPLY , EVENT_TRANSITION_SUMMON
}
 
enum  Actions { ACTION_BEGIN_ENCOUNTER , ACTION_JUST_SUMMONED , ACTION_ABOMINATION_DIED , ACTION_KELTHUZAD_DIED }
 
enum  KTData { DATA_MINION_POCKET_ID , DATA_ABOMINATION_DEATH_COUNT }
 
enum  Spells {
  SPELL_VISUAL_CHANNEL = 29423 , SPELL_FROSTBOLT_SINGLE = 28478 , SPELL_FROSTBOLT_VOLLEY = 28479 , SPELL_SHADOW_FISSURE = 27810 ,
  SPELL_DETONATE_MANA = 27819 , SPELL_MANA_DETONATION_DAMAGE = 27820 , SPELL_FROST_BLAST = 27808 , SPELL_FROST_BLAST_DMG = 29879 ,
  SPELL_CHAINS = 28410 , SPELL_CHAINS_DUMMY = 28408 , SPELL_BERSERK = 28498 , SPELL_MORTAL_WOUND = 28467 ,
  SPELL_BLOOD_TAP = 28470 , SPELL_VOID_BLAST = 27812
}
 
enum  SummonGroups { SUMMON_GROUP_GUARDIAN_FIRST = 01 , SUMMON_GROUP_MINION_FIRST = 05 }
 
enum  Phases { PHASE_ONE = 1 , PHASE_TWO = 2 }
 
enum  Movements { MOVEMENT_MINION_RANDOM = 1 }
 
enum  Creatures {
  NPC_SKELETON1 = 16427 , NPC_SKELETON2 = 23561 , NPC_ABOMINATION1 = 16428 , NPC_ABOMINATION2 = 23562 ,
  NPC_BANSHEE1 = 16429 , NPC_BANSHEE2 = 23563 , NPC_GUARDIAN = 16441
}
 

Functions

static Position const & GetRandomMinionSpawnPoint ()
 
void AddSC_boss_kelthuzad ()
 

Variables

static const uint8 nGuardianSpawns = 4
 
static const uint8 nMinionGroups = 7
 
static NAXData64 const portalList [] = { DATA_KELTHUZAD_PORTAL01, DATA_KELTHUZAD_PORTAL02, DATA_KELTHUZAD_PORTAL03, DATA_KELTHUZAD_PORTAL04 }
 
static const uint8 nMinionSpawnPoints = 7
 
static const Position minionSpawnPoints [nMinionSpawnPoints]
 
static const float MINION_AGGRO_DISTANCE = 20.0f
 

Enumeration Type Documentation

◆ Actions

enum Actions
Enumerator
ACTION_BEGIN_ENCOUNTER 
ACTION_JUST_SUMMONED 
ACTION_ABOMINATION_DIED 
ACTION_KELTHUZAD_DIED 

Definition at line 71 of file boss_kelthuzad.cpp.

◆ Creatures

enum Creatures
Enumerator
NPC_SKELETON1 
NPC_SKELETON2 
NPC_ABOMINATION1 
NPC_ABOMINATION2 
NPC_BANSHEE1 
NPC_BANSHEE2 
NPC_GUARDIAN 

Definition at line 133 of file boss_kelthuzad.cpp.

◆ Events

enum Events
Enumerator
EVENT_SKELETON 
EVENT_BANSHEE 
EVENT_ABOMINATION 
EVENT_DESPAWN_MINIONS 
EVENT_PHASE_TWO 
EVENT_FROSTBOLT_VOLLEY 
EVENT_SHADOW_FISSURE 
EVENT_DETONATE_MANA 
EVENT_FROST_BLAST 
EVENT_CHAINS 
EVENT_TRANSITION_REPLY 
EVENT_TRANSITION_SUMMON 

Definition at line 50 of file boss_kelthuzad.cpp.

◆ KTData

enum KTData
Enumerator
DATA_MINION_POCKET_ID 
DATA_ABOMINATION_DEATH_COUNT 

Definition at line 79 of file boss_kelthuzad.cpp.

◆ Movements

enum Movements
Enumerator
MOVEMENT_MINION_RANDOM 

Definition at line 128 of file boss_kelthuzad.cpp.

◆ Phases

enum Phases
Enumerator
PHASE_ONE 
PHASE_TWO 

Definition at line 122 of file boss_kelthuzad.cpp.

◆ Spells

enum Spells
Enumerator
SPELL_VISUAL_CHANNEL 
SPELL_FROSTBOLT_SINGLE 
SPELL_FROSTBOLT_VOLLEY 
SPELL_SHADOW_FISSURE 
SPELL_DETONATE_MANA 
SPELL_MANA_DETONATION_DAMAGE 
SPELL_FROST_BLAST 
SPELL_FROST_BLAST_DMG 
SPELL_CHAINS 
SPELL_CHAINS_DUMMY 
SPELL_BERSERK 
SPELL_MORTAL_WOUND 
SPELL_BLOOD_TAP 
SPELL_VOID_BLAST 

Definition at line 85 of file boss_kelthuzad.cpp.

◆ SummonGroups

Enumerator
SUMMON_GROUP_GUARDIAN_FIRST 
SUMMON_GROUP_MINION_FIRST 

Definition at line 115 of file boss_kelthuzad.cpp.

◆ Texts

enum Texts
Enumerator
SAY_AGGRO 
SAY_SLAY 
SAY_DEATH 
SAY_CHAINS 
SAY_REQUEST_AID 
EMOTE_PHASE_TWO 
SAY_SUMMON_MINIONS 
SAY_SPECIAL 
SAY_ANSWER_REQUEST 
EMOTE_GUARDIAN_FLEE 
EMOTE_GUARDIAN_APPEAR 

Definition at line 31 of file boss_kelthuzad.cpp.

Function Documentation

◆ AddSC_boss_kelthuzad()

void AddSC_boss_kelthuzad ( )

Definition at line 952 of file boss_kelthuzad.cpp.

+ Here is the caller graph for this function:

◆ GetRandomMinionSpawnPoint()

static Position const & GetRandomMinionSpawnPoint ( )
inlinestatic

Definition at line 154 of file boss_kelthuzad.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Variable Documentation

◆ MINION_AGGRO_DISTANCE

const float MINION_AGGRO_DISTANCE = 20.0f
static

Definition at line 567 of file boss_kelthuzad.cpp.

◆ minionSpawnPoints

const Position minionSpawnPoints[nMinionSpawnPoints]
static
Initial value:
= {
{ 3768.40f, -5072.00f, 143.65f },
{ 3729.30f, -5044.10f, 143.65f },
{ 3683.00f, -5054.05f, 143.65f },
{ 3654.15f, -5093.48f, 143.65f },
{ 3664.55f, -5140.50f, 143.65f },
{ 3704.00f, -5170.00f, 143.65f },
{ 3751.95f, -5158.90f, 143.65f }
}

Definition at line 145 of file boss_kelthuzad.cpp.

◆ nGuardianSpawns

const uint8 nGuardianSpawns = 4
static

Definition at line 113 of file boss_kelthuzad.cpp.

◆ nMinionGroups

const uint8 nMinionGroups = 7
static

Definition at line 114 of file boss_kelthuzad.cpp.

◆ nMinionSpawnPoints

const uint8 nMinionSpawnPoints = 7
static

Definition at line 144 of file boss_kelthuzad.cpp.

◆ portalList