TrinityCore
dragon_soul.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 _Dragon_Soul_h__
19#define _Dragon_Soul_h__
20
21#include "CreatureAIImpl.h"
22
23constexpr char const* DataHeader = "DS";
24constexpr char const* DSScriptName = "instance_dragon_soul";
25
26constexpr uint32 const EncounterCount = 8;
27
29{
30 // Encounters
39};
40
42{
43 // Spine of Deathwing
44 /*
45 * Data Values:
46 * 1, 0, 60, 0, 0, 0 -- Talk
47 * 1, 0, 213, 0, 0, 0 -- Scream in Agony
48 */
50
51 // Warmaster Blackhorn
52 /*
53 * Data Values:
54 * 1, 1, [(0 - 100)], 0, 0, 0 -- Skybox cloud speed
55 */
57};
58
59template <class AI, class T>
60inline AI* GetDragonSoulAI(T* obj)
61{
62 return GetInstanceAI<AI>(obj, DSScriptName);
63}
64
65#define RegisterDragonSoulCreatureAI(ai_name) RegisterCreatureAIWithFactory(ai_name, GetDragonSoulAI)
66
67#endif // _Dragon_Soul_h__
uint32_t uint32
Definition: Define.h:142
DSDataTypes
Definition: dragon_soul.h:29
@ BOSS_MORCHOK
Definition: dragon_soul.h:31
@ BOSS_SPINE_OF_DEATHWING
Definition: dragon_soul.h:37
@ BOSS_YORSAHJ_THE_UNSLEEPING
Definition: dragon_soul.h:33
@ BOSS_HAGARA_THE_STORMBINDER
Definition: dragon_soul.h:34
@ BOSS_ULTRAXION
Definition: dragon_soul.h:35
@ BOSS_WARMASTER_BLACKHORN
Definition: dragon_soul.h:36
@ BOSS_WARLORD_ZONOZZ
Definition: dragon_soul.h:32
@ BOSS_MADNESS_OF_DEATHWING
Definition: dragon_soul.h:38
constexpr char const * DataHeader
Definition: dragon_soul.h:23
constexpr char const * DSScriptName
Definition: dragon_soul.h:24
DSMapObjIds
Definition: dragon_soul.h:42
@ MAP_OBJ_ID_SKYFIRE_SKYBOX
Definition: dragon_soul.h:56
@ MAP_OBJ_ID_SPINE_OF_DEATHWING_HEAD
Definition: dragon_soul.h:49
constexpr uint32 const EncounterCount
Definition: dragon_soul.h:26
AI * GetDragonSoulAI(T *obj)
Definition: dragon_soul.h:60