AzeorthCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
instance_blood_furnace::instance_blood_furnace_InstanceMapScript Struct Reference
Inheritance diagram for instance_blood_furnace::instance_blood_furnace_InstanceMapScript:
InstanceScript ZoneScript

Public Member Functions

 instance_blood_furnace_InstanceMapScript (Map *map)
 
void Initialize () override
 
void OnCreatureCreate (Creature *creature) override
 
void OnUnitDeath (Unit *unit) override
 
void OnGameObjectCreate (GameObject *go) override
 
ObjectGuid GetGuidData (uint32 data) const override
 
void SetData (uint32 type, uint32 data) override
 
std::string GetSaveData () override
 
uint32 GetData (uint32 type) const override
 
void Load (const char *strIn) override
 
void UpdateBroggokEvent (uint32 data)
 
void ResetPrisons ()
 
void ResetPrisoners (GuidSet prisoners)
 
void ResetPrisoner (Creature *prisoner)
 
void StorePrisoner (Creature *creature)
 
void PrisonerDied (ObjectGuid guid)
 
void ActivateCell (uint8 id)
 
void ActivatePrisoners (GuidSet prisoners)
 
- Public Member Functions inherited from InstanceScript
 InstanceScript (Map *map)
 
 ~InstanceScript () override
 
virtual void Initialize ()
 
virtual void Load (char const *data)
 
virtual void CreatureLooted (Creature *, LootType)
 
virtual std::string GetSaveData ()
 
void SaveToDB ()
 
virtual void Update (uint32)
 
virtual bool IsEncounterInProgress () const
 
void OnCreatureCreate (Creature *creature) override
 
void OnCreatureRemove (Creature *creature) override
 
void OnGameObjectCreate (GameObject *go) override
 
void OnGameObjectRemove (GameObject *go) override
 
ObjectGuid GetObjectGuid (uint32 type) const
 
ObjectGuid GetGuidData (uint32 type) const override
 
CreatureGetCreature (uint32 type)
 
GameObjectGetGameObject (uint32 type)
 
virtual void OnPlayerEnter (Player *)
 
virtual void OnPlayerAreaUpdate (Player *, uint32, uint32)
 
void HandleGameObject (ObjectGuid guid, bool open, GameObject *go=nullptr)
 
void DoUseDoorOrButton (ObjectGuid guid, uint32 withRestoreTime=0, bool useAlternativeState=false)
 
void DoRespawnGameObject (ObjectGuid guid, uint32 timeToDespawn=MINUTE)
 
void DoRespawnCreature (ObjectGuid guid, bool force=false)
 
void DoRespawnCreature (uint32 type, bool force=false)
 
void DoUpdateWorldState (uint32 worldstateId, uint32 worldstateValue)
 
void DoSendNotifyToInstance (char const *format,...)
 
void DoUpdateAchievementCriteria (AchievementCriteriaTypes type, uint32 miscValue1=0, uint32 miscValue2=0, Unit *unit=nullptr)
 
void DoStartTimedAchievement (AchievementCriteriaTimedTypes type, uint32 entry)
 
void DoStopTimedAchievement (AchievementCriteriaTimedTypes type, uint32 entry)
 
void DoRemoveAurasDueToSpellOnPlayers (uint32 spell)
 
void DoCastSpellOnPlayers (uint32 spell)
 
bool ServerAllowsTwoSideGroups ()
 
virtual bool SetBossState (uint32 id, EncounterState state)
 
EncounterState GetBossState (uint32 id) const
 
CreatureBoundary const * GetBossBoundary (uint32 id) const
 
BossInfo const * GetBossInfo (uint32 id) const
 
virtual bool CheckAchievementCriteriaMeet (uint32, Player const *, Unit const *=nullptr, uint32=0)
 
virtual bool CheckRequiredBosses (uint32, Player const *=nullptr) const
 
void SetCompletedEncountersMask (uint32 newMask, bool save)
 
uint32 GetCompletedEncounterMask () const
 
void SendEncounterUnit (uint32 type, Unit *unit=nullptr, uint8 param1=0, uint8 param2=0)
 
