mirror of
https://github.com/mangosfour/server.git
synced 2025-12-20 16:37:04 +00:00
[8341] Update hardcoded coefficients for Aura::HandleSchoolAbsorb.
Also update spell family masks. Thanks to raftom for pointing to problem.
This commit is contained in:
parent
3c297ac8c4
commit
9c387ec9fd
2 changed files with 16 additions and 22 deletions
|
|
@ -5853,32 +5853,26 @@ void Aura::HandleSchoolAbsorb(bool apply, bool Real)
|
||||||
switch(m_spellProto->SpellFamilyName)
|
switch(m_spellProto->SpellFamilyName)
|
||||||
{
|
{
|
||||||
case SPELLFAMILY_PRIEST:
|
case SPELLFAMILY_PRIEST:
|
||||||
if(m_spellProto->SpellFamilyFlags == 0x1) //PW:S
|
// Power Word: Shield
|
||||||
{
|
if (m_spellProto->SpellFamilyFlags & UI64LIT(0x0000000000000001))
|
||||||
//+30% from +healing bonus
|
//+80.68% from +spell bonus
|
||||||
DoneActualBenefit = caster->SpellBaseHealingBonus(GetSpellSchoolMask(m_spellProto)) * 0.3f;
|
DoneActualBenefit = caster->SpellBaseHealingBonus(GetSpellSchoolMask(m_spellProto)) * 0.8068f;
|
||||||
break;
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case SPELLFAMILY_MAGE:
|
case SPELLFAMILY_MAGE:
|
||||||
if (m_spellProto->SpellFamilyFlags == UI64LIT(0x80100) ||
|
// Frost Ward, Fire Ward
|
||||||
m_spellProto->SpellFamilyFlags == UI64LIT(0x8) ||
|
if (m_spellProto->SpellFamilyFlags & UI64LIT(0x0000000000000108))
|
||||||
m_spellProto->SpellFamilyFlags == UI64LIT(0x100000000))
|
//+10% from +spell bonus
|
||||||
{
|
|
||||||
//frost ward, fire ward, ice barrier
|
|
||||||
//+10% from +spd bonus
|
|
||||||
DoneActualBenefit = caster->SpellBaseDamageBonus(GetSpellSchoolMask(m_spellProto)) * 0.1f;
|
DoneActualBenefit = caster->SpellBaseDamageBonus(GetSpellSchoolMask(m_spellProto)) * 0.1f;
|
||||||
break;
|
// Ice Barrier
|
||||||
}
|
else if (m_spellProto->SpellFamilyFlags & UI64LIT(0x0000000100000000))
|
||||||
|
//+80.67% from +spell bonus
|
||||||
|
DoneActualBenefit = caster->SpellBaseDamageBonus(GetSpellSchoolMask(m_spellProto)) * 0.8067f;
|
||||||
break;
|
break;
|
||||||
case SPELLFAMILY_WARLOCK:
|
case SPELLFAMILY_WARLOCK:
|
||||||
if(m_spellProto->SpellFamilyFlags == 0x00)
|
// Shadow Ward
|
||||||
{
|
if (m_spellProto->SpellFamilyFlags2 & 0x00000040)
|
||||||
//shadow ward
|
//+30% from +spell bonus
|
||||||
//+10% from +spd bonus
|
DoneActualBenefit = caster->SpellBaseDamageBonus(GetSpellSchoolMask(m_spellProto)) * 0.30f;
|
||||||
DoneActualBenefit = caster->SpellBaseDamageBonus(GetSpellSchoolMask(m_spellProto)) * 0.1f;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
#ifndef __REVISION_NR_H__
|
#ifndef __REVISION_NR_H__
|
||||||
#define __REVISION_NR_H__
|
#define __REVISION_NR_H__
|
||||||
#define REVISION_NR "8340"
|
#define REVISION_NR "8341"
|
||||||
#endif // __REVISION_NR_H__
|
#endif // __REVISION_NR_H__
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue