void JustDied(Unit* /*pKiller*/) { DoScriptText(SAY_DEATH, me); DespawnSphere(); if(pInstance) { if(pInstance->GetData(DATA_WAVE_COUNT) == 6) { if(IsHeroic() && pInstance->GetData(DATA_1ST_BOSS_EVENT) == DONE) me->RemoveFlag(UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_LOOTABLE); pInstance->SetData(DATA_1ST_BOSS_EVENT, DONE); pInstance->SetData(DATA_WAVE_COUNT, 7); } else if(pInstance->GetData(DATA_WAVE_COUNT) == 12) { if(IsHeroic() && pInstance->GetData(DATA_2ND_BOSS_EVENT) == DONE) me->RemoveFlag(UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_LOOTABLE); pInstance->SetData(DATA_2ND_BOSS_EVENT, NOT_STARTED); pInstance->SetData(DATA_WAVE_COUNT, 13); } } }
void JustDied(Unit* pKiller) { DoScriptText(SAY_DEATH, m_creature); DespawnSphere(); if (m_pInstance) m_pInstance->SetData(TYPE_XEVOZZ, DONE); }
void Reset() override { if (instance->GetData(DATA_WAVE_COUNT) == 6) instance->SetBossState(DATA_1ST_BOSS_EVENT, NOT_STARTED); else if (instance->GetData(DATA_WAVE_COUNT) == 12) instance->SetBossState(DATA_2ND_BOSS_EVENT, NOT_STARTED); Initialize(); DespawnSphere(); }
void JustDied(Unit* pKiller) { DoScriptText(SAY_DEATH, m_creature); DespawnSphere(); if (m_pInstance){ m_pInstance->SetData(TYPE_XEVOZZ, DONE); if(m_pInstance->GetData(TYPE_PORTAL6) == IN_PROGRESS) {m_pInstance->SetData(TYPE_PORTAL6, DONE);} else {m_pInstance->SetData(TYPE_PORTAL12, DONE);} } }
void Reset() { m_uiSummonEtherealSphere_Timer = urand(10000, 12000); m_uiArcaneBarrageVolley_Timer = urand(20000, 22000); m_uiArcaneBuffet_Timer = m_uiSummonEtherealSphere_Timer + urand(5000, 6000); DespawnSphere(); MovementStarted = false; if (m_pInstance) m_pInstance->SetData(TYPE_XEVOZZ, NOT_STARTED); m_creature->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); m_creature->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); }
void JustDied(Unit* killer) { DoScriptText(SAY_DEATH, m_creature); DespawnSphere(); if (m_instance) { if (!m_bIsRegularMode) m_instance->SetData(DATA_XEVOZZ,SPECIAL); else m_instance->SetData(DATA_XEVOZZ,DONE); if (Creature* pCreature = m_creature->GetMap()->GetCreature(m_instance->GetData64(DOOR_GUID))) pCreature->AI()->DoAction(BOSS_DEAD); } }
void Reset() { if(pInstance) { if(pInstance->GetData(DATA_WAVE_COUNT) == 6) pInstance->SetData(DATA_1ST_BOSS_EVENT, NOT_STARTED); else if(pInstance->GetData(DATA_WAVE_COUNT) == 12) pInstance->SetData(DATA_2ND_BOSS_EVENT, NOT_STARTED); } uiSummonEtherealSphere_Timer = urand(10000, 12000); uiArcaneBarrageVolley_Timer = urand(20000, 22000); uiArcaneBuffet_Timer = uiSummonEtherealSphere_Timer + urand(5000, 6000); DespawnSphere(); }
void UpdateAI(const uint32 uiDiff) { if (m_pInstance->GetData(TYPE_XEVOZZ) == SPECIAL && !MovementStarted) StartMovement(0); //Return since we have no target if (!m_creature->SelectHostileTarget() || !m_creature->getVictim()) return; if (m_uiArcaneBarrageVolley_Timer < uiDiff) { DoCast(m_creature, m_bIsRegularMode ? SPELL_ARCANE_BARRAGE_VOLLEY : SPELL_ARCANE_BARRAGE_VOLLEY_H); m_uiArcaneBarrageVolley_Timer = urand(20000, 22000); } else m_uiArcaneBarrageVolley_Timer -= uiDiff; if (m_uiArcaneBuffet_Timer) { if (m_uiArcaneBuffet_Timer < uiDiff) { DoCast(m_creature->getVictim(), m_bIsRegularMode ? SPELL_ARCANE_BUFFET : SPELL_ARCANE_BUFFET_H); m_uiArcaneBuffet_Timer = 0; } } else m_uiArcaneBuffet_Timer -= uiDiff; if (m_uiSummonEtherealSphere_Timer < uiDiff) { DoScriptText(SAY_SPAWN, m_creature); DoCast(m_creature, SPELL_SUMMON_ETHEREAL_SPHERE_1); if (!m_bIsRegularMode) // extra one for heroic m_creature->SummonCreature(NPC_ETHEREAL_SPHERE, m_creature->GetPositionX()-5+rand()%10, m_creature->GetPositionY()-5+rand()%10, m_creature->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN, 40000); m_uiSummonEtherealSphere_Timer = 30000; m_uiArcaneBuffet_Timer = urand(5000, 6000); m_uiDespawn_Timer= 30000; } else m_uiSummonEtherealSphere_Timer -= uiDiff; if (m_uiDespawn_Timer < uiDiff) { DespawnSphere(); } else m_uiDespawn_Timer -= uiDiff; DoMeleeAttackIfReady(); }
void JustDied(Unit* /*killer*/) override { Talk(SAY_DEATH); DespawnSphere(); if (instance->GetData(DATA_WAVE_COUNT) == 6) { instance->SetBossState(DATA_1ST_BOSS_EVENT, DONE); instance->SetData(DATA_WAVE_COUNT, 7); } else if (instance->GetData(DATA_WAVE_COUNT) == 12) { instance->SetBossState(DATA_2ND_BOSS_EVENT, NOT_STARTED); instance->SetData(DATA_WAVE_COUNT, 13); } }
void JustDied(Unit* /*killer*/) { DoScriptText(SAY_DEATH, me); DespawnSphere(); if (instance) { if (instance->GetData(DATA_WAVE_COUNT) == 6) { instance->SetData(DATA_1ST_BOSS_EVENT, DONE); instance->SetData(DATA_WAVE_COUNT, 7); } else if (instance->GetData(DATA_WAVE_COUNT) == 12) { instance->SetData(DATA_2ND_BOSS_EVENT, NOT_STARTED); instance->SetData(DATA_WAVE_COUNT, 13); } } }