virtual void FillInitialWorldStates (WorldPacket &)
 
uint32 GetEncounterCount () const
 
void MarkAreaTriggerDone (uint32 id)
 
void ResetAreaTriggerDone (uint32 id)
 
bool IsAreaTriggerDone (uint32 id) const
 
virtual void DoAction (int32)
 
- Public Member Functions inherited from ZoneScript
 ZoneScript ()
 
virtual ~ZoneScript ()
 
virtual uint32 GetCreatureEntry (ObjectGuid::LowType, CreatureData const *data)
 
virtual uint32 GetGameObjectEntry (ObjectGuid::LowType, uint32 entry)
 
virtual void OnCreatureCreate (Creature *)
 
virtual void OnCreatureRemove (Creature *)
 
virtual void OnGameObjectCreate (GameObject *)
 
virtual void OnGameObjectRemove (GameObject *)
 
virtual void OnUnitDeath (Unit *)
 
virtual void OnCreatureEvade (Creature *)
 
virtual ObjectGuid GetGuidData (uint32) const
 
virtual void SetGuidData (uint32, ObjectGuid)
 
virtual uint64 GetData64 (uint32) const
 
virtual void SetData64 (uint32, uint64)
 
virtual uint32 GetData (uint32) const
 
virtual void SetData (uint32, uint32)
 
virtual void ProcessEvent (WorldObject *, uint32)
 

Public Attributes

uint32 _auiEncounter [MAX_ENCOUNTER]
 
ObjectGuid _bossGUIDs [3]
 
ObjectGuid _doorGUIDs [6]
 
ObjectGuid _prisonGUIDs [4]
 
GuidSet _prisonersCell [4]
 
uint8 _prisonerCounter [4]
 
ObjectGuid _broggokLeverGUID
 
- Public Attributes inherited from InstanceScript
Mapinstance
 

Additional Inherited Members

- Static Public Member Functions inherited from InstanceScript
static std::string GetBossStateName (uint8 state)
 
- Protected Member Functions inherited from InstanceScript
void SetBossNumber (uint32 number)
 
void LoadBossBoundaries (BossBoundaryData const &data)
 
void LoadDoorData (DoorData const *data)
 
void LoadMinionData (MinionData const *data)
 
void LoadObjectData (ObjectData const *creatureData, ObjectData const *gameObjectData)
 
void AddObject (Creature *obj, bool add)
 
void AddObject (GameObject *obj, bool add)
 
void AddObject (WorldObject *obj, uint32 type, bool add)
 
void AddDoor (GameObject *door, bool add)
 
void AddMinion (Creature *minion, bool add)
 
void UpdateDoorState (GameObject *door)
 
void UpdateMinionState (Creature *minion, EncounterState state)
 
std::string LoadBossState (char const *data)
 
std::string GetBossSaveData ()
 

Detailed Description

Constructor & Destructor Documentation

◆ instance_blood_furnace_InstanceMapScript()

instance_blood_furnace::instance_blood_furnace_InstanceMapScript::instance_blood_furnace_InstanceMapScript ( Map map)
inline
30: InstanceScript(map) {}
Definition: InstanceScript.h:140

Member Function Documentation

◆ ActivateCell()

void instance_blood_furnace::instance_blood_furnace_InstanceMapScript::ActivateCell ( uint8  id)
inline
297 {
298 switch (id)
299 {
306 break;
307 case DATA_DOOR5:
310 broggok->AI()->DoAction(ACTION_ACTIVATE_BROGGOK);
311 break;
312 }
313 }
@ ACTION_ACTIVATE_BROGGOK
Definition: blood_furnace.h:45
@ DATA_PRISON_CELL2
Definition: blood_furnace.h:41
@ DATA_PRISON_CELL1
Definition: blood_furnace.h:40
@ DATA_PRISON_CELL3
Definition: blood_furnace.h:42
@ DATA_DOOR5
Definition: blood_furnace.h:37
@ DATA_BROGGOK
Definition: blood_furnace.h:29
@ DATA_PRISON_CELL4
Definition: blood_furnace.h:43
Definition: Creature.h:46
void HandleGameObject(ObjectGuid guid, bool open, GameObject *go=nullptr)
Definition: InstanceScript.cpp:108
Map * instance
Definition: InstanceScript.h:146
Creature * GetCreature(ObjectGuid const guid)
Definition: Map.cpp:3290
void ActivatePrisoners(GuidSet prisoners)
Definition: instance_blood_furnace.cpp:315
GuidSet _prisonersCell[4]
Definition: instance_blood_furnace.cpp:37
ObjectGuid _doorGUIDs[6]
Definition: instance_blood_furnace.cpp:34
ObjectGuid _prisonGUIDs[4]
Definition: instance_blood_furnace.cpp:35
ObjectGuid GetGuidData(uint32 data) const override
Definition: instance_blood_furnace.cpp:110

