Код:
diff --git "a/C:\\Users\\Axxl\\AppData\\Local\\Temp\\UniA4D7.tmp\\UnitAuraProcHandler-91c2376-left.cpp" "b/E:\\Wow Git Sources\\Wotlk\\cmangos\\src\\game\\UnitAuraProcHandler.cpp"
index 903ec7a..d7090b3 100644
--- "a/C:\\Users\\Axxl\\AppData\\Local\\Temp\\UniA4D7.tmp\\UnitAuraProcHandler-91c2376-left.cpp"
+++ "b/E:\\Wow Git Sources\\Wotlk\\cmangos\\src\\game\\UnitAuraProcHandler.cpp"
@@ -2096,7 +2096,23 @@ SpellAuraProcResult Unit::HandleDummyAuraProc(Unit* pVictim, uint32 damage, Aura
}
// Sacred Shield (talent rank)
case 53601:
- {
+ {
+ if (procSpell && IsFriendlyTo(pVictim))
+ {
+ if (procSpell->SpellFamilyFlags & UI64LIT(0x00000000C0000000))
+ {
+ if(pVictim->HasAura(53569, EFFECT_INDEX_0) || pVictim->HasAura(53576, EFFECT_INDEX_0))
+ {
+ triggered_spell_id = 66922;
+ basepoints[0] = int32(damage / GetSpellAuraMaxTicks(triggered_spell_id));
+ if (pVictim->HasAura(53569, EFFECT_INDEX_0))
+ basepoints[0] = basepoints[0] >> 1;
+ }
+ }
+ else
+ return SPELL_AURA_PROC_FAILED;
+ }
+
// triggered_spell_id in spell data
target = this;
break;