TrinityCore
instance_zulgurub.cpp
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#include "zulgurub.h"
19#include "Creature.h"
20#include "InstanceScript.h"
21#include "ScriptMgr.h"
22
24{
29 //{ GO_THE_CACHE_OF_MADNESS_DOOR, DATA_xxxxxxx, EncounterStateForOpenDoor::NotInProgress },
31};
32
34{
35 { DATA_VENOXIS, {{ 1178 }} },
36 { DATA_MANDOKIR, {{ 1179 }} },
37 { DATA_KILNARA, {{ 1180 }} },
38 { DATA_ZANZIL, {{ 1181 }} },
39 { DATA_JINDO, {{ 1182 }} },
40 { DATA_HAZZARAH, {{ 1188 }} },
41 { DATA_RENATAKI, {{ 1188 }} },
42 { DATA_WUSHOOLAY, {{ 1188 }} },
43 { DATA_GRILEK, {{ 1188 }} }
44};
45
47{
48 public:
50
52 {
54 {
59 }
60
61 void OnCreatureCreate(Creature* creature) override
62 {
63 switch (creature->GetEntry())
64 {
65 case NPC_VENOXIS:
66 venoxisGUID = creature->GetGUID();
67 break;
68 case NPC_MANDOKIR:
69 mandokirGUID = creature->GetGUID();
70 break;
71 case NPC_KILNARA:
72 kilnaraGUID = creature->GetGUID();
73 break;
74 case NPC_ZANZIL:
75 zanzilGUID = creature->GetGUID();
76 break;
77 case NPC_JINDO:
78 jindoGUID = creature->GetGUID();
79 break;
80 case NPC_HAZZARAH:
81 hazzarahGUID = creature->GetGUID();
82 break;
83 case NPC_RENATAKI:
84 renatakiGUID = creature->GetGUID();
85 break;
86 case NPC_WUSHOOLAY:
87 wushoolayGUID = creature->GetGUID();
88 break;
89 case NPC_GRILEK:
90 grilekGUID = creature->GetGUID();
91 break;
93 jindoTiggerGUID = creature->GetGUID();
94 break;
95 default:
96 break;
97 }
98 }
99
100 bool SetBossState(uint32 type, EncounterState state) override
101 {
102 if (!InstanceScript::SetBossState(type, state))
103 return false;
104
105 switch (type)
106 {
107 case DATA_VENOXIS:
108 case DATA_MANDOKIR:
109 case DATA_KILNARA:
110 case DATA_ZANZIL:
111 case DATA_JINDO:
112 case DATA_HAZZARAH:
113 case DATA_RENATAKI:
114 case DATA_WUSHOOLAY:
115 case DATA_GRILEK:
116 break;
117 default:
118 break;
119 }
120
121 return true;
122 }
123
124 /*
125 void SetData(uint32 type, uint32 data) override
126 {
127 switch (type)
128 {
129 }
130 }
131
132 uint32 GetData(uint32 type) const override
133 {
134 switch (type)
135 {
136 }
137
138 return 0;
139 }
140 */
141
142 ObjectGuid GetGuidData(uint32 type) const override
143 {
144 switch (type)
145 {
146 case DATA_VENOXIS:
147 return venoxisGUID;
148 case DATA_MANDOKIR:
149 return mandokirGUID;
150 case DATA_KILNARA:
151 return kilnaraGUID;
152 case DATA_ZANZIL:
153 return zanzilGUID;
154 case DATA_JINDO:
155 return jindoGUID;
156 case DATA_HAZZARAH:
157 return hazzarahGUID;
158 case DATA_RENATAKI:
159 return renatakiGUID;
160 case DATA_WUSHOOLAY:
161 return wushoolayGUID;
162 case DATA_GRILEK:
163 return grilekGUID;
165 return jindoTiggerGUID;
166 default:
167 break;
168 }
169
170 return ObjectGuid::Empty;
171 }
172
173 protected:
184 };
185
187 {
189 }
190};
191
193{
194 new instance_zulgurub();
195}
uint32_t uint32
Definition: Define.h:142
EncounterState
#define DataHeader
uint32 const EncounterCount
void SetBossNumber(uint32 number)
virtual bool SetBossState(uint32 id, EncounterState state)
void LoadDungeonEncounterData(T const &encounters)
void LoadDoorData(DoorData const *data)
void SetHeaders(std::string const &dataHeaders)
static ObjectGuid const Empty
Definition: ObjectGuid.h:274
uint32 GetEntry() const
Definition: Object.h:161
static ObjectGuid GetGUID(Object const *o)
Definition: Object.h:159
InstanceScript * GetInstanceScript(InstanceMap *map) const override
void AddSC_instance_zulgurub()
DoorData const doorData[]
DungeonEncounterData const encounters[]
ObjectGuid GetGuidData(uint32 type) const override
bool SetBossState(uint32 type, EncounterState state) override
@ GO_ARENA_DOOR_1
Definition: zulgurub.h:76
@ GO_FORCEFIELD
Definition: zulgurub.h:83
@ GO_ZANZIL_DOOR
Definition: zulgurub.h:86
@ GO_VENOXIS_COIL
Definition: zulgurub.h:73
@ NPC_KILNARA
Definition: zulgurub.h:50
@ NPC_JINDO_TRIGGER
Definition: zulgurub.h:65
@ NPC_VENOXIS
Definition: zulgurub.h:48
@ NPC_HAZZARAH
Definition: zulgurub.h:55
@ NPC_ZANZIL
Definition: zulgurub.h:51
@ NPC_RENATAKI
Definition: zulgurub.h:56
@ NPC_MANDOKIR
Definition: zulgurub.h:49
@ NPC_WUSHOOLAY
Definition: zulgurub.h:57
@ NPC_JINDO
Definition: zulgurub.h:52
@ NPC_GRILEK
Definition: zulgurub.h:58
@ DATA_GRILEK
Definition: zulgurub.h:40
@ DATA_HAZZARAH
Definition: zulgurub.h:37
@ DATA_JINDO
Definition: zulgurub.h:34
@ DATA_MANDOKIR
Definition: zulgurub.h:31
@ DATA_WUSHOOLAY
Definition: zulgurub.h:39
@ DATA_JINDOR_TRIGGER
Definition: zulgurub.h:43
@ DATA_KILNARA
Definition: zulgurub.h:32
@ DATA_ZANZIL
Definition: zulgurub.h:33
@ DATA_RENATAKI
Definition: zulgurub.h:38
@ DATA_VENOXIS
Definition: zulgurub.h:30
#define ZGScriptName
Definition: zulgurub.h:23