References _doorGUIDs, _prisonersCell, _prisonGUIDs, ACTION_ACTIVATE_BROGGOK, ActivatePrisoners(), DATA_BROGGOK, DATA_DOOR5, DATA_PRISON_CELL1, DATA_PRISON_CELL2, DATA_PRISON_CELL3, DATA_PRISON_CELL4, Map::GetCreature(), GetGuidData(), InstanceScript::HandleGameObject(), and InstanceScript::instance.

Referenced by PrisonerDied(), and UpdateBroggokEvent().

◆ ActivatePrisoners()

void instance_blood_furnace::instance_blood_furnace_InstanceMapScript::ActivatePrisoners ( GuidSet  prisoners)
inline
316 {
317 for (ObjectGuid const& guid : prisoners)
318 if (Creature* prisoner = instance->GetCreature(guid))
319 {
320 prisoner->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
321 prisoner->SetImmuneToAll(false);
322 prisoner->SetInCombatWithZone();
323 }
324 }
@ UNIT_FLAG_NON_ATTACKABLE
Definition: Unit.h:449
Definition: ObjectGuid.h:120

References Map::GetCreature(), InstanceScript::instance, and UNIT_FLAG_NON_ATTACKABLE.

Referenced by ActivateCell().

◆ GetData()

uint32 instance_blood_furnace::instance_blood_furnace_InstanceMapScript::GetData ( uint32  type) const
inlineoverridevirtual

Reimplemented from ZoneScript.

166 {
167 switch (type)
168 {
169 case DATA_THE_MAKER:
170 case DATA_BROGGOK:
171 case DATA_KELIDAN:
172 return _auiEncounter[type];
173 }
174 return 0;
175 }
@ DATA_THE_MAKER
Definition: blood_furnace.h:28
@ DATA_KELIDAN
Definition: blood_furnace.h:30
uint32 _auiEncounter[MAX_ENCOUNTER]
Definition: instance_blood_furnace.cpp:32

References _auiEncounter, DATA_BROGGOK, DATA_KELIDAN, and DATA_THE_MAKER.

Referenced by OnGameObjectCreate().

◆ GetGuidData()

ObjectGuid instance_blood_furnace::instance_blood_furnace_InstanceMapScript::GetGuidData ( uint32  data) const
inlineoverridevirtual

Reimplemented from InstanceScript.

111 {
112 switch (data)
113 {
114 case DATA_THE_MAKER:
115 case DATA_BROGGOK:
116 case DATA_KELIDAN:
117 return _bossGUIDs[data];
118
119 case DATA_DOOR1:
120 case DATA_DOOR2:
121 case DATA_DOOR3:
122 case DATA_DOOR4:
123 case DATA_DOOR5:
124 case DATA_DOOR6:
125 return _doorGUIDs[data - DATA_DOOR1];
126
131 return _prisonGUIDs[data - DATA_PRISON_CELL1];
132 }
133
134 return ObjectGuid::Empty;
135 }
@ DATA_DOOR6
Definition: blood_furnace.h:38
@ DATA_DOOR1
Definition: blood_furnace.h:33
@ DATA_DOOR3
Definition: blood_furnace.h:35
@ DATA_DOOR2
Definition: blood_furnace.h:34
@ DATA_DOOR4
Definition: blood_furnace.h:36
static ObjectGuid const Empty
Definition: ObjectGuid.h:122
ObjectGuid _bossGUIDs[3]
Definition: instance_blood_furnace.cpp:33

