Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
boss_kelthuzad.cpp File Reference
#include "ScriptMgr.h"
#include "ScriptedCreature.h"
#include "SpellScript.h"
#include "SpellAuraEffects.h"
#include "naxxramas.h"
#include "Player.h"
Include dependency graph for boss_kelthuzad.cpp:

Go to the source code of this file.

Classes

class  achievement_just_cant_get_enough
class  at_kelthuzad_center
class  boss_kelthuzad
struct  boss_kelthuzad::boss_kelthuzadAI
struct  NotCharmedTargetSelector
class  npc_kelthuzad_abomination
struct  npc_kelthuzad_abomination::npc_kelthuzad_abominationAI
class  spell_kelthuzad_detonate_mana
class  spell_kelthuzad_detonate_mana::spell_kelthuzad_detonate_mana_AuraScript

Macros

#define MAX_ABOMINATIONS   21
#define MAX_WASTES   49
#define MAX_WEAVERS   7

Enumerations

enum  Creatures { NPC_WASTE = 16427 , NPC_ABOMINATION = 16428 , NPC_WEAVER = 16429 , NPC_ICECROWN = 16441 }
enum  Events {
  EVENT_NONE , EVENT_BOLT , EVENT_NOVA , EVENT_CHAIN ,
  EVENT_CHAINED_SPELL , EVENT_DETONATE , EVENT_FISSURE , EVENT_BLAST ,
  EVENT_WASTE , EVENT_ABOMIN , EVENT_WEAVER , EVENT_ICECROWN ,
  EVENT_TRIGGER , EVENT_PHASE , EVENT_MORTAL_WOUND
}
enum  Spells {
  SPELL_FROST_BOLT = 28478 , H_SPELL_FROST_BOLT = 55802 , SPELL_FROST_BOLT_AOE = 28479 , H_SPELL_FROST_BOLT_AOE = 55807 ,
  SPELL_SHADOW_FISURE = 27810 , SPELL_VOID_BLAST = 27812 , SPELL_MANA_DETONATION = 27819 , SPELL_MANA_DETONATION_DAMAGE = 27820 ,
  SPELL_FROST_BLAST = 27808 , SPELL_CHAINS_OF_KELTHUZAD = 28410 , SPELL_KELTHUZAD_CHANNEL = 29423 , SPELL_BERSERK = 28498 ,
  SPELL_CURSE_OF_AGONY = 47864 , SPELL_SHADOW_BOLT = 47809 , SPELL_EARTH_SHOCK = 49231 , SPELL_HEALING_WAVE = 49273 ,
  SPELL_FROST_FIREBOLT = 47610 , SPELL_ARCANE_MISSILES = 42846 , SPELL_HEMORRHAGE = 48660 , SPELL_MUTILATE = 48666 ,
  SPELL_HOLY_SHOCK = 48825 , SPELL_HAMMER_OF_JUSTICE = 10308 , SPELL_VAMPIRIC_TOUCH = 48160 , SPELL_RENEW = 48068 ,
  SPELL_MULTI_SHOT = 49048 , SPELL_VOLLEY = 58434 , SPELL_BLADESTORM = 46924 , SPELL_CLEAVE = 47520 ,
  SPELL_MOONFIRE = 48463 , SPELL_LIFEBLOOM = 48451 , SPELL_PLAGUE_STRIKE = 49921 , SPELL_HOWLING_BLAST = 51411 ,
  SPELL_FRENZY = 28468 , SPELL_MORTAL_WOUND = 28467
}
enum  Yells {
  SAY_SAPP_DIALOG1 = 0 , SAY_SAPP_DIALOG2_LICH = 1 , SAY_SAPP_DIALOG3 = 2 , SAY_SAPP_DIALOG4_LICH = 3 ,
  SAY_SAPP_DIALOG5 = 4 , SAY_CAT_DIED = 5 , SAY_TAUNT = 6 , SAY_AGGRO = 7 ,
  SAY_SLAY = 8 , SAY_DEATH = 9 , SAY_CHAIN = 10 , SAY_FROST_BLAST = 11 ,
  SAY_REQUEST_AID = 12 , SAY_ANSWER_REQUEST = 13 , SAY_SUMMON_MINIONS = 14 , SAY_SPECIAL = 15
}

