bool SetBossState(uint32 id, EncounterState state) { if (!InstanceScript::SetBossState(id, state)) return false; switch (id) { case BOSS_KOLOGARN: if (state == DONE) HandleGameObject(uiKologarnBridge, false); break; case BOSS_HODIR: CheckKeepersState(); break; case BOSS_THORIM: if (GameObject* pThorimLever = instance->GetGameObject(uiThorimLever)) { if (state == IN_PROGRESS) pThorimLever->RemoveFlag(GAMEOBJECT_FLAGS,GO_FLAG_UNK1); } CheckKeepersState(); break; case BOSS_MIMIRON: CheckKeepersState(); break; case BOSS_FREYA: CheckKeepersState(); break; case BOSS_VEZAX: if (state == DONE) { // Keeper's Images if (Creature* pFreya = instance->GetCreature(uiFreyaImage)) pFreya->SetVisible(true); if (Creature* pThorim = instance->GetCreature(uiThorimImage)) pThorim->SetVisible(true); if (Creature* pMimiron = instance->GetCreature(uiMimironImage)) pMimiron->SetVisible(true); if (Creature* pHodir = instance->GetCreature(uiHodirImage)) pHodir->SetVisible(true); } break; case BOSS_ALGALON: if (GameObject* pCelestialDoor = instance->GetGameObject(uiCelestialDoor)) pCelestialDoor->SetGoState(GO_STATE_READY); if (GameObject* pUniverseFloorCelestial = instance->GetGameObject(uiUniverseFloorCelestial)) pUniverseFloorCelestial->SetGoState(GO_STATE_READY); if (state == DONE) DoRespawnGameObject(uiAlagonLoot, 30*MINUTE); break; } return true; }
bool SetBossState(uint32 id, EncounterState state) { if (!InstanceData::SetBossState(id, state)) return false; switch (id) { case BOSS_KOLOGARN: if (state == DONE) { HandleGameObject(uiKologarnBridge, false); KologarnChest->SetRespawnTime(KologarnChest->GetRespawnDelay()); } break; case BOSS_HODIR: if (state == DONE) HodirChest->SetRespawnTime(HodirChest->GetRespawnDelay()); CheckKeepersState(); break; case BOSS_THORIM: if (state == IN_PROGRESS) pThorimLever->RemoveFlag(GAMEOBJECT_FLAGS,GO_FLAG_UNK1); CheckKeepersState(); break; case BOSS_MIMIRON: CheckKeepersState(); break; case BOSS_FREYA: CheckKeepersState(); break; case BOSS_VEZAX: if (state == DONE) { // Keeper's Images if (Creature* pFreya = instance->GetCreature(uiFreyaImage)) pFreya->SetVisibility(VISIBILITY_ON); if (Creature* pThorim = instance->GetCreature(uiThorimImage)) pThorim->SetVisibility(VISIBILITY_ON); if (Creature* pMimiron = instance->GetCreature(uiMimironImage)) pMimiron->SetVisibility(VISIBILITY_ON); if (Creature* pHodir = instance->GetCreature(uiHodirImage)) pHodir->SetVisibility(VISIBILITY_ON); } break; } return true; }
bool SetBossState(uint32 id, EncounterState state) { if (!InstanceScript::SetBossState(id, state)) return false; switch (id) { case BOSS_KOLOGARN: if (state == DONE) HandleGameObject(uiKologarnBridge, false); break; case BOSS_HODIR: CheckKeepersState(); break; case BOSS_THORIM: if (GameObject* pThorimLever = instance->GetGameObject(ThorimLeverGUID)) { if (state == IN_PROGRESS) pThorimLever->RemoveFlag(GAMEOBJECT_FLAGS,GO_FLAG_UNK1); } CheckKeepersState(); break; case BOSS_MIMIRON: CheckKeepersState(); break; case BOSS_FREYA: CheckKeepersState(); break; case BOSS_VEZAX: if (state == DONE) { // Keeper's Images if (Creature* pFreya = instance->GetCreature(uiFreyaImage)) pFreya->SetVisible(true); if (Creature* pThorim = instance->GetCreature(uiThorimImage)) pThorim->SetVisible(true); if (Creature* pMimiron = instance->GetCreature(uiMimironImage)) pMimiron->SetVisible(true); if (Creature* pHodir = instance->GetCreature(uiHodirImage)) pHodir->SetVisible(true); } break; } return true; }