References _bossGUIDs, _doorGUIDs, _prisonGUIDs, DATA_BROGGOK, DATA_DOOR1, DATA_DOOR2, DATA_DOOR3, DATA_DOOR4, DATA_DOOR5, DATA_DOOR6, DATA_KELIDAN, DATA_PRISON_CELL1, DATA_PRISON_CELL2, DATA_PRISON_CELL3, DATA_PRISON_CELL4, DATA_THE_MAKER, and ObjectGuid::Empty.

Referenced by ActivateCell().

◆ GetSaveData()

std::string instance_blood_furnace::instance_blood_furnace_InstanceMapScript::GetSaveData ( )
inlineoverridevirtual

Reimplemented from InstanceScript.

155 {
157
158 std::ostringstream saveStream;
159 saveStream << "B F " << _auiEncounter[0] << ' ' << _auiEncounter[1] << ' ' << _auiEncounter[2];
160
162 return saveStream.str();
163 }
#define OUT_SAVE_INST_DATA_COMPLETE
Definition: InstanceScript.h:28
#define OUT_SAVE_INST_DATA
Definition: InstanceScript.h:27

References _auiEncounter, OUT_SAVE_INST_DATA, and OUT_SAVE_INST_DATA_COMPLETE.

◆ Initialize()

void instance_blood_furnace::instance_blood_furnace_InstanceMapScript::Initialize ( )
inlineoverridevirtual

Reimplemented from InstanceScript.

44 {
45 memset(&_auiEncounter, 0, sizeof(_auiEncounter));
46 memset(&_prisonerCounter, 0, sizeof(_prisonerCounter));
47 }
uint8 _prisonerCounter[4]
Definition: instance_blood_furnace.cpp:39

References _auiEncounter, and _prisonerCounter.

◆ Load()

void instance_blood_furnace::instance_blood_furnace_InstanceMapScript::Load ( const char *  strIn)
inlineoverridevirtual

Reimplemented from InstanceScript.

178 {
179 if (!strIn)
180 {
182 return;
183 }
184
185 OUT_LOAD_INST_DATA(strIn);
186
187 char dataHead1, dataHead2;
188
189 std::istringstream loadStream(strIn);
190 loadStream >> dataHead1 >> dataHead2;
191
192 if (dataHead1 == 'B' && dataHead2 == 'F')
193 {
194 loadStream >> _auiEncounter[0] >> _auiEncounter[1] >> _auiEncounter[2];
195
196 for (uint8 i = 0; i < MAX_ENCOUNTER; ++i)
197 if (_auiEncounter[i] == IN_PROGRESS || _auiEncounter[i] == FAIL)
199 }
200
202 }
std::uint8_t uint8
Definition: Define.h:110
#define OUT_LOAD_INST_DATA_FAIL
Definition: InstanceScript.h:31
@ IN_PROGRESS
Definition: InstanceScript.h:57
@ FAIL
Definition: InstanceScript.h:58
@ NOT_STARTED
Definition: InstanceScript.h:56
#define OUT_LOAD_INST_DATA_COMPLETE
Definition: InstanceScript.h:30
#define OUT_LOAD_INST_DATA(a)
Definition: InstanceScript.h:29
#define MAX_ENCOUNTER
Definition: violet_hold.h:21

References _auiEncounter, FAIL, IN_PROGRESS, MAX_ENCOUNTER, NOT_STARTED, OUT_LOAD_INST_DATA, OUT_LOAD_INST_DATA_COMPLETE, and OUT_LOAD_INST_DATA_FAIL.

◆ OnCreatureCreate()

void instance_blood_furnace::instance_blood_furnace_InstanceMapScript::OnCreatureCreate ( Creature creature)
inlineoverridevirtual

Reimplemented from InstanceScript.