Functions

void AddSC_boss_kelthuzad ()

Variables

const Position Pos [12]
const Position PosAbominations [MAX_ABOMINATIONS]
const Position PosWastes [MAX_WASTES]
const Position PosWeavers [MAX_WEAVERS]

Macro Definition Documentation

◆ MAX_ABOMINATIONS

#define MAX_ABOMINATIONS   21

Definition at line 141 of file boss_kelthuzad.cpp.

Referenced by at_kelthuzad_center::OnTrigger().

◆ MAX_WASTES

#define MAX_WASTES   49

Definition at line 168 of file boss_kelthuzad.cpp.

Referenced by at_kelthuzad_center::OnTrigger().

◆ MAX_WEAVERS

#define MAX_WEAVERS   7

Definition at line 223 of file boss_kelthuzad.cpp.

Referenced by at_kelthuzad_center::OnTrigger().

Enumeration Type Documentation

◆ Creatures

enum Creatures
Enumerator
NPC_WASTE 
NPC_ABOMINATION 
NPC_WEAVER 
NPC_ICECROWN 

Definition at line 115 of file boss_kelthuzad.cpp.

◆ Events

enum Events
Enumerator
EVENT_NONE 
EVENT_BOLT 
EVENT_NOVA 
EVENT_CHAIN 
EVENT_CHAINED_SPELL 
EVENT_DETONATE 
EVENT_FISSURE 
EVENT_BLAST 
EVENT_WASTE 
EVENT_ABOMIN 
EVENT_WEAVER 
EVENT_ICECROWN 
EVENT_TRIGGER 
EVENT_PHASE 
EVENT_MORTAL_WOUND 

Definition at line 42 of file boss_kelthuzad.cpp.

◆ Spells

enum Spells
Enumerator
SPELL_FROST_BOLT 
H_SPELL_FROST_BOLT 
SPELL_FROST_BOLT_AOE 
H_SPELL_FROST_BOLT_AOE 
SPELL_SHADOW_FISURE 
SPELL_VOID_BLAST 
SPELL_MANA_DETONATION 
SPELL_MANA_DETONATION_DAMAGE 
SPELL_FROST_BLAST 
SPELL_CHAINS_OF_KELTHUZAD 
SPELL_KELTHUZAD_CHANNEL 
SPELL_BERSERK 
SPELL_CURSE_OF_AGONY 
SPELL_SHADOW_BOLT 
SPELL_EARTH_SHOCK 
SPELL_HEALING_WAVE 
SPELL_FROST_FIREBOLT 
SPELL_ARCANE_MISSILES 
SPELL_HEMORRHAGE 
SPELL_MUTILATE 
SPELL_HOLY_SHOCK 
SPELL_HAMMER_OF_JUSTICE 
SPELL_VAMPIRIC_TOUCH 
SPELL_RENEW 
SPELL_MULTI_SHOT 
SPELL_VOLLEY 
SPELL_BLADESTORM 
SPELL_CLEAVE 
SPELL_MOONFIRE 
SPELL_LIFEBLOOM 
SPELL_PLAGUE_STRIKE 
SPELL_HOWLING_BLAST 
SPELL_FRENZY 
SPELL_MORTAL_WOUND 

Definition at line 63 of file boss_kelthuzad.cpp.

◆ Yells

enum Yells
Enumerator
SAY_SAPP_DIALOG1 
SAY_SAPP_DIALOG2_LICH 
SAY_SAPP_DIALOG3 
SAY_SAPP_DIALOG4_LICH 
SAY_SAPP_DIALOG5 
SAY_CAT_DIED 
SAY_TAUNT 
SAY_AGGRO 
SAY_SLAY 
SAY_DEATH 
SAY_CHAIN 
SAY_FROST_BLAST 
SAY_REQUEST_AID 
SAY_ANSWER_REQUEST 
SAY_SUMMON_MINIONS 
SAY_SPECIAL 

