[9151] More paladin spells fixes

* Allow stacking caster effect with target effect at same player for 53736. Provided by KAPATEJIb.
* Allow proc 53736/31801 at melee hits or melee like spell hits

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
This commit is contained in:
MrLama 2010-01-12 03:27:08 +03:00 committed by VladimirMangos
parent 171a2e02d7
commit fc7bb9468f
3 changed files with 12 additions and 5 deletions

View file

@ -1685,6 +1685,9 @@ bool SpellMgr::IsNoStackSpellDueToSpell(uint32 spellId_1, uint32 spellId_2) cons
if ((spellInfo_1->SpellIconID == 1487) && (spellInfo_2->SpellIconID == 1487))
return false;
// Seal of Corruption (caster/target parts stacking allow, other stacking checked by spell specs)
if (spellInfo_1->SpellIconID == 2292 && spellInfo_2->SpellIconID == 2292)
return false;
}
// Blessing of Sanctuary (multi-family check, some from 16 spell icon spells)

View file

@ -6128,9 +6128,11 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura* triggeredByAu
if(effIndex != 0) // effect 1,2 used by seal unleashing code
return false;
triggered_spell_id = 31803;
// At melee attack or Hammer of the Righteous spell damage considered as melee attack
if ((procFlag & PROC_FLAG_SUCCESSFUL_MELEE_HIT) || (procSpell && procSpell->Id == 53595) )
triggered_spell_id = 31803; // Holy Vengeance
// Add 5-stack effect
// Add 5-stack effect from Holy Vengeance
int8 stacks = 0;
AuraList const& auras = target->GetAurasByType(SPELL_AURA_PERIODIC_DAMAGE);
for(AuraList::const_iterator itr = auras.begin(); itr!=auras.end(); ++itr)
@ -6228,9 +6230,11 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura* triggeredByAu
if(effIndex != 0) // effect 1,2 used by seal unleashing code
return false;
triggered_spell_id = 53742;
// At melee attack or Hammer of the Righteous spell damage considered as melee attack
if ((procFlag & PROC_FLAG_SUCCESSFUL_MELEE_HIT) || (procSpell && procSpell->Id == 53595))
triggered_spell_id = 53742; // Blood Corruption
// Add 5-stack effect
// Add 5-stack effect from Blood Corruption
int8 stacks = 0;
AuraList const& auras = target->GetAurasByType(SPELL_AURA_PERIODIC_DAMAGE);
for(AuraList::const_iterator itr = auras.begin(); itr!=auras.end(); ++itr)

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__
#define __REVISION_NR_H__
#define REVISION_NR "9150"
#define REVISION_NR "9151"
#endif // __REVISION_NR_H__