fix(Core/Spells): Fix Prayer of Mending not bouncing to full-HP members (#24815)

Co-authored-by: blinkysc <blinkysc@users.noreply.github.com>
This commit is contained in:
blinkysc
2026-02-22 18:28:31 -06:00
committed by GitHub
parent 9f10718566
commit 5a53ca6560
2 changed files with 9 additions and 4 deletions

View File

@@ -7365,6 +7365,12 @@ void AuraEffect::HandleRaidProcFromChargeAuraProc(AuraApplication* aurApp, ProcE
void AuraEffect::HandleRaidProcFromChargeWithValueAuraProc(AuraApplication* aurApp, ProcEventInfo& /*eventInfo*/)
{
enum
{
SPELL_PRAYER_OF_MENDING_HEAL = 33110,
SPELL_PRAYER_OF_MENDING_VISUAL = 41637
};
Unit* target = aurApp->GetTarget();
// Currently only Prayer of Mending
@@ -7373,7 +7379,6 @@ void AuraEffect::HandleRaidProcFromChargeWithValueAuraProc(AuraApplication* aurA
LOG_DEBUG("spells.aura", "AuraEffect::HandleRaidProcFromChargeWithValueAuraProc: received not handled spell: {}", GetId());
return;
}
uint32 triggerSpellId = 33110;
int32 value = GetAmount();
@@ -7397,6 +7402,7 @@ void AuraEffect::HandleRaidProcFromChargeWithValueAuraProc(AuraApplication* aurA
if (triggerTarget)
{
target->CastSpell(triggerTarget, SPELL_PRAYER_OF_MENDING_VISUAL, true);
target->CastCustomSpell(triggerTarget, GetId(), &value, nullptr, nullptr, true, nullptr, this, GetCasterGUID());
if (Aura* aura = triggerTarget->GetAura(GetId(), GetCasterGUID()))
aura->SetCharges(jumps);
@@ -7404,8 +7410,7 @@ void AuraEffect::HandleRaidProcFromChargeWithValueAuraProc(AuraApplication* aurA
}
}
LOG_DEBUG("spells.aura", "AuraEffect::HandleRaidProcFromChargeWithValueAuraProc: Triggering spell {} from aura {} proc", triggerSpellId, GetId());
target->CastCustomSpell(target, triggerSpellId, &value, nullptr, nullptr, true, nullptr, this, GetCasterGUID());
target->CastCustomSpell(target, SPELL_PRAYER_OF_MENDING_HEAL, &value, nullptr, nullptr, true, nullptr, this, GetCasterGUID());
}
int32 AuraEffect::GetTotalTicks() const