diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index 8053542a1..956155e83 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -5776,6 +5776,24 @@ void Aura::HandleSchoolAbsorb(bool apply, bool Real) m_modifier.m_amount += (int32)DoneActualBenefit; } + // Shattered Barrier + if(!apply && m_spellProto->SpellIconID == 32 && m_spellProto->SpellFamilyName == SPELLFAMILY_MAGE) + { + Unit* caster = GetCaster(); + if (!((m_removeMode == AURA_REMOVE_BY_DEFAULT && !m_modifier.m_amount) || m_removeMode == AURA_REMOVE_BY_DISPEL)) + return; + + if (caster->HasAura(44745,0)) // rank 1 + { + if(roll_chance_i(50)) + caster->CastSpell(caster, 55080, true, NULL, this); + } + else if (caster->HasAura(54787,0)) // rank 2 + { + caster->CastSpell(caster, 55080, true, NULL, this); + } + } + if (!apply && caster && // Power Word: Shield m_spellProto->SpellFamilyName == SPELLFAMILY_PRIEST && m_spellProto->Mechanic == MECHANIC_SHIELD && diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index de2fb865a..087d3533d 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "8238" + #define REVISION_NR "8239" #endif // __REVISION_NR_H__