AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
eye_of_eternity.h File Reference
#include "CreatureAIImpl.h"

Go to the source code of this file.

Macros

#define DataHeader   "EOE"
 
#define EyeOfEternityScriptName   "instance_eye_of_eternity"
 
#define ALEXSTRASZA_GIFT   DUNGEON_MODE(193905, 193967)
 
#define HEART_OF_MAGIC   DUNGEON_MODE(194158, 194159)
 
#define RegisterEoECreatureAI(ai_name)   RegisterCreatureAIWithFactory(ai_name, GetEyeOfEternityAI)
 

Enumerations

enum  Objects {
  GO_NEXUS_PLATFORM = 193070 ,
  GO_IRIS_N = 193958 ,
  GO_IRIS_H = 193960 ,
  GO_EXIT_PORTAL = 193908
}
 
enum  NPCs {
  NPC_MALYGOS = 28859 ,
  NPC_PORTAL = 30118 ,
  NPC_WORLD_TRIGGER_LAOI = 22517 ,
  NPC_POWER_SPARK = 30084 ,
  NPC_VORTEX = 30090 ,
  NPC_NEXUS_LORD = 30245 ,
  NPC_SCION_OF_ETERNITY = 30249 ,
  NPC_HOVER_DISK = 30248 ,
  NPC_ARCANE_OVERLOAD = 30282 ,
  NPC_SURGE_OF_POWER = 30334 ,
  NPC_STATIC_FIELD = 30592 ,
  NPC_ALEXSTRASZA = 32295 ,
  NPC_WYRMREST_SKYTALON = 30161
}
 
enum  Data {
  DATA_MALYGOS = 0 ,
  DATA_IRIS ,
  DATA_EXIT_PORTAL ,
  DATA_NEXUS_PLATFORM ,
  DATA_IRIS_ACTIVATED ,
  DATA_SET_IRIS_INACTIVE ,
  DATA_HIDE_IRIS_AND_PORTAL ,
  DATA_VORTEX_HANDLING ,
  DATA_VORTEX_TRIGGER
}
 
enum  eSpells {
  SPELL_PORTAL_BEAM = 56046 ,
  SPELL_IRIS_ACTIVATED = 61012 ,
  SPELL_POWER_SPARK_VISUAL = 55845 ,
  SPELL_POWER_SPARK_GROUND_BUFF = 55852 ,
  SPELL_POWER_SPARK_MALYGOS_BUFF = 56152 ,
  SPELL_TELEPORT_VISUAL = 52096 ,
  SPELL_SCION_ARCANE_BARRAGE = 56397 ,
  SPELL_ARCANE_SHOCK = 57058 ,
  SPELL_HASTE = 57060 ,
  SPELL_ALEXSTRASZA_GIFT = 61028 ,
  SPELL_SUMMON_RED_DRAGON_BUDDY = 56070 ,
  SPELL_RIDE_RED_DRAGON = 56072 ,
  SPELL_VORTEX_4 = 55853
}
 
enum  eAchiev {
  ACHIEV_CRITERIA_DENYIN_THE_SCION_10 = 7573 ,
  ACHIEV_CRITERIA_DENYIN_THE_SCION_25 = 7574 ,
  ACHIEV_CRITERIA_A_POKE_IN_THE_EYE_10 = 7174 ,
  ACHIEV_CRITERIA_A_POKE_IN_THE_EYE_25 = 7175 ,
  ACHIEV_YOU_DONT_HAVE_AN_ENTERNITY_EVENT = 20387
}
 
enum  EoEMisc : uint32 {
  AREA_EYE_OF_ETERNITY = 4500 ,
  EVENT_DESTROY_PLATFORM = 20158 ,
  EVENT_IRIS_ACTIVATED = 20711 ,
  PLATFORM_DESTROY_DAMAGE = 6500000 ,
  INTRO_MOVEMENT_INTERVAL = 25000
}
 
enum  EoEActions {
  ACTION_POWER_SPARK_FOLLOW = 1 ,
  ACTION_POWER_SPARK_STOP = 2 ,
  ACTION_DISK_START_MOVING = 1
}
 
enum  AlexstraszaEvents {
  EVENT_ALEXSTRASZA_GIFT = 1 ,
  EVENT_ALEXSTRASZA_SAY_TWO = 2 ,
  EVENT_ALEXSTRASZA_SAY_THREE = 3 ,
  EVENT_ALEXSTRASZA_SAY_FOUR = 4
}
 

Functions

template<class AI , class T >
AI * GetEyeOfEternityAI (T *obj)
 

Variables

uint32 const EncounterCount = 1
 
const Position CenterPos = {754.395f, 1301.27f, 266.10f, 0.0f}
 
