rendered paste body
//Affliction_Timer
if (Affliction_Timer < diff)
{
std::list<HostilReference*>::iterator i = m_creature->getThreatManager().getThreatList().begin();
switch (rand()%5)
{
case 0:
for (i = m_creature->getThreatManager().getThreatList().begin(); i!= m_creature->getThreatManager().getThreatList().end();i++)
{
Unit* pUnit = Unit::GetUnit((*m_creature), (*i)->getUnitGuid());
if(pUnit)
{
m_creature->CastSpell(pUnit, SPELL_BROODAF_BLUE, true);
}
}
break;
case 1:
for (i = m_creature->getThreatManager().getThreatList().begin(); i!= m_creature->getThreatManager().getThreatList().end();i++)
{
Unit* pUnit = Unit::GetUnit((*m_creature), (*i)->getUnitGuid());
if(pUnit)
{
m_creature->CastSpell(pUnit, SPELL_BROODAF_BLACK, true);
}
}
break;
case 2:
for (i = m_creature->getThreatManager().getThreatList().begin(); i!= m_creature->getThreatManager().getThreatList().end();i++)
{
Unit* pUnit = Unit::GetUnit((*m_creature), (*i)->getUnitGuid());
if(pUnit)
{
m_creature->CastSpell(pUnit, SPELL_BROODAF_RED, true);
}
}
break;
case 3:
for (i = m_creature->getThreatManager().getThreatList().begin(); i!= m_creature->getThreatManager().getThreatList().end();i++)
{
Unit* pUnit = Unit::GetUnit((*m_creature), (*i)->getUnitGuid());
if(pUnit)
{
m_creature->CastSpell(pUnit, SPELL_BROODAF_BRONZE, true);
}
}
break;
case 4:
for (i = m_creature->getThreatManager().getThreatList().begin(); i!= m_creature->getThreatManager().getThreatList().end();i++)
{
Unit* pUnit = Unit::GetUnit((*m_creature), (*i)->getUnitGuid());
if(pUnit)
{
m_creature->CastSpell(pUnit, SPELL_BROODAF_GREEN, true);
}
}
break;
}
//8-16 seconds until we should cast this agian
Affliction_Timer = 8000 + (rand() % 8000);
}else Affliction_Timer -= diff;
if (Check_Timer <diff)
{
//Checking if a gamer has all 5 Affliction auras. If yes player will die
std::list<HostilReference*>::iterator i = m_creature->getThreatManager().getThreatList().begin();
for (i = m_creature->getThreatManager().getThreatList().begin(); i!= m_creature->getThreatManager().getThreatList().end();i++)
{
Unit* pUnit = Unit::GetUnit((*m_creature), (*i)->getUnitGuid());
if(pUnit
&& pUnit->HasAura(SPELL_BROODAF_BLUE,0)
&& pUnit->HasAura(SPELL_BROODAF_BLACK,0)
&& pUnit->HasAura(SPELL_BROODAF_RED,0)
&& pUnit->HasAura(SPELL_BROODAF_BRONZE,0)
&& pUnit->HasAura(SPELL_BROODAF_GREEN,0))
{
//Chromatic mutation is causing issues
//Assuming it is caused by a lack of core support for Charm
//So instead we instant kill our target
//DoCast(target,SPELL_CHROMATIC_MUT_1);
pUnit->DealDamage(pUnit, pUnit->GetHealth(), NULL, DIRECT_DAMAGE, SPELL_SCHOOL_NORMAL, NULL, true);
}
}
Check_Timer = 1000;
}else Check_Timer -= diff;