Fix crash #3274 in Unit::HandleDummyAuraProc

This commit is contained in:
megamage
2011-10-07 18:06:33 -04:00
parent 47994f82d7
commit 8c9bd67fe9
+9
View File
@@ -5766,6 +5766,8 @@ bool Unit::HandleDummyAuraProc(Unit* victim, uint32 damage, AuraEffect* triggere
// Blessing of Ancient Kings (Val'anyr, Hammer of Ancient Kings)
case 64411:
{
if(!victim)
return false;
basepoints0 = int32(CalculatePctN(damage, 15));
if (AuraEffect* aurEff = victim->GetAuraEffect(64413, 0, GetGUID()))
{
@@ -6065,6 +6067,9 @@ bool Unit::HandleDummyAuraProc(Unit* victim, uint32 damage, AuraEffect* triggere
// Divine Aegis
if (dummySpell->SpellIconID == 2820)
{
if(!target)
return false;
// Multiple effects stack, so let's try to find this aura.
int32 bonus = 0;
if (AuraEffect const* aurEff = target->GetAuraEffect(47753, 0))
@@ -6528,6 +6533,8 @@ bool Unit::HandleDummyAuraProc(Unit* victim, uint32 damage, AuraEffect* triggere
// Explosive Shot
if (procSpell->SpellFamilyFlags[2] & 0x200)
{
if(!victim)
return false;
if (AuraEffect const* pEff = victim->GetAuraEffect(SPELL_AURA_PERIODIC_DUMMY, SPELLFAMILY_HUNTER, 0x0, 0x80000000, 0x0, GetGUID()))
basepoints0 = pEff->GetSpellInfo()->CalcPowerCost(this, SpellSchoolMask(pEff->GetSpellInfo()->SchoolMask)) * 4/10/3;
}
@@ -7224,6 +7231,8 @@ bool Unit::HandleDummyAuraProc(Unit* victim, uint32 damage, AuraEffect* triggere
// Item - Shaman T10 Elemental 4P Bonus
case 70817:
{
if(!target)
return false;
// try to find spell Flame Shock on the target
if (AuraEffect const* aurEff = target->GetAuraEffect(SPELL_AURA_PERIODIC_DAMAGE, SPELLFAMILY_SHAMAN, 0x10000000, 0x0, 0x0, GetGUID()))
{