640 {
642
645 Unit* dancingRuneWeapon =
nullptr;
648 {
649 dancingRuneWeapon = *itr;
650 break;
651 }
652
653 if (!dancingRuneWeapon)
654 return;
655
658 {
659
660 if (!procSpell->IsAffectingArea())
662 dancingRuneWeapon->
CastSpell(target, procSpell->Id,
true,
nullptr, aurEff, dancingRuneWeapon->
GetGUID());
664 }
666 {
671 {
674 }
675 damageInfo.
attacker = dancingRuneWeapon;
678 }
679 }
std::int32_t int32
Definition Define.h:103
std::uint8_t uint8
Definition Define.h:109
#define MAX_ITEM_PROTO_DAMAGES
Definition ItemTemplate.h:613
@ EFFECT_0
Definition SharedDefines.h:31
@ UNIT_FIELD_COMBATREACH
Definition UpdateFields.h:123
void PreventDefaultAction()
Definition SpellScript.cpp:985
SpellInfo const * GetSpellInfo() const
Definition SpellScript.cpp:1005
Unit * GetUnitOwner() const
Definition SpellScript.cpp:1030
WeaponAttackType GetAttackType() const
Definition Unit.h:363
void SetFloatValue(uint16 index, float value)
Definition Object.cpp:737
static ObjectGuid GetGUID(Object const *o)
Definition Object.h:112
DamageInfo * GetDamageInfo() const
Definition Unit.h:449
std::array< SpellEffectInfo, MAX_SPELL_EFFECTS > Effects
Definition SpellInfo.h:393
ControlSet m_Controlled
Definition Unit.h:1990
void SendAttackStateUpdate(CalcDamageInfo *damageInfo)
Definition Unit.cpp:6534
Unit * GetMeleeHitRedirectTarget(Unit *victim, SpellInfo const *spellInfo=nullptr)
Definition Unit.cpp:11102
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:1178
void CalculateMeleeDamage(Unit *victim, CalcDamageInfo *damageInfo, WeaponAttackType attackType=BASE_ATTACK, const bool sittingVictim=false)
Definition Unit.cpp:1475
void DealMeleeDamage(CalcDamageInfo *damageInfo, bool durabilityLoss)
Definition Unit.cpp:1840
static void DealDamageMods(Unit const *victim, uint32 &damage, uint32 *absorb)
Definition Unit.cpp:800
uint32 absorb
Definition Unit.h:471
struct CalcDamageInfo::@265 damages[MAX_ITEM_PROTO_DAMAGES]
uint32 damage
Definition Unit.h:470
Unit * attacker
Definition Unit.h:464
void SetOrientation(float orientation)
Definition Position.h:116
float GetAngle(const Position *pos) const
Definition Position.cpp:78