diff options
-rw-r--r-- | src/game/Spell.cpp | 2 | ||||
-rw-r--r-- | src/game/SpellMgr.cpp | 5 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index dc5dbe6b4ea..2808b6fdbaf 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -1194,6 +1194,7 @@ void Spell::DoSpellHitOnUnit(Unit *unit, const uint32 effectMask) // SPELL_AURA_ADD_TARGET_TRIGGER auras shouldn't trigger auras without duration // set duration equal to triggering spell if (GetSpellDuration(i->first)==-1) + { // get duration from aura-only once if (!_duration) { @@ -1201,6 +1202,7 @@ void Spell::DoSpellHitOnUnit(Unit *unit, const uint32 effectMask) _duration = aur ? aur->GetAuraDuration() : -1; } unit->SetAurasDurationByCasterSpell(i->first->Id, m_caster->GetGUID(), _duration); + } } } } diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp index e42e5dc4488..fcde116a71e 100644 --- a/src/game/SpellMgr.cpp +++ b/src/game/SpellMgr.cpp @@ -2395,6 +2395,11 @@ void SpellMgr::LoadSpellCustomAttr() if(spellInfo->SpellFamilyFlags[2] & 0x100) spellInfo->MaxAffectedTargets = 2; break; + case SPELLFAMILY_PRIEST: + // Penance + if (spellInfo->SpellFamilyFlags[1] & 800000) + m_spellProto->AttributesEx5 | SPELL_ATTR_EX5_START_PERIODIC_AT_APPLY; + break; } } } |