AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
boss_four_horsemen.cpp File Reference
#include "CreatureScript.h"
#include "Player.h"
#include "ScriptedCreature.h"
#include "SpellAuraEffects.h"
#include "SpellScript.h"
#include "SpellScriptLoader.h"
#include "naxxramas.h"

Go to the source code of this file.

Classes

class  boss_four_horsemen
 
struct  boss_four_horsemen::boss_four_horsemenAI
 
class  spell_four_horsemen_mark_aura
 

Enumerations

enum  Spells {
  SPELL_BERSERK = 26662 ,
  SPELL_MARK_OF_KORTHAZZ = 28832 ,
  SPELL_MARK_OF_BLAUMEUX = 28833 ,
  SPELL_MARK_OF_RIVENDARE = 28834 ,
  SPELL_MARK_OF_ZELIEK = 28835 ,
  SPELL_MARK_DAMAGE = 28836 ,
  SPELL_KORTHAZZ_METEOR_10 = 28884 ,
  SPELL_KORTHAZZ_METEOR_25 = 57467 ,
  SPELL_BLAUMEUX_SHADOW_BOLT_10 = 57374 ,
  SPELL_BLAUMEUX_SHADOW_BOLT_25 = 57464 ,
  SPELL_BLAUMEUX_VOID_ZONE_10 = 28863 ,
  SPELL_BLAUMEUX_VOID_ZONE_25 = 57463 ,
  SPELL_BLAUMEUX_UNYIELDING_PAIN = 57381 ,
  SPELL_ZELIEK_HOLY_WRATH_10 = 28883 ,
  SPELL_ZELIEK_HOLY_WRATH_25 = 57466 ,
  SPELL_ZELIEK_HOLY_BOLT_10 = 57376 ,
  SPELL_ZELIEK_HOLY_BOLT_25 = 57465 ,
  SPELL_ZELIEK_CONDEMNATION = 57377 ,
  SPELL_RIVENDARE_UNHOLY_SHADOW_10 = 28882 ,
  SPELL_RIVENDARE_UNHOLY_SHADOW_25 = 57369
}
 
enum  Events {
  EVENT_MARK_CAST = 1 ,
  EVENT_PRIMARY_SPELL = 2 ,
  EVENT_SECONDARY_SPELL = 3 ,
  EVENT_BERSERK = 4
}
 
enum  Misc {
  MOVE_PHASE_NONE = 0 ,
  MOVE_PHASE_STARTED = 1 ,
  MOVE_PHASE_FINISHED = 2 ,
  HORSEMAN_ZELIEK = 0 ,
  HORSEMAN_BLAUMEUX = 1 ,
  HORSEMAN_RIVENDARE = 2 ,
  HORSEMAN_KORTHAZZ = 3
}
 
enum  FourHorsemen {
  SAY_AGGRO = 0 ,
  SAY_TAUNT = 1 ,
  SAY_SPECIAL = 2 ,
  SAY_SLAY = 3 ,
  SAY_DEATH = 4 ,
  EMOTE_RAGECAST = 7
}
 

Functions

void AddSC_boss_four_horsemen ()
 

Variables

const uint32 TABLE_SPELL_MARK [4] = {SPELL_MARK_OF_ZELIEK, SPELL_MARK_OF_BLAUMEUX, SPELL_MARK_OF_RIVENDARE, SPELL_MARK_OF_KORTHAZZ}
 
const uint32 TABLE_SPELL_PRIMARY_10 [4] = {SPELL_ZELIEK_HOLY_BOLT_10, SPELL_BLAUMEUX_SHADOW_BOLT_10, SPELL_RIVENDARE_UNHOLY_SHADOW_10, SPELL_KORTHAZZ_METEOR_10}
 
const uint32 TABLE_SPELL_PRIMARY_25 [4] = {SPELL_ZELIEK_HOLY_BOLT_25, SPELL_BLAUMEUX_SHADOW_BOLT_25, SPELL_RIVENDARE_UNHOLY_SHADOW_25, SPELL_KORTHAZZ_METEOR_25}
 
const uint32 TABLE_SPELL_PUNISH [4] = {SPELL_ZELIEK_CONDEMNATION, SPELL_BLAUMEUX_UNYIELDING_PAIN, 0, 0}
 
const uint32 TABLE_SPELL_SECONDARY_10 [4] = {SPELL_ZELIEK_HOLY_WRATH_10, SPELL_BLAUMEUX_VOID_ZONE_10, 0, 0}
 
const uint32 TABLE_SPELL_SECONDARY_25 [4] = {SPELL_ZELIEK_HOLY_WRATH_25, SPELL_BLAUMEUX_VOID_ZONE_25, 0, 0}
 
