Index: src/game/Unit.cpp =================================================================== --- src/game/Unit.cpp (revision 5945) +++ src/game/Unit.cpp (working copy) @@ -5718,7 +5718,7 @@ //Pyroclasm if(auraSpellInfo->SpellFamilyFlags == 0x0000000000000000 && auraSpellInfo->SpellIconID==1137) { - if(!pVictim || !pVictim->isAlive()) + if(!pVictim || !pVictim->isAlive() || pVictim == this) return; float chance = 0; @@ -5731,6 +5731,15 @@ chance = 26.0f; break; } + switch (procSpell->SpellIconID) + { + case 547: + chance /= 4; + break; + case 937: + chance /= 15; + break; + } if (roll_chance_f(chance)) CastSpell(pVictim, 18093, true, castItem, triggeredByAura); return;