50 {
51 switch (creature->GetEntry())
52 {
53 case NPC_THE_MAKER:
54 _bossGUIDs[DATA_THE_MAKER] = creature->GetGUID();
55 break;
56 case NPC_BROGGOK:
57 _bossGUIDs[DATA_BROGGOK] = creature->GetGUID();
58 break;
59 case NPC_KELIDAN:
60 _bossGUIDs[DATA_KELIDAN] = creature->GetGUID();
61 break;
63 StorePrisoner(creature);
64 break;
65 }
66 }
@ NPC_NASCENT_FEL_ORC
Definition: blood_furnace.h:54
@ NPC_BROGGOK
Definition: blood_furnace.h:52
@ NPC_KELIDAN
Definition: blood_furnace.h:53
@ NPC_THE_MAKER
Definition: blood_furnace.h:51
uint32 GetEntry() const
Definition: Object.h:109
static ObjectGuid GetGUID(Object const *o)
Definition: Object.h:106
void StorePrisoner(Creature *creature)
Definition: instance_blood_furnace.cpp:247

References _bossGUIDs, DATA_BROGGOK, DATA_KELIDAN, DATA_THE_MAKER, Object::GetEntry(), Object::GetGUID(), NPC_BROGGOK, NPC_KELIDAN, NPC_NASCENT_FEL_ORC, NPC_THE_MAKER, and StorePrisoner().

◆ OnGameObjectCreate()

void instance_blood_furnace::instance_blood_furnace_InstanceMapScript::OnGameObjectCreate ( GameObject go)
inlineoverridevirtual

Reimplemented from InstanceScript.

75 {
76 if (go->GetEntry() == 181766) //Final exit door
77 _doorGUIDs[0] = go->GetGUID();
78 if (go->GetEntry() == 181811) //The Maker Front door
79 _doorGUIDs[1] = go->GetGUID();
80 if (go->GetEntry() == 181812) //The Maker Rear door
81 {
82 _doorGUIDs[2] = go->GetGUID();
84 HandleGameObject(go->GetGUID(), true);
85 }
86 if (go->GetEntry() == 181822) //Broggok Front door
87 _doorGUIDs[3] = go->GetGUID();
88 if (go->GetEntry() == 181819) //Broggok Rear door
89 {
90 _doorGUIDs[4] = go->GetGUID();
92 HandleGameObject(go->GetGUID(), true);
93 }
94 if (go->GetEntry() == 181823) //Kelidan exit door
95 _doorGUIDs[5] = go->GetGUID();
96
97 if (go->GetEntry() == 181821) //Broggok prison cell front right
98 _prisonGUIDs[0] = go->GetGUID();
99 if (go->GetEntry() == 181818) //Broggok prison cell back right
100 _prisonGUIDs[1] = go->GetGUID();
101 if (go->GetEntry() == 181820) //Broggok prison cell front left
102 _prisonGUIDs[2] = go->GetGUID();
103 if (go->GetEntry() == 181817) //Broggok prison cell back left
104 _prisonGUIDs[3] = go->GetGUID();
105
106 if (go->GetEntry() == 181982)
107 _broggokLeverGUID = go->GetGUID(); //Broggok lever
108 }
@ DONE
Definition: InstanceScript.h:59
uint32 GetData(uint32 type) const override
Definition: instance_blood_furnace.cpp:165
ObjectGuid _broggokLeverGUID
Definition: instance_blood_furnace.cpp:41

References _broggokLeverGUID, _doorGUIDs, _prisonGUIDs, DATA_BROGGOK, DATA_THE_MAKER, DONE, GetData(), Object::GetEntry(), Object::GetGUID(), and InstanceScript::HandleGameObject().

◆ OnUnitDeath()

void instance_blood_furnace::instance_blood_furnace_InstanceMapScript::OnUnitDeath ( Unit unit)
inlineoverridevirtual

Reimplemented from ZoneScript.

69 {
70 if (unit && unit->GetTypeId() == TYPEID_UNIT && unit->GetEntry() == NPC_NASCENT_FEL_ORC)
71 PrisonerDied(unit->GetGUID());
72 }
@ TYPEID_UNIT
Definition: ObjectGuid.h:37
TypeID GetTypeId() const
Definition: Object.h:121
void PrisonerDied(ObjectGuid guid)
Definition: instance_blood_furnace.cpp:284

