diff options
author | Anubisss <none@none> | 2009-05-13 18:37:02 +0200 |
---|---|---|
committer | Anubisss <none@none> | 2009-05-13 18:37:02 +0200 |
commit | 9dd5a1c6d7a6656b8ec71ff33659acd2294633ad (patch) | |
tree | 09f24f9d44421b6f559b6b50990500a3b1fe9886 /src | |
parent | 131c29f1329aa6ec696f51fbe2c75178dc8f8262 (diff) |
*Better way in Glyph of Prayer of Healing.
--HG--
branch : trunk
Diffstat (limited to 'src')
-rw-r--r-- | src/game/Unit.cpp | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index 66576396dfa..aacdc9aff52 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -5612,8 +5612,26 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger // Glyph of Prayer of Healing case 55680: { - basepoints0 = int32(damage * 20 / 100 / 2); // divided in two ticks triggered_spell_id = 56161; + + SpellEntry const* GoPoH = sSpellStore.LookupEntry(triggered_spell_id); + if(!GoPoH) + return false; + + int EffIndex = 0; + for(int i = 0; i < MAX_SPELL_EFFECTS; i++) + { + if(GoPoH->Effect[i] == SPELL_EFFECT_APPLY_AURA) + { + EffIndex = i; + break; + } + } + int32 tickcount = GetSpellMaxDuration(GoPoH) / GoPoH->EffectAmplitude[EffIndex]; + if(!tickcount) + return false; + + basepoints0 = damage * triggerAmount / tickcount / 100; break; } // Improved Shadowform |