const Position VortexPos = {754.393f, 1301.27f, 292.91f, 0.0f}
 
const Position VortexLandPos = {754.362f, 1301.61f, 266.17f, 0.0f}
 
const Position FourSidesPos []
 
const Position Phase2NorthPos = {837.22f, 1301.676f, 296.10f, M_PI}
 
const Position AlexstraszaGiftPos = {773.98f, 1285.97f, 266.254f, 0.0f}
 
const Position HeartOfMagicPos = {773.98f, 1275.97f, 266.254f, 0.0f}
 
const uint32 MalygosIntroIntervals [] = {18000, 19000, 21000, 18000, 15000}
 

Macro Definition Documentation

◆ ALEXSTRASZA_GIFT

#define ALEXSTRASZA_GIFT   DUNGEON_MODE(193905, 193967)

◆ DataHeader

#define DataHeader   "EOE"

◆ EyeOfEternityScriptName

#define EyeOfEternityScriptName   "instance_eye_of_eternity"

◆ HEART_OF_MAGIC

#define HEART_OF_MAGIC   DUNGEON_MODE(194158, 194159)

◆ RegisterEoECreatureAI

#define RegisterEoECreatureAI (   ai_name)    RegisterCreatureAIWithFactory(ai_name, GetEyeOfEternityAI)

Enumeration Type Documentation

◆ AlexstraszaEvents

Enumerator
EVENT_ALEXSTRASZA_GIFT 
EVENT_ALEXSTRASZA_SAY_TWO 
EVENT_ALEXSTRASZA_SAY_THREE 
EVENT_ALEXSTRASZA_SAY_FOUR 
115{
120};
@ EVENT_ALEXSTRASZA_GIFT
Definition eye_of_eternity.h:116
@ EVENT_ALEXSTRASZA_SAY_FOUR
Definition eye_of_eternity.h:119
@ EVENT_ALEXSTRASZA_SAY_THREE
Definition eye_of_eternity.h:118
@ EVENT_ALEXSTRASZA_SAY_TWO
Definition eye_of_eternity.h:117

◆ Data

enum Data
Enumerator
DATA_MALYGOS 
DATA_IRIS 
DATA_EXIT_PORTAL 
DATA_NEXUS_PLATFORM 
DATA_IRIS_ACTIVATED 
DATA_SET_IRIS_INACTIVE 
DATA_HIDE_IRIS_AND_PORTAL 
DATA_VORTEX_HANDLING 
DATA_VORTEX_TRIGGER 
56{
57 DATA_MALYGOS = 0,
66};
@ DATA_SET_IRIS_INACTIVE
Definition eye_of_eternity.h:62
@ DATA_IRIS
Definition eye_of_eternity.h:58
@ DATA_MALYGOS
Definition eye_of_eternity.h:57
@ DATA_VORTEX_HANDLING
Definition eye_of_eternity.h:64
@ DATA_VORTEX_TRIGGER
Definition eye_of_eternity.h:65
@ DATA_NEXUS_PLATFORM
Definition eye_of_eternity.h:60
@ DATA_EXIT_PORTAL
Definition eye_of_eternity.h:59
@ DATA_HIDE_IRIS_AND_PORTAL
Definition eye_of_eternity.h:63
@ DATA_IRIS_ACTIVATED
Definition eye_of_eternity.h:61

◆ eAchiev

enum eAchiev
Enumerator
ACHIEV_CRITERIA_DENYIN_THE_SCION_10 
ACHIEV_CRITERIA_DENYIN_THE_SCION_25 
ACHIEV_CRITERIA_A_POKE_IN_THE_EYE_10 
ACHIEV_CRITERIA_A_POKE_IN_THE_EYE_25 
ACHIEV_YOU_DONT_HAVE_AN_ENTERNITY_EVENT 
90{
96};
@ ACHIEV_CRITERIA_A_POKE_IN_THE_EYE_10
Definition eye_of_eternity.h:93
@ ACHIEV_YOU_DONT_HAVE_AN_ENTERNITY_EVENT
Definition eye_of_eternity.h:95
@ ACHIEV_CRITERIA_DENYIN_THE_SCION_10
Definition eye_of_eternity.h:91
@ ACHIEV_CRITERIA_DENYIN_THE_SCION_25
Definition eye_of_eternity.h:92
@ ACHIEV_CRITERIA_A_POKE_IN_THE_EYE_25
Definition eye_of_eternity.h:94

◆ EoEActions