References Object::GetEntry(), Object::GetGUID(), Object::GetTypeId(), NPC_NASCENT_FEL_ORC, PrisonerDied(), and TYPEID_UNIT.

◆ PrisonerDied()

void instance_blood_furnace::instance_blood_furnace_InstanceMapScript::PrisonerDied ( ObjectGuid  guid)
inline
285 {
286 if (_prisonersCell[0].find(guid) != _prisonersCell[0].end() && --_prisonerCounter[0] <= 0)
288 else if (_prisonersCell[1].find(guid) != _prisonersCell[1].end() && --_prisonerCounter[1] <= 0)
290 else if (_prisonersCell[2].find(guid) != _prisonersCell[2].end() && --_prisonerCounter[2] <= 0)
292 else if (_prisonersCell[3].find(guid) != _prisonersCell[3].end() && --_prisonerCounter[3] <= 0)
294 }
void ActivateCell(uint8 id)
Definition: instance_blood_furnace.cpp:296

References _prisonerCounter, _prisonersCell, ActivateCell(), DATA_DOOR5, DATA_PRISON_CELL2, DATA_PRISON_CELL3, and DATA_PRISON_CELL4.

Referenced by OnUnitDeath().

◆ ResetPrisoner()

void instance_blood_furnace::instance_blood_furnace_InstanceMapScript::ResetPrisoner ( Creature prisoner)
inline
240 {
241 if (!prisoner->IsAlive())
242 prisoner->Respawn(true);
244 prisoner->SetImmuneToAll(true);
245 }
void Respawn(bool force=false)
Definition: Creature.cpp:1989
bool IsAlive() const
Definition: Unit.h:1806
void SetUnitFlag(UnitFlags flags)
Definition: Unit.h:1480
void SetImmuneToAll(bool apply, bool keepCombat=false)
Definition: Unit.h:1676

References Unit::IsAlive(), Creature::Respawn(), Unit::SetImmuneToAll(), Unit::SetUnitFlag(), and UNIT_FLAG_NON_ATTACKABLE.

Referenced by ResetPrisoners(), and StorePrisoner().

◆ ResetPrisoners()

void instance_blood_furnace::instance_blood_furnace_InstanceMapScript::ResetPrisoners ( GuidSet  prisoners)
inline
233 {
234 for (ObjectGuid const& guid : prisoners)
235 if (Creature* prisoner = instance->GetCreature(guid))
236 ResetPrisoner(prisoner);
237 }
void ResetPrisoner(Creature *prisoner)
Definition: instance_blood_furnace.cpp:239

References Map::GetCreature(), InstanceScript::instance, and ResetPrisoner().

Referenced by ResetPrisons().

◆ ResetPrisons()

void instance_blood_furnace::instance_blood_furnace_InstanceMapScript::ResetPrisons ( )
inline
223 {
224 for (uint8 i = 0; i < 4; ++i)
225 {
226 _prisonerCounter[i] = _prisonersCell[i].size();
229 }
230 }
void ResetPrisoners(GuidSet prisoners)
Definition: instance_blood_furnace.cpp:232

References _prisonerCounter, _prisonersCell, _prisonGUIDs, InstanceScript::HandleGameObject(), and ResetPrisoners().

Referenced by UpdateBroggokEvent().

◆ SetData()

void instance_blood_furnace::instance_blood_furnace_InstanceMapScript::SetData ( uint32  type,
uint32  data 
)
inlineoverridevirtual

Reimplemented from ZoneScript.

138 {
139 switch (type)
140 {
141 case DATA_THE_MAKER:
142 case DATA_BROGGOK:
143 case DATA_KELIDAN:
144 _auiEncounter[type] = data;
145 if (type == DATA_BROGGOK)
146 UpdateBroggokEvent(data);
147 break;
148 }
149
150 if (data == DONE)
151 SaveToDB();
152 }
void SaveToDB()
Definition: InstanceScript.cpp:40
void UpdateBroggokEvent(uint32 data)
Definition: instance_blood_furnace.cpp:204

