aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDanVS <33371360+DanVS@users.noreply.github.com>2019-02-23 19:22:37 +0000
committerGiacomo Pozzoni <giacomopoz@gmail.com>2019-02-23 20:22:37 +0100
commit054914a83b4faa4e9cc3ae7c5914bacf03a1e7ef (patch)
treef773e06aaf19d8f4411697ecbb07ab61c5757427 /src
parent76cc94f325ab68f66a4fa7b5d30316508e27c0ce (diff)
Glyph of Holy Light (#22198)
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Spells/spell_paladin.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/server/scripts/Spells/spell_paladin.cpp b/src/server/scripts/Spells/spell_paladin.cpp
index 6c209de73c1..046704e2057 100644
--- a/src/server/scripts/Spells/spell_paladin.cpp
+++ b/src/server/scripts/Spells/spell_paladin.cpp
@@ -792,6 +792,7 @@ class spell_pal_glyph_of_holy_light : public SpellScriptLoader
{
uint32 const maxTargets = GetSpellInfo()->MaxAffectedTargets;
+ targets.remove(GetCaster());
if (targets.size() > maxTargets)
{
targets.sort(Trinity::HealthPctOrderPred());
@@ -833,8 +834,15 @@ class spell_pal_glyph_of_holy_light_dummy : public SpellScriptLoader
if (!healInfo || !healInfo->GetHeal())
return;
+ uint32 basePoints = healInfo->GetSpellInfo()->Effects[EFFECT_0].BasePoints + healInfo->GetSpellInfo()->Effects[EFFECT_0].DieSides;
+ uint32 healAmount;
+ if (healInfo->GetEffectiveHeal() >= basePoints)
+ healAmount = healInfo->GetEffectiveHeal();
+ else
+ healAmount = healInfo->GetHeal();
+
CastSpellExtraArgs args(aurEff);
- args.AddSpellBP0(CalculatePct(healInfo->GetHeal(), aurEff->GetAmount()));
+ args.AddSpellBP0(CalculatePct(healAmount, aurEff->GetAmount()));
eventInfo.GetActor()->CastSpell(eventInfo.GetProcTarget(), SPELL_PALADIN_GLYPH_OF_HOLY_LIGHT_HEAL, args);
}