1640 {
1643
1646 if (!damageInfo || !damageInfo->
GetDamage())
1647 return;
1648
1652
1653
1655 if (!impSoulLeech)
1656 return;
1657
1659 uint32 selfSpellId = casterMana[impSoulLeechRank - 1];
1660 uint32 petSpellId = petMana[impSoulLeechRank - 1];
1661
1662 caster->
CastSpell(
nullptr, selfSpellId,
true,
nullptr, aurEff);
1663 caster->
CastSpell(
nullptr, petSpellId,
true,
nullptr, aurEff);
1664
1667 }
std::int32_t int32
Definition Define.h:103
std::uint8_t uint8
Definition Define.h:109
std::uint32_t uint32
Definition Define.h:107
bool roll_chance_i(int chance)
Definition Random.h:63
@ EFFECT_1
Definition SharedDefines.h:32
@ SPELLVALUE_BASE_POINT0
Definition SpellDefines.h:113
T CalculatePct(T base, U pct)
Definition Util.h:52
Definition SpellAuraEffects.h:39
SpellInfo const * GetSpellInfo() const
Definition SpellAuraEffects.h:54
int32 GetAmount() const
Definition SpellAuraEffects.h:64
void PreventDefaultAction()
Definition SpellScript.cpp:1000
Unit * GetTarget() const
Definition SpellScript.cpp:1180
uint32 GetDamage() const
Definition Unit.h:372
Unit * GetActor()
Definition Unit.h:459
DamageInfo * GetDamageInfo() const
Definition Unit.h:469
uint8 GetRank() const
Definition SpellInfo.cpp:2896
SpellCastResult CastCustomSpell(Unit *victim, uint32 spellId, int32 const *bp0, int32 const *bp1, int32 const *bp2, bool triggered, Item *castItem=nullptr, AuraEffect const *triggeredByAura=nullptr, ObjectGuid originalCaster=ObjectGuid::Empty)
Definition Unit.cpp:1446
AuraEffect * GetAuraEffectOfRankedSpell(uint32 spellId, uint8 effIndex, ObjectGuid casterGUID=ObjectGuid::Empty) const
Definition Unit.cpp:5804
SpellCastResult CastSpell(SpellCastTargets const &targets, SpellInfo const *spellInfo, CustomSpellValues const *value, TriggerCastFlags triggerFlags=TRIGGERED_NONE, Item *castItem=nullptr, AuraEffect const *triggeredByAura=nullptr, ObjectGuid originalCaster=ObjectGuid::Empty)
Definition Unit.cpp:1389
@ SPELL_WARLOCK_SOUL_LEECH_CASTER_MANA_2
Definition spell_warlock.cpp:83
@ SPELL_WARLOCK_SOUL_LEECH_PET_MANA_1
Definition spell_warlock.cpp:80
@ SPELL_WARLOCK_IMP_SOUL_LEECH_R1
Definition spell_warlock.cpp:79
@ SPELL_WARLOCK_SOUL_LEECH_CASTER_MANA_1
Definition spell_warlock.cpp:82
@ SPELL_WARLOCK_SOUL_LEECH_PET_MANA_2
Definition spell_warlock.cpp:81
@ SPELL_WARLOCK_SOUL_LEECH_HEAL
Definition spell_warlock.cpp:78
@ SPELL_REPLENISHMENT
Definition spell_warlock.cpp:86