const Position WaypointPositions [12]
 

Enumeration Type Documentation

◆ Events

enum Events
Enumerator
EVENT_MARK_CAST 
EVENT_PRIMARY_SPELL 
EVENT_SECONDARY_SPELL 
EVENT_BERSERK 
56{
61};
@ EVENT_PRIMARY_SPELL
Definition boss_four_horsemen.cpp:58
@ EVENT_MARK_CAST
Definition boss_four_horsemen.cpp:57
@ EVENT_BERSERK
Definition boss_four_horsemen.cpp:60
@ EVENT_SECONDARY_SPELL
Definition boss_four_horsemen.cpp:59

◆ FourHorsemen

Enumerator
SAY_AGGRO 
SAY_TAUNT 
SAY_SPECIAL 
SAY_SLAY 
SAY_DEATH 
EMOTE_RAGECAST 
77{
78 SAY_AGGRO = 0,
79 SAY_TAUNT = 1,
80 SAY_SPECIAL = 2,
81 SAY_SLAY = 3,
82 SAY_DEATH = 4,
84};
@ SAY_DEATH
Definition boss_four_horsemen.cpp:82
@ EMOTE_RAGECAST
Definition boss_four_horsemen.cpp:83
@ SAY_AGGRO
Definition boss_four_horsemen.cpp:78
@ SAY_SPECIAL
Definition boss_four_horsemen.cpp:80
@ SAY_SLAY
Definition boss_four_horsemen.cpp:81
@ SAY_TAUNT
Definition boss_four_horsemen.cpp:79

◆ Misc

enum Misc
Enumerator
MOVE_PHASE_NONE 
MOVE_PHASE_STARTED 
MOVE_PHASE_FINISHED 
HORSEMAN_ZELIEK 
HORSEMAN_BLAUMEUX 
HORSEMAN_RIVENDARE 
HORSEMAN_KORTHAZZ 
64{
65 // Movement
69 // Horseman
74};
@ MOVE_PHASE_NONE
Definition boss_four_horsemen.cpp:66
@ MOVE_PHASE_FINISHED
Definition boss_four_horsemen.cpp:68
@ HORSEMAN_BLAUMEUX
Definition boss_four_horsemen.cpp:71
@ HORSEMAN_KORTHAZZ
Definition boss_four_horsemen.cpp:73
@ MOVE_PHASE_STARTED
Definition boss_four_horsemen.cpp:67
@ HORSEMAN_ZELIEK
Definition boss_four_horsemen.cpp:70
@ HORSEMAN_RIVENDARE
Definition boss_four_horsemen.cpp:72

◆ Spells

enum Spells
Enumerator
SPELL_BERSERK 
SPELL_MARK_OF_KORTHAZZ 
SPELL_MARK_OF_BLAUMEUX 
SPELL_MARK_OF_RIVENDARE 
SPELL_MARK_OF_ZELIEK 
SPELL_MARK_DAMAGE 
SPELL_KORTHAZZ_METEOR_10 
SPELL_KORTHAZZ_METEOR_25 
SPELL_BLAUMEUX_SHADOW_BOLT_10 
SPELL_BLAUMEUX_SHADOW_BOLT_25 
SPELL_BLAUMEUX_VOID_ZONE_10 
SPELL_BLAUMEUX_VOID_ZONE_25 
SPELL_BLAUMEUX_UNYIELDING_PAIN 
SPELL_ZELIEK_HOLY_WRATH_10 
SPELL_ZELIEK_HOLY_WRATH_25 
SPELL_ZELIEK_HOLY_BOLT_10 
SPELL_ZELIEK_HOLY_BOLT_25 
SPELL_ZELIEK_CONDEMNATION 
SPELL_RIVENDARE_UNHOLY_SHADOW_10 
SPELL_RIVENDARE_UNHOLY_SHADOW_25 
27{
28 SPELL_BERSERK = 26662,
29 // Marks
34 SPELL_MARK_DAMAGE = 28836,
35 // Korth'azz
38 // Blaumeux
44 // Zeliek
50 // Rivendare
53};
@ SPELL_MARK_OF_RIVENDARE
Definition boss_four_horsemen.cpp:32
@ SPELL_KORTHAZZ_METEOR_25
Definition boss_four_horsemen.cpp:37
@ SPELL_BLAUMEUX_SHADOW_BOLT_10
Definition boss_four_horsemen.cpp:39
@ SPELL_ZELIEK_HOLY_BOLT_10
Definition boss_four_horsemen.cpp:47
@ SPELL_ZELIEK_CONDEMNATION
Definition boss_four_horsemen.cpp:49
@ SPELL_MARK_DAMAGE
Definition boss_four_horsemen.cpp:34
@ SPELL_RIVENDARE_UNHOLY_SHADOW_25
Definition boss_four_horsemen.cpp:52
@ SPELL_BLAUMEUX_SHADOW_BOLT_25
Definition boss_four_horsemen.cpp:40
@ SPELL_BLAUMEUX_VOID_ZONE_25
Definition boss_four_horsemen.cpp:42
@ SPELL_RIVENDARE_UNHOLY_SHADOW_10
Definition boss_four_horsemen.cpp:51
@ SPELL_ZELIEK_HOLY_WRATH_10
Definition boss_four_horsemen.cpp:45
@ SPELL_MARK_OF_ZELIEK
Definition boss_four_horsemen.cpp:33
@ SPELL_BLAUMEUX_UNYIELDING_PAIN
Definition boss_four_horsemen.cpp:43
@ SPELL_BLAUMEUX_VOID_ZONE_10
Definition boss_four_horsemen.cpp:41
@ SPELL_MARK_OF_KORTHAZZ
Definition boss_four_horsemen.cpp:30
@ SPELL_BERSERK
Definition boss_four_horsemen.cpp:28
@ SPELL_ZELIEK_HOLY_BOLT_25
Definition boss_four_horsemen.cpp:48
@ SPELL_MARK_OF_BLAUMEUX
Definition boss_four_horsemen.cpp:31
@ SPELL_KORTHAZZ_METEOR_10
Definition boss_four_horsemen.cpp:36
@ SPELL_ZELIEK_HOLY_WRATH_25
Definition boss_four_horsemen.cpp:46

