aboutsummaryrefslogtreecommitdiff
path: root/src/game/Unit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/Unit.cpp')
-rw-r--r--src/game/Unit.cpp17
1 files changed, 15 insertions, 2 deletions
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