TrinityCore
blackwing_lair.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_BLACKWING_LAIR_H
19#define DEF_BLACKWING_LAIR_H
20
21#include "CreatureAIImpl.h"
22
24
25#define BWLScriptName "instance_blackwing_lair"
26#define DataHeader "BWL"
27
29{
30 // Encounter States/Boss GUIDs
39
40 // Additional Data
42
43 // Doors
45};
46
48{
56 NPC_FIREMAW = 11983,
57 NPC_EBONROC = 14601,
58 NPC_FLAMEGOR = 11981,
61 NPC_NEFARIAN = 11583
62};
63
65{
71 GO_PORTCULLIS_CHROMAGGUS = 179117, //Door after you kill him, not the one for his room
76};
77
79{
83};
84
86{
87 // Razorgore Egg Event
90};
91
92template <class AI, class T>
93inline AI* GetBlackwingLairAI(T* obj)
94{
95 return GetInstanceAI<AI>(obj, BWLScriptName);
96}
97
98#define RegisterBlackwingLairCreatureAI(ai_name) RegisterCreatureAIWithFactory(ai_name, GetBlackwingLairAI)
99#define RegisterBlackwingLairGameObjectAI(ai_name) RegisterGameObjectAIWithFactory(ai_name, GetBlackwingLairAI)
100
101#endif
uint32_t uint32
Definition: Define.h:142
BWLEvents
@ EVENT_RAZOR_PHASE_TWO
@ EVENT_RAZOR_SPAWN
@ EVENT_RESPAWN_NEFARIUS
BWLMisc
@ DATA_EGG_EVENT
@ ACTION_PHASE_TWO
uint32 const EncounterCount
AI * GetBlackwingLairAI(T *obj)
BWLGameObjectIds
@ GO_PORTCULLIS_CHROMAGGUS
@ GO_PORTCULLIS_BROODLORD
@ GO_PORTCULLIS_NEFARIAN
@ GO_CHROMAGGUS_DOOR
@ GO_BLACK_DRAGON_EGG
@ GO_PORTCULLIS_VAELASTRASZ
@ GO_PORTCULLIS_THREEDRAGONS
@ GO_CHROMAGGUS_LEVER
@ GO_SUPPRESSION_DEVICE
@ GO_PORTCULLIS_RAZORGORE
#define BWLScriptName
BWLEncounter
@ DATA_VAELASTRAZ_THE_CORRUPT
@ DATA_FLAMEGOR
@ DATA_LORD_VICTOR_NEFARIUS
@ DATA_CHROMAGGUS
@ DATA_NEFARIAN
@ DATA_GO_CHROMAGGUS_DOOR
@ DATA_EBONROC
@ DATA_BROODLORD_LASHLAYER
@ DATA_FIREMAW
@ DATA_RAZORGORE_THE_UNTAMED
BWLCreatureIds
@ NPC_BROODLORD
@ NPC_VICTOR_NEFARIUS
@ NPC_BLACKWING_DRAGON
@ NPC_CHROMAGGUS
@ NPC_EBONROC
@ NPC_BLACKWING_TASKMASTER
@ NPC_FIREMAW
@ NPC_RAZORGORE
@ NPC_BLACKWING_LEGIONAIRE
@ NPC_BLACKWING_WARLOCK
@ NPC_VAELASTRAZ
@ NPC_FLAMEGOR
@ NPC_NEFARIAN