216 for (GuidSet::const_iterator i = prisoners.begin(); i != prisoners.end();)
220 if (!prisoner->IsAlive())
221 i = prisoners.erase(i);
248 if (posX >= 405.0f && posX <= 423.0f && posZ <= 17)
250 if (posY >= 106.0f && posY <= 123.0f)
255 else if (posY >= 76.0f && posY <= 91.0f)
262 else if (posX >= 490.0f && posX <= 506.0f && posZ <= 17)
264 if (posY >= 106.0f && posY <= 123.0f)
269 else if (posY >= 76.0f && posY <= 91.0f)
325 for (GuidSet::const_iterator i = prisoners.begin(); i != prisoners.end(); ++i)
329 prisoner->SetImmuneToAll(
false);
330 prisoner->AI()->DoZoneInCombat();
std::set< ObjectGuid > GuidSet
@ UNIT_FLAG_NON_ATTACKABLE
uint32 const EncounterCount
@ NPC_KELIDAN_THE_BREAKER
@ DATA_KELIDAN_THE_BREAKER
@ ACTION_ACTIVATE_BROGGOK
ObjectGuid const & GetGUID() const
virtual void EnterEvadeMode(EvadeReason why=EvadeReason::Other)
void Respawn(bool force=false)
void SetImmuneToAll(bool apply) override
void SetBossNumber(uint32 number)
virtual bool SetBossState(uint32 id, EncounterState state)
virtual void OnCreatureCreate(Creature *creature) override
void HandleGameObject(ObjectGuid guid, bool open, GameObject *go=nullptr)
void LoadObjectData(std::span< ObjectData const > creatureData, std::span< ObjectData const > gameObjectData)
void SetHeaders(std::string_view dataHeaders)
void LoadDungeonEncounterData(std::span< DungeonEncounterData const > encounters)
virtual void OnGameObjectCreate(GameObject *go) override
virtual void AddDoor(GameObject *door, bool add)
void LoadDoorData(std::span< DoorData const > data)
Creature * GetCreature(ObjectGuid const &guid)
static ObjectGuid const Empty
void SetUnitFlag(UnitFlags flags)
InstanceScript * GetInstanceScript(InstanceMap *map) const override
static constexpr ObjectData creatureData[]
static constexpr DoorData doorData[]
static constexpr ObjectData gameObjectData[]
static constexpr DungeonEncounterData encounters[]
void AddSC_instance_blood_furnace()
constexpr float GetPositionX() const
constexpr float GetPositionY() const
constexpr float GetPositionZ() const
void PrisonerDied(ObjectGuid guid)
void OnGameObjectCreate(GameObject *go) override
ObjectGuid GetGuidData(uint32 type) const override
ObjectGuid PrisonDoor4GUID
void ResetPrisoner(Creature *prisoner)
ObjectGuid KelidanTheBreakerGUID
void ActivatePrisoners(GuidSet const &prisoners)
void OnUnitDeath(Unit *unit) override
ObjectGuid BroggokLeverGUID
bool SetBossState(uint32 type, EncounterState state) override
void ActivateCell(uint8 id)
void OnCreatureCreate(Creature *creature) override
instance_blood_furnace_InstanceMapScript(InstanceMap *map)
void StorePrisoner(Creature *creature)
void ResetPrisoners(GuidSet &prisoners)
ObjectGuid PrisonCellGUIDs[8]