1132 {
1135 return;
1136
1138 if (!target)
1139 return;
1140
1142 {
1143 float distTarget = target->
GetDistance2d(itr.second.m_positionX, itr.second.m_positionY);
1144 if (distTarget <= 30.f)
1145 {
1146 caster->
CastSpell(caster, itr.first,
true);
1147 return;
1148 }
1149 }
1150
1151
1153 caster->
CastSpell(caster, spellId.first,
true);
1154 }
std::unordered_map< uint32, const Position > const spellPos
Definition boss_nefarian.cpp:1110
CreatureAI * AI() const
Definition Creature.h:143
Creature * ToCreature()
Definition Object.h:206
Unit * GetCaster()
Definition SpellScript.cpp:401
Unit * SelectTarget(SelectTargetMethod targetType, uint32 position=0, float dist=0.0f, bool playerOnly=false, bool withTank=true, int32 aura=0)
Definition UnitAI.cpp:111
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:1350
float GetDistance2d(WorldObject const *obj) const
Definition Object.cpp:1313
auto SelectRandomContainerElement(C const &container) -> typename std::add_const< decltype(*std::begin(container))>::type &
Definition Containers.h:133