void HandleDummy(SpellEffIndex /*effIndex*/) { Unit* caster = GetCaster()->ToPlayer(); uint32 healAmount = GetHitHeal(); SetHitHeal(healAmount + caster->GetTotalAttackPowerValue(BASE_ATTACK) * 1.8f); }
void HandleHeal(SpellEffIndex /*effIndex*/) { if (hitCount <= 6) return; SetHitHeal(GetHitHeal() - GetHitHeal()*(hitCount - 6) / hitCount); }
void HandleHeal(SpellEffIndex /*effIndex*/) { if (Unit* caster = GetOriginalCaster()) if (GetHitUnit()->GetGUID() == caster->GetGUID()) { int32 heal = GetHitHeal() / 2.0f; SetHitHeal(heal); } }
void HandleHeal(SpellEffIndex /*effIndex*/) { if (Unit* caster = GetOriginalCaster()) { if (AuraEffect* aurEff = caster->GetAuraEffect(SPELL_PRIEST_T9_HEALING_2P, EFFECT_0)) { int32 heal = GetHitHeal(); AddPct(heal, aurEff->GetAmount()); SetHitHeal(heal); } } }
void HandleHeal(SpellEffIndex /*effIndex*/) { if (Unit* caster = GetOriginalCaster()) { if (Aura* aur = caster->GetAura(SPELL_T9_HEALING_2_PIECE)) { int32 heal = GetHitHeal(); AddPctN(heal, aur->GetSpellInfo()->Effects[0].CalcValue()); SetHitHeal(heal); } } }
void HandleHeal(SpellEffIndex /*effIndex*/) { if (Unit* caster = GetOriginalCaster()) { if (Aura* prayer = GetHitUnit()->GetAura(41635, caster->GetGUID())) if (prayer->GetCharges() == prayer->CalcMaxCharges()) { // Glyph of prayer of mending if (AuraEffect* glyph = caster->GetDummyAuraEffect(SPELLFAMILY_PRIEST, 2219, EFFECT_0)) { int32 heal = GetHitHeal(); AddPct(heal, glyph->GetAmount()); SetHitHeal(heal); } } if (AuraEffect* aurEff = caster->GetAuraEffect(SPELL_PRIEST_T9_HEALING_2P, EFFECT_0)) { int32 heal = GetHitHeal(); AddPct(heal, aurEff->GetAmount()); SetHitHeal(heal); } } }
void HandleHeal(SpellEffIndex /*effIndex*/) { if (firstHeal) { // Check if the target has Riptide if (AuraEffect* aurEff = GetHitUnit()->GetAuraEffect(SPELL_AURA_PERIODIC_HEAL, SPELLFAMILY_SHAMAN, 0, 0, 0x10, GetCaster()->GetGUID())) { riptide = true; // Consume it GetHitUnit()->RemoveAura(aurEff->GetBase()); } firstHeal = false; } // Riptide increases the Chain Heal effect by 25% if (riptide) SetHitHeal(GetHitHeal() * 1.25f); }
void HandleHeal(SpellEffIndex /*effIndex*/) { Unit* caster = GetCaster(); if(!caster) return; if (SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(SPELL_WARRIOR_BLOODTHIRST_DAMAGE)) { int32 calculatedHeal = CalculatePct(caster->GetMaxHealth(), float(spellInfo->Effects[EFFECT_1].CalcValue(GetCaster())) / 1000); // Field Dressing check if(AuraEffect* aurEff = caster->GetAuraEffect(SPELL_AURA_ADD_PCT_MODIFIER, SPELLFAMILY_WARRIOR, 2671, EFFECT_1)) AddPct(calculatedHeal, aurEff->GetAmount()); SetHitHeal(calculatedHeal); } }
void HandleHeal(SpellEffIndex /*effIndex*/) { if (firstHeal) { // Check if the target has Riptide if (AuraEffect* aurEff = GetHitUnit()->GetAuraEffect(SPELL_AURA_PERIODIC_HEAL, SPELLFAMILY_SHAMAN, 0, 0, 0x10, GetCaster()->GetGUID())) { riptide = true; amount = aurEff->GetSpellInfo()->Effects[EFFECT_2].CalcValue(); // Consume it GetHitUnit()->RemoveAura(aurEff->GetBase()); } firstHeal = false; } // Riptide increases the Chain Heal effect by 25% if (riptide) { uint32 bonus = CalculatePct(GetHitHeal(), amount); SetHitHeal(GetHitHeal() + bonus); } }
void HandleHeal(SpellEffIndex /*effIndex*/) { if (SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(SPELL_WARRIOR_BLOODTHIRST_DAMAGE)) SetHitHeal(GetCaster()->CountPctFromMaxHealth(spellInfo->Effects[EFFECT_1].CalcValue(GetCaster()))); }