Some spells with special proc state, some talents like it

--HG--
branch : trunk
This commit is contained in:
thenecromancer
2010-07-21 01:15:27 +02:00
parent 6ca2aa0dd7
commit c9860e3b9f
+44
View File
@@ -790,6 +790,50 @@ void Spell::prepareDataForTriggerSystem(AuraEffect const * /*triggeredByAura*/)
to prevent chain proc of these spells
*/
switch (m_spellInfo->SpellFamilyName)
{
case SPELLFAMILY_MAGE:
{
// Blizzard - trigger as DOT
if (m_spellInfo->SpellFamilyFlags[0] & 0x80)
{
m_procAttacker = PROC_FLAG_ON_DO_PERIODIC;
m_procVictim = PROC_FLAG_ON_TAKE_PERIODIC;
}
break;
}
case SPELLFAMILY_WARLOCK:
{
// For Hellfire Effect / Rain of Fire - trigger as DOT
if (m_spellInfo->SpellFamilyFlags[0] & 0x60)
{
m_procAttacker = PROC_FLAG_ON_DO_PERIODIC;
m_procVictim = PROC_FLAG_ON_TAKE_PERIODIC;
}
break;
}
case SPELLFAMILY_HUNTER:
{
// Volley - trigger as DOT
if (m_spellInfo->SpellFamilyFlags[0] & 0x0002000)
{
m_procAttacker = PROC_FLAG_ON_DO_PERIODIC;
m_procVictim = PROC_FLAG_ON_TAKE_PERIODIC;
}
break;
}
case SPELLFAMILY_DRUID:
{
// Hurricane - trigger as DOT
if (m_spellInfo->SpellFamilyFlags[0] & 0x0400000)
{
m_procAttacker = PROC_FLAG_ON_DO_PERIODIC;
m_procVictim = PROC_FLAG_ON_TAKE_PERIODIC;
}
break;
}
}
// Ranged autorepeat attack is set as triggered spell - ignore it
if (!(m_procAttacker & PROC_FLAG_SUCCESSFUL_RANGED_HIT))
{