enum EoEActions
Enumerator
ACTION_POWER_SPARK_FOLLOW 
ACTION_POWER_SPARK_STOP 
ACTION_DISK_START_MOVING 
108{
112};
@ ACTION_POWER_SPARK_STOP
Definition eye_of_eternity.h:110
@ ACTION_POWER_SPARK_FOLLOW
Definition eye_of_eternity.h:109
@ ACTION_DISK_START_MOVING
Definition eye_of_eternity.h:111

◆ EoEMisc

enum EoEMisc : uint32
Enumerator
AREA_EYE_OF_ETERNITY 
EVENT_DESTROY_PLATFORM 
EVENT_IRIS_ACTIVATED 
PLATFORM_DESTROY_DAMAGE 
INTRO_MOVEMENT_INTERVAL 
99{
102 EVENT_IRIS_ACTIVATED = 20711,
103 PLATFORM_DESTROY_DAMAGE = 6500000,
105};
@ EVENT_IRIS_ACTIVATED
Definition eye_of_eternity.h:102
@ EVENT_DESTROY_PLATFORM
Definition eye_of_eternity.h:101
@ INTRO_MOVEMENT_INTERVAL
Definition eye_of_eternity.h:104
@ AREA_EYE_OF_ETERNITY
Definition eye_of_eternity.h:100
@ PLATFORM_DESTROY_DAMAGE
Definition eye_of_eternity.h:103

◆ eSpells

enum eSpells
Enumerator
SPELL_PORTAL_BEAM 
SPELL_IRIS_ACTIVATED 
SPELL_POWER_SPARK_VISUAL 
SPELL_POWER_SPARK_GROUND_BUFF 
SPELL_POWER_SPARK_MALYGOS_BUFF 
SPELL_TELEPORT_VISUAL 
SPELL_SCION_ARCANE_BARRAGE 
SPELL_ARCANE_SHOCK 
SPELL_HASTE 
SPELL_ALEXSTRASZA_GIFT 
SPELL_SUMMON_RED_DRAGON_BUDDY 
SPELL_RIDE_RED_DRAGON 
SPELL_VORTEX_4 
69{
70 SPELL_PORTAL_BEAM = 56046,
75
77
79 SPELL_ARCANE_SHOCK = 57058,
80 SPELL_HASTE = 57060,
81
85
86 SPELL_VORTEX_4 = 55853,
87};
@ SPELL_PORTAL_BEAM
Definition eye_of_eternity.h:70
@ SPELL_POWER_SPARK_MALYGOS_BUFF
Definition eye_of_eternity.h:74
@ SPELL_HASTE
Definition eye_of_eternity.h:80
@ SPELL_POWER_SPARK_GROUND_BUFF
Definition eye_of_eternity.h:73
@ SPELL_ARCANE_SHOCK
Definition eye_of_eternity.h:79
@ SPELL_TELEPORT_VISUAL
Definition eye_of_eternity.h:76
@ SPELL_SUMMON_RED_DRAGON_BUDDY
Definition eye_of_eternity.h:83
@ SPELL_IRIS_ACTIVATED
Definition eye_of_eternity.h:71
@ SPELL_SCION_ARCANE_BARRAGE
Definition eye_of_eternity.h:78
@ SPELL_VORTEX_4
Definition eye_of_eternity.h:86
@ SPELL_POWER_SPARK_VISUAL
Definition eye_of_eternity.h:72
@ SPELL_ALEXSTRASZA_GIFT
Definition eye_of_eternity.h:82
@ SPELL_RIDE_RED_DRAGON
Definition eye_of_eternity.h:84

◆ NPCs

enum NPCs
Enumerator
NPC_MALYGOS 
NPC_PORTAL 
NPC_WORLD_TRIGGER_LAOI 
NPC_POWER_SPARK 
NPC_VORTEX 
NPC_NEXUS_LORD 
NPC_SCION_OF_ETERNITY 
NPC_HOVER_DISK 
NPC_ARCANE_OVERLOAD 
NPC_SURGE_OF_POWER 
NPC_STATIC_FIELD 
NPC_ALEXSTRASZA 
NPC_WYRMREST_SKYTALON 
39{
40 NPC_MALYGOS = 28859,
41 NPC_PORTAL = 30118,
43 NPC_POWER_SPARK = 30084,
44 NPC_VORTEX = 30090,
45 NPC_NEXUS_LORD = 30245,
47 NPC_HOVER_DISK = 30248,
48 NPC_ARCANE_OVERLOAD = 30282,
49 NPC_SURGE_OF_POWER = 30334,
50 NPC_STATIC_FIELD = 30592,
51 NPC_ALEXSTRASZA = 32295,
53};
@ NPC_MALYGOS
Definition eye_of_eternity.h:40
@ NPC_SCION_OF_ETERNITY
Definition eye_of_eternity.h:46
@ NPC_NEXUS_LORD
Definition eye_of_eternity.h:45
@ NPC_POWER_SPARK
Definition eye_of_eternity.h:43
@ NPC_ARCANE_OVERLOAD
Definition eye_of_eternity.h:48
@ NPC_WORLD_TRIGGER_LAOI
Definition eye_of_eternity.h:42
@ NPC_HOVER_DISK
Definition eye_of_eternity.h:47
@ NPC_VORTEX
Definition eye_of_eternity.h:44
@ NPC_ALEXSTRASZA
Definition eye_of_eternity.h:51
@ NPC_STATIC_FIELD
Definition eye_of_eternity.h:50
@ NPC_PORTAL
Definition eye_of_eternity.h:41
@ NPC_SURGE_OF_POWER
Definition eye_of_eternity.h:49
@ NPC_WYRMREST_SKYTALON
Definition eye_of_eternity.h:52

