From db24e2927c0a67576011692ef8c2f8150da9425f Mon Sep 17 00:00:00 2001 From: thenecromancer Date: Wed, 13 Jan 2010 10:47:51 +0100 Subject: Implement Sacred Shield bonus for Flash of Light, fix absorb being proced on taking heals --HG-- branch : trunk --- src/game/Unit.cpp | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index 78e8ece31bd..b1a7761788e 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -6565,8 +6565,21 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger // Sacred Shield if (dummySpell->SpellFamilyFlags[1]&0x00080000) { - triggered_spell_id = 58597; - target = this; + if (procFlag & PROC_FLAG_TAKEN_POSITIVE_MAGIC_SPELL) + { + if (procSpell->SpellFamilyName == SPELLFAMILY_PALADIN + && (procSpell->SpellFamilyFlags[0] & 0x40000000)) + { + basepoints0 = int32(float(damage)/12.0f); + CastCustomSpell(this,66922,&basepoints0,NULL,NULL,true,0,triggeredByAura, pVictim->GetGUID()); + return true; + } + else + return false; + } + else + triggered_spell_id = 58597; + target = this; break; } // Righteous Vengeance -- cgit v1.2.3