References _auiEncounter, DATA_BROGGOK, DATA_KELIDAN, DATA_THE_MAKER, DONE, InstanceScript::SaveToDB(), and UpdateBroggokEvent().

◆ StorePrisoner()

void instance_blood_furnace::instance_blood_furnace_InstanceMapScript::StorePrisoner ( Creature creature)
inline
248 {
249 float posX = creature->GetPositionX();
250 float posY = creature->GetPositionY();
251
252 if (posX >= 405.0f && posX <= 423.0f)
253 {
254 if (posY >= 106.0f && posY <= 123.0f)
255 {
256 _prisonersCell[0].insert(creature->GetGUID());
257 ++_prisonerCounter[0];
258 ResetPrisoner(creature);
259 }
260 else if (posY >= 76.0f && posY <= 91.0f)
261 {
262 _prisonersCell[1].insert(creature->GetGUID());
263 ++_prisonerCounter[1];
264 ResetPrisoner(creature);
265 }
266 }
267 else if (posX >= 490.0f && posX <= 506.0f)
268 {
269 if (posY >= 106.0f && posY <= 123.0f)
270 {
271 _prisonersCell[2].insert(creature->GetGUID());
272 ++_prisonerCounter[2];
273 ResetPrisoner(creature);
274 }
275 else if (posY >= 76.0f && posY <= 91.0f)
276 {
277 _prisonersCell[3].insert(creature->GetGUID());
278 ++_prisonerCounter[3];
279 ResetPrisoner(creature);
280 }
281 }
282 }
float GetPositionX() const
Definition: Position.h:117
float GetPositionY() const
Definition: Position.h:118

References _prisonerCounter, _prisonersCell, Object::GetGUID(), Position::GetPositionX(), Position::GetPositionY(), and ResetPrisoner().

Referenced by OnCreatureCreate().

◆ UpdateBroggokEvent()

void instance_blood_furnace::instance_blood_furnace_InstanceMapScript::UpdateBroggokEvent ( uint32  data)
inline
205 {
206 switch (data)
207 {
208 case IN_PROGRESS:
210 HandleGameObject(_doorGUIDs[3], false);
211 break;
212 case NOT_STARTED:
213 ResetPrisons();
214 HandleGameObject(_doorGUIDs[4], false);
217 lever->Respawn();
218 break;
219 }
220 }
Definition: GameObject.h:813
GameObject * GetGameObject(ObjectGuid const guid)
Definition: Map.cpp:3295
void ResetPrisons()
Definition: instance_blood_furnace.cpp:222

References _broggokLeverGUID, _doorGUIDs, ActivateCell(), DATA_PRISON_CELL1, Map::GetGameObject(), InstanceScript::HandleGameObject(), IN_PROGRESS, InstanceScript::instance, NOT_STARTED, and ResetPrisons().

Referenced by SetData().

Member Data Documentation

◆ _auiEncounter

uint32 instance_blood_furnace::instance_blood_furnace_InstanceMapScript::_auiEncounter[MAX_ENCOUNTER]

◆ _bossGUIDs

ObjectGuid instance_blood_furnace::instance_blood_furnace_InstanceMapScript::_bossGUIDs[3]

Referenced by GetGuidData(), and OnCreatureCreate().

◆ _broggokLeverGUID

ObjectGuid instance_blood_furnace::instance_blood_furnace_InstanceMapScript::_broggokLeverGUID

◆ _doorGUIDs

ObjectGuid instance_blood_furnace::instance_blood_furnace_InstanceMapScript::_doorGUIDs[6]

◆ _prisonerCounter

uint8 instance_blood_furnace::instance_blood_furnace_InstanceMapScript::_prisonerCounter[4]

◆ _prisonersCell

GuidSet instance_blood_furnace::instance_blood_furnace_InstanceMapScript::_prisonersCell[4]

◆ _prisonGUIDs

ObjectGuid instance_blood_furnace::instance_blood_furnace_InstanceMapScript::_prisonGUIDs[4]