◆ Objects

enum Objects
Enumerator
GO_NEXUS_PLATFORM 
GO_IRIS_N 
GO_IRIS_H 
GO_EXIT_PORTAL 
29{
30 GO_NEXUS_PLATFORM = 193070,
31 GO_IRIS_N = 193958,
32 GO_IRIS_H = 193960,
33 GO_EXIT_PORTAL = 193908,
34};
@ GO_IRIS_N
Definition eye_of_eternity.h:31
@ GO_IRIS_H
Definition eye_of_eternity.h:32
@ GO_EXIT_PORTAL
Definition eye_of_eternity.h:33
@ GO_NEXUS_PLATFORM
Definition eye_of_eternity.h:30

Function Documentation

◆ GetEyeOfEternityAI()

template<class AI , class T >
AI * GetEyeOfEternityAI ( T *  obj)
inline
145{
146 return GetInstanceAI<AI>(obj, EyeOfEternityScriptName);
147}
#define EyeOfEternityScriptName
Definition eye_of_eternity.h:24

References EyeOfEternityScriptName.

Variable Documentation

◆ AlexstraszaGiftPos

const Position AlexstraszaGiftPos = {773.98f, 1285.97f, 266.254f, 0.0f}
138{773.98f, 1285.97f, 266.254f, 0.0f};

Referenced by npc_alexstrasza::npc_alexstrasza().

◆ CenterPos

const Position CenterPos = {754.395f, 1301.27f, 266.10f, 0.0f}
124{754.395f, 1301.27f, 266.10f, 0.0f};

◆ EncounterCount

uint32 const EncounterCount = 1

◆ FourSidesPos

const Position FourSidesPos[]
Initial value:
=
{
{686.417f, 1235.52f, 288.17f, M_PI / 4},
{828.182f, 1379.05f, 288.17f, 5 * M_PI / 4},
{681.278f, 1375.796f, 288.17f, 7 * M_PI / 4},
{821.182f, 1235.42f, 288.17f, 3 * M_PI / 4},
}
129{
130 {686.417f, 1235.52f, 288.17f, M_PI / 4},
131 {828.182f, 1379.05f, 288.17f, 5 * M_PI / 4},
132 {681.278f, 1375.796f, 288.17f, 7 * M_PI / 4},
133 {821.182f, 1235.42f, 288.17f, 3 * M_PI / 4},
134};

Referenced by boss_malygos::HandleIntroSpeech(), boss_malygos::MovementInform(), and boss_malygos::UpdateAI().

◆ HeartOfMagicPos

const Position HeartOfMagicPos = {773.98f, 1275.97f, 266.254f, 0.0f}
139{773.98f, 1275.97f, 266.254f, 0.0f};

Referenced by npc_alexstrasza::npc_alexstrasza().

◆ MalygosIntroIntervals

const uint32 MalygosIntroIntervals[] = {18000, 19000, 21000, 18000, 15000}
141{18000, 19000, 21000, 18000, 15000};

Referenced by boss_malygos::HandleIntroSpeech(), and boss_malygos::Reset().

◆ Phase2NorthPos

const Position Phase2NorthPos = {837.22f, 1301.676f, 296.10f, M_PI}
136{837.22f, 1301.676f, 296.10f, M_PI};

Referenced by boss_malygos::UpdateAI().

◆ VortexLandPos

const Position VortexLandPos = {754.362f, 1301.61f, 266.17f, 0.0f}
126{754.362f, 1301.61f, 266.17f, 0.0f};

Referenced by spell_malygos_vortex_visual::OnRemove().

◆ VortexPos

const Position VortexPos = {754.393f, 1301.27f, 292.91f, 0.0f}
125{754.393f, 1301.27f, 292.91f, 0.0f};

Referenced by boss_malygos::UpdateAI().