TrinityCore
hyjal.h
Go to the documentation of this file.
1/*
2 * This file is part of the TrinityCore Project. See AUTHORS file for Copyright information
3 *
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License as published by the
6 * Free Software Foundation; either version 2 of the License, or (at your
7 * option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 * more details.
13 *
14 * You should have received a copy of the GNU General Public License along
15 * with this program. If not, see <http://www.gnu.org/licenses/>.
16 */
17
18#ifndef DEF_HYJAL_H
19#define DEF_HYJAL_H
20
21#include "CreatureAIImpl.h"
22
23#define HyjalScriptName "instance_hyjal"
24#define DataHeader "HY"
25
27
29{
35
47};
48
50{
54};
55
57{
58 // Trash Mobs summoned in waves
59 NECROMANCER = 17899,
60 ABOMINATION = 17898,
61 GHOUL = 17895,
62 BANSHEE = 17905,
63 CRYPT_FIEND = 17897,
64 GARGOYLE = 17906,
65 FROST_WYRM = 17907,
67 FEL_STALKER = 17916,
68
69 JAINA = 17772,
70 THRALL = 17852,
71 TYRANDE = 17948,
72
73 // Bosses summoned after every 8 waves
75 ANETHERON = 17808,
76 KAZROGAL = 17888,
77 AZGALOR = 17842,
78 ARCHIMONDE = 17968,
80 NPC_CHANNEL_TARGET = 22418
81};
82
84{
89 GO_ROARING_FLAME = 182592
90};
91
92#define MINRAIDDAMAGE 700000 // minimal damage before trash can drop loot and reputation, resets if faction leader dies
93
94template <class AI, class T>
95inline AI* GetHyjalAI(T* obj)
96{
97 return GetInstanceAI<AI>(obj, HyjalScriptName);
98}
99
100#endif
uint32_t uint32
Definition: Define.h:142
AI * GetHyjalAI(T *obj)
Definition: hyjal.h:95
uint32 const EncounterCount
Definition: hyjal.h:26
HYCreaturesIds
Definition: hyjal.h:57
@ KAZROGAL
Definition: hyjal.h:76
@ AZGALOR
Definition: hyjal.h:77
@ FEL_STALKER
Definition: hyjal.h:67
@ TYRANDE
Definition: hyjal.h:71
@ BANSHEE
Definition: hyjal.h:62
@ ANETHERON
Definition: hyjal.h:75
@ ARCHIMONDE
Definition: hyjal.h:78
@ NPC_CHANNEL_TARGET
Definition: hyjal.h:80
@ GARGOYLE
Definition: hyjal.h:64
@ GIANT_INFERNAL
Definition: hyjal.h:66
@ FROST_WYRM
Definition: hyjal.h:65
@ ABOMINATION
Definition: hyjal.h:60
@ JAINA
Definition: hyjal.h:69
@ CRYPT_FIEND
Definition: hyjal.h:63
@ GHOUL
Definition: hyjal.h:61
@ RAGE_WINTERCHILL
Definition: hyjal.h:74
@ THRALL
Definition: hyjal.h:70
@ NECROMANCER
Definition: hyjal.h:59
@ NPC_WORLD_TRIGGER_TINY
Definition: hyjal.h:79
HYDataTypes
Definition: hyjal.h:29
@ DATA_RAGEWINTERCHILL
Definition: hyjal.h:30
@ TYPE_RETREAT
Definition: hyjal.h:45
@ DATA_TRASH
Definition: hyjal.h:39
@ DATA_TYRANDEWHISPERWIND
Definition: hyjal.h:38
@ DATA_CHANNEL_TARGET
Definition: hyjal.h:46
@ DATA_RAIDDAMAGE
Definition: hyjal.h:43
@ DATA_RESET_RAIDDAMAGE
Definition: hyjal.h:44
@ DATA_THRALL
Definition: hyjal.h:37
@ DATA_KAZROGAL
Definition: hyjal.h:32
@ DATA_AZGALOR
Definition: hyjal.h:33
@ DATA_JAINAPROUDMOORE
Definition: hyjal.h:36
@ DATA_ANETHERON
Definition: hyjal.h:31
@ DATA_ARCHIMONDE
Definition: hyjal.h:34
@ DATA_ALLIANCE_RETREAT
Definition: hyjal.h:41
@ DATA_HORDE_RETREAT
Definition: hyjal.h:42
@ DATA_RESET_TRASH_COUNT
Definition: hyjal.h:40
#define HyjalScriptName
Definition: hyjal.h:23
HYGameobjectIds
Definition: hyjal.h:84
@ GO_ANCIENT_GEM
Definition: hyjal.h:87
@ GO_HORDE_ENCAMPMENT_PORTAL
Definition: hyjal.h:85
@ GO_NIGHT_ELF_VILLAGE_PORTAL
Definition: hyjal.h:86
@ GO_ROARING_FLAME
Definition: hyjal.h:89
@ GO_ANCIENT_VEIN
Definition: hyjal.h:88
HYWorldStateIds
Definition: hyjal.h:50
@ WORLD_STATE_WAVES
Definition: hyjal.h:51
@ WORLD_STATE_ENEMY
Definition: hyjal.h:52
@ WORLD_STATE_ENEMYCOUNT
Definition: hyjal.h:53