Function Documentation

◆ AddSC_boss_four_horsemen()

void AddSC_boss_four_horsemen ( )
399{
400 new boss_four_horsemen();
402}
#define RegisterSpellScript(spell_script)
Definition SpellScriptLoader.h:88
Definition boss_four_horsemen.cpp:121
Definition boss_four_horsemen.cpp:348

References RegisterSpellScript.

Referenced by AddNorthrendScripts().

Variable Documentation

◆ TABLE_SPELL_MARK

◆ TABLE_SPELL_PRIMARY_10

◆ TABLE_SPELL_PRIMARY_25

◆ TABLE_SPELL_PUNISH

◆ TABLE_SPELL_SECONDARY_10

◆ TABLE_SPELL_SECONDARY_25

◆ WaypointPositions

const Position WaypointPositions[12]
Initial value:
=
{
{2542.3f, -2984.1f, 241.49f, 5.362f},
{2547.6f, -2999.4f, 241.34f, 5.049f},
{2542.9f, -3015.0f, 241.35f, 4.654f},
{2498.3f, -2961.8f, 241.28f, 3.267f},
{2487.7f, -2959.2f, 241.28f, 2.890f},
{2469.4f, -2947.6f, 241.28f, 2.576f},
{2553.8f, -2968.4f, 241.33f, 5.757f},
{2564.3f, -2972.5f, 241.33f, 5.890f},
{2583.9f, -2971.6f, 241.35f, 0.008f},
{2534.5f, -2921.7f, 241.53f, 1.363f},
{2523.5f, -2902.8f, 241.28f, 2.095f},
{2517.8f, -2896.6f, 241.28f, 2.315f}
}
101{
102 // Thane waypoints
103 {2542.3f, -2984.1f, 241.49f, 5.362f},
104 {2547.6f, -2999.4f, 241.34f, 5.049f},
105 {2542.9f, -3015.0f, 241.35f, 4.654f},
106 // Lady waypoints
107 {2498.3f, -2961.8f, 241.28f, 3.267f},
108 {2487.7f, -2959.2f, 241.28f, 2.890f},
109 {2469.4f, -2947.6f, 241.28f, 2.576f},
110 // Baron waypoints
111 {2553.8f, -2968.4f, 241.33f, 5.757f},
112 {2564.3f, -2972.5f, 241.33f, 5.890f},
113 {2583.9f, -2971.6f, 241.35f, 0.008f},
114 // Sir waypoints
115 {2534.5f, -2921.7f, 241.53f, 1.363f},
116 {2523.5f, -2902.8f, 241.28f, 2.095f},
117 {2517.8f, -2896.6f, 241.28f, 2.315f}
118};

Referenced by boss_four_horsemen::boss_four_horsemenAI::MoveToCorner(), and boss_four_horsemen::boss_four_horsemenAI::UpdateAI().