Definition at line 20 of file boss_kelthuzad.cpp.

Function Documentation

◆ AddSC_boss_kelthuzad()

void AddSC_boss_kelthuzad ( )

Definition at line 821 of file boss_kelthuzad.cpp.

Referenced by AddNorthrendScripts().

Variable Documentation

◆ Pos

const Position Pos[12]
Initial value:
=
{
{3783.272705f, -5062.697266f, 143.711203f, 3.617599f},
{3730.291260f, -5027.239258f, 143.956909f, 4.461900f},
{3757.6f, -5172.0f, 143.7f, 1.97f},
{3759.355225f, -5174.128418f, 143.802383f, 2.170104f},
{3700.724365f, -5185.123047f, 143.928024f, 1.309310f},
{3700.86f, -5181.29f, 143.928024f, 1.42f},
{3754.431396f, -5080.727734f, 142.036316f, 3.736189f},
{3724.396484f, -5061.330566f, 142.032700f, 4.564785f},
{3732.02f, -5028.53f, 143.92f, 4.49f},
{3687.571777f, -5126.831055f, 142.017807f, 0.604023f},
{3707.990733f, -5151.450195f, 142.032562f, 1.376855f},
{3782.76f, -5062.97f, 143.79f, 3.82f},
}

Definition at line 123 of file boss_kelthuzad.cpp.

Referenced by boss_kelthuzad::boss_kelthuzadAI::UpdateAI().

◆ PosAbominations

const Position PosAbominations[MAX_ABOMINATIONS]
Initial value:
=
{
{3755.52f, -5155.22f, 143.480f, 2.0f},
{3744.35f, -5164.03f, 143.590f, 2.00f},
{3749.28f, -5159.04f, 143.190f, 2.0f},
{3774.47f, -5076.28f, 143.528f, 2.15912f},
{3765.94f, -5074.15f, 143.186f, 3.77233f},
{3763.15f, -5063.36f, 143.694f, 3.77233f},
{3737.81f, -5045.69f, 143.709f, 4.9033f},
{3728.13f, -5045.01f, 143.355f, 1.45069f},
{3721.56f, -5048.35f, 143.542f, 1.45069f},
{3689.55f, -5049.66f, 143.637f, 5.2104f},
{3681.71f, -5053.03f, 143.242f, 2.47957f},
{3677.64f, -5061.44f, 143.358f, 2.47957f},
{3654.2f, -5090.87f, 143.469f, 1.0313f},
{3650.39f, -5097.45f, 143.496f, 2.5047f},
{3658.7f, -5103.59f, 143.607f, 3.3278f},
{3659.02f, -5133.97f, 143.624f, 3.84538f},
{3666.33f, -5139.34f, 143.183f, 3.84538f},
{3669.74f, -5149.63f, 143.678f, 0.528643f},
{3695.53f, -5169.53f, 143.671f, 2.11908f},
{3701.98f, -5166.51f, 143.395f, 1.24257f},
{3709.62f, -5169.15f, 143.576f, 5.97695f},
}

Definition at line 142 of file boss_kelthuzad.cpp.

Referenced by at_kelthuzad_center::OnTrigger().

◆ PosWastes

const Position PosWastes[MAX_WASTES]

Definition at line 169 of file boss_kelthuzad.cpp.

Referenced by at_kelthuzad_center::OnTrigger().

◆ PosWeavers

const Position PosWeavers[MAX_WEAVERS]
Initial value:
=
{
{3752.45f, -5168.35f, 143.562f, 1.6094f},
{3772.2f, -5070.04f, 143.329f, 1.93686f},
{3732.28f, -5032.88f, 143.771f, 3.08355f},
{3689.05f, -5055.7f, 143.172f, 6.09554f},
{3649.45f, -5093.17f, 143.299f, 2.51805f},
{3659.7f, -5144.49f, 143.363f, 4.08806f},
{3704.71f, -5175.96f, 143.597f, 3.36549f},
}

Definition at line 224 of file boss_kelthuzad.cpp.

Referenced by at_kelthuzad_center::OnTrigger().