TrinityCore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
ruby_sanctum.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2008-2016 TrinityCore <http://www.trinitycore.org/>
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 RUBY_SANCTUM_H_
19 #define RUBY_SANCTUM_H_
20 
21 #define RSScriptName "instance_ruby_sanctum"
22 #define DataHeader "RS"
23 
25 
26 Position const HalionControllerSpawnPos = {3156.037f, 533.2656f, 72.97205f, 0.0f};
27 
29 {
30  // Encounter States/Boss GUIDs
35 
36  // Etc
52 };
53 
55 {
58  ACTION_INTRO_HALION = -4014601,
59 };
60 
62 {
63  // Baltharus the Warborn
67 
68  // General Zarithrian
72 
73  // Saviana Ragefire
75 
76  // Halion
77  NPC_HALION = 39863,
82  NPC_ORB_CARRIER = 40081,
94  NPC_COMBUSTION = 40001,
95  NPC_CONSUMPTION = 40135,
96  NPC_COMBAT_STALKER = 40151, // Seen in sniffs but not used, so no wonder.
97 
98  // Xerestrasza
99  NPC_XERESTRASZA = 40429,
100 };
101 
103 {
104  GO_HALION_PORTAL_1 = 202794, // Unknown spell 75074, should be somehow be linked to 74807
105  GO_HALION_PORTAL_2 = 202795, // Also spell 75074
106  GO_HALION_PORTAL_EXIT = 202796, // Leave Twilight Realm (74812)
107  GO_FIRE_FIELD = 203005,
108  GO_FLAME_WALLS = 203006,
109  GO_FLAME_RING = 203007,
115 };
116 
118 {
122 };
123 
125 {
126  SPELL_BERSERK = 26662,
127 };
128 
129 template<class AI>
131 {
132  if (InstanceMap* instance = creature->GetMap()->ToInstanceMap())
133  if (instance->GetInstanceScript())
134  if (instance->GetScriptId() == sObjectMgr->GetScriptId(RSScriptName))
135  return new AI(creature);
136  return NULL;
137 }
138 
139 template<class AI>
141 {
142  if (InstanceMap* instance = go->GetMap()->ToInstanceMap())
143  if (instance->GetInstanceScript())
144  if (instance->GetScriptId() == sObjectMgr->GetScriptId(RSScriptName))
145  return new AI(go);
146 
147  return NULL;
148 }
149 
150 #endif // RUBY_SANCTUM_H_
Definition: ruby_sanctum.h:46
Definition: ruby_sanctum.h:105
Definition: ruby_sanctum.h:80
Definition: ruby_sanctum.h:119
Definition: ruby_sanctum.h:85
GameObjectsIds
Definition: blackrock_spire.h:87
Map * GetMap() const
Definition: Object.h:543
Definition: ruby_sanctum.h:37
Definition: ruby_sanctum.h:78
Definition: ruby_sanctum.h:77
Definition: ruby_sanctum.h:90
Definition: ruby_sanctum.h:71
Definition: ruby_sanctum.h:44
Definition: ruby_sanctum.h:91
Definition: ruby_sanctum.h:95
Definition: ruby_sanctum.h:51
#define RSScriptName
Definition: ruby_sanctum.h:21
arena_t NULL
Definition: jemalloc_internal.h:624
Definition: ruby_sanctum.h:38
Definition: ruby_sanctum.h:84
Definition: ruby_sanctum.h:110
DataTypes
Definition: baradin_hold.h:30
Definition: ruby_sanctum.h:70
CreatureAI * GetRubySanctumAI(Creature *creature)
Definition: ruby_sanctum.h:130
Definition: Creature.h:467
Definition: ruby_sanctum.h:47
Definition: ruby_sanctum.h:112
SharedActions
Definition: BattlegroundAV.h:53
Definition: ruby_sanctum.h:81
#define sObjectMgr
Definition: ObjectMgr.h:1567
Definition: GameObjectAI.h:29
Definition: ruby_sanctum.h:114
Definition: ruby_sanctum.h:126
Definition: ruby_sanctum.h:50
Definition: ruby_sanctum.h:120
Definition: ruby_sanctum.h:48
Definition: ruby_sanctum.h:65
Definition: Map.h:758
Definition: ruby_sanctum.h:31
InstanceMap * ToInstanceMap()
Definition: Map.h:495
Definition: CreatureAI.h:68
uint32_t uint32
Definition: Define.h:150
Definition: ruby_sanctum.h:39
Definition: ruby_sanctum.h:109
Definition: ruby_sanctum.h:41
uint32 const EncounterCount
Definition: ruby_sanctum.h:24
Definition: GameObject.h:880
Definition: ruby_sanctum.h:79
Definition: ruby_sanctum.h:99
Definition: ruby_sanctum.h:86
Definition: ruby_sanctum.h:64
Position const HalionControllerSpawnPos
Definition: ruby_sanctum.h:26
Definition: ruby_sanctum.h:57
Definition: ruby_sanctum.h:34
Definition: ruby_sanctum.h:88
Definition: ruby_sanctum.h:107
Definition: ruby_sanctum.h:74
Definition: ruby_sanctum.h:108
Definition: ruby_sanctum.h:82
Definition: ruby_sanctum.h:93
Definition: ruby_sanctum.h:58
Definition: ruby_sanctum.h:45
Definition: ruby_sanctum.h:89
Definition: ruby_sanctum.h:111
Definition: ruby_sanctum.h:69
Definition: ruby_sanctum.h:32
Definition: Position.h:27
Definition: ruby_sanctum.h:49
Definition: ruby_sanctum.h:40
Definition: ruby_sanctum.h:66
Definition: ruby_sanctum.h:121
WorldStatesRS
Definition: ruby_sanctum.h:117
Definition: ruby_sanctum.h:42
Definition: ruby_sanctum.h:106
Definition: ruby_sanctum.h:113
CreaturesIds
Definition: blackrock_spire.h:54
Definition: ruby_sanctum.h:43
Definition: ruby_sanctum.h:92
Definition: ruby_sanctum.h:33
Definition: ruby_sanctum.h:87
Definition: ruby_sanctum.h:56
Definition: ruby_sanctum.h:104
Definition: ruby_sanctum.h:96
InstanceSpell
Definition: ruby_sanctum.h:124
Definition: ruby_sanctum.h:94
Definition: ruby_sanctum.h:83