TrinityCore
Loading...
Searching...
No Matches
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
47
54
56{
57 // Trash Mobs summoned in waves
58 NECROMANCER = 17899,
59 ABOMINATION = 17898,
60 GHOUL = 17895,
61 BANSHEE = 17905,
62 CRYPT_FIEND = 17897,
63 GARGOYLE = 17906,
64 FROST_WYRM = 17907,
66 FEL_STALKER = 17916,
67
68 JAINA = 17772,
69 THRALL = 17852,
70 TYRANDE = 17948,
71
72 // Bosses summoned after every 8 waves
74 ANETHERON = 17808,
75 KAZROGAL = 17888,
76 AZGALOR = 17842,
77 ARCHIMONDE = 17968,
79 NPC_CHANNEL_TARGET = 22418
80};
81
90
95
117
118#define MINRAIDDAMAGE 700000 // minimal damage before trash can drop loot and reputation, resets if faction leader dies
119
120template <class AI, class T>
121inline AI* GetHyjalAI(T* obj)
122{
123 return GetInstanceAI<AI>(obj, HyjalScriptName);
124}
125
126#define RegisterHyjalCreatureAI(ai_name) RegisterCreatureAIWithFactory(ai_name, GetHyjalAI)
127
128#endif
uint32_t uint32
Definition Define.h:133
AI * GetHyjalAI(T *obj)
Definition hyjal.h:121
HYPathIds
Definition hyjal.h:97
@ PATH_ALLY_BASE_2
Definition hyjal.h:104
@ PATH_HORDE_BOSS
Definition hyjal.h:115
@ PATH_HORDE_BASE_1
Definition hyjal.h:111
@ PATH_ALLY_INITIAL_1
Definition hyjal.h:99
@ PATH_HORDE_BASE_2
Definition hyjal.h:112
@ PATH_HORDE_BASE_3
Definition hyjal.h:113
@ PATH_ALLY_INITIAL_2
Definition hyjal.h:100
@ PATH_HORDE_INITIAL_1
Definition hyjal.h:107
@ PATH_ALLY_BASE_3
Definition hyjal.h:105
@ PATH_ALLY_BASE_1
Definition hyjal.h:103
@ PATH_HORDE_INITIAL_3
Definition hyjal.h:109
@ PATH_ALLY_INITIAL_3
Definition hyjal.h:101
@ PATH_HORDE_INITIAL_2
Definition hyjal.h:108
uint32 const EncounterCount
Definition hyjal.h:26
HYCreaturesIds
Definition hyjal.h:56
@ KAZROGAL
Definition hyjal.h:75
@ AZGALOR
Definition hyjal.h:76
@ FEL_STALKER
Definition hyjal.h:66
@ TYRANDE
Definition hyjal.h:70
@ BANSHEE
Definition hyjal.h:61
@ ANETHERON
Definition hyjal.h:74
@ ARCHIMONDE
Definition hyjal.h:77
@ NPC_CHANNEL_TARGET
Definition hyjal.h:79
@ GARGOYLE
Definition hyjal.h:63
@ GIANT_INFERNAL
Definition hyjal.h:65
@ FROST_WYRM
Definition hyjal.h:64
@ ABOMINATION
Definition hyjal.h:59
@ JAINA
Definition hyjal.h:68
@ CRYPT_FIEND
Definition hyjal.h:62
@ GHOUL
Definition hyjal.h:60
@ RAGE_WINTERCHILL
Definition hyjal.h:73
@ THRALL
Definition hyjal.h:69
@ NECROMANCER
Definition hyjal.h:58
@ NPC_WORLD_TRIGGER_TINY
Definition hyjal.h:78
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_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
HYActionIds
Definition hyjal.h:92
@ ACTION_ARCHIMONDE_INTRO
Definition hyjal.h:93
HYGameobjectIds
Definition hyjal.h:83
@ GO_ANCIENT_GEM
Definition hyjal.h:86
@ GO_HORDE_ENCAMPMENT_PORTAL
Definition hyjal.h:84
@ GO_NIGHT_ELF_VILLAGE_PORTAL
Definition hyjal.h:85
@ GO_ROARING_FLAME
Definition hyjal.h:88
@ GO_ANCIENT_VEIN
Definition hyjal.h:87
HYWorldStateIds
Definition hyjal.h:49
@ WORLD_STATE_WAVES
Definition hyjal.h:50
@ WORLD_STATE_ENEMY
Definition hyjal.h:51
@ WORLD_STATE_ENEMYCOUNT
Definition hyjal.h:52