166 {
168 return;
169
171 if (!caster)
172 return;
173
175 if (!map)
176 return;
177
178 Aura* aura = aurEff->GetBase();
179 if (!aura)
180 return;
181
185 for (
auto itr = pl.
begin(); itr != pl.
end(); ++itr)
186 if (
Player* p = itr->GetSource())
187 if (p->IsAlive())
188 ++count;
189
190 if (!count)
191 return;
192
194 int32 dmg = (ticks * dmgPerTick) / count;
196 }
std::int32_t int32
Definition Define.h:103
std::uint32_t uint32
Definition Define.h:107
@ AURA_REMOVE_BY_ENEMY_SPELL
Definition SpellAuraDefines.h:394
@ SPELL_SHARED_SUFFERING_DAMAGE
Definition boss_marwyn.cpp:153
AuraApplication const * GetTargetApplication() const
Definition SpellScript.cpp:1210
Unit * GetCaster() const
Definition SpellScript.cpp:1035
Unit * GetTarget() const
Definition SpellScript.cpp:1180
Definition SpellAuras.h:87
int32 GetDuration() const
Definition SpellAuras.h:133
SpellInfo const * GetSpellInfo() const
Definition SpellAuras.h:100
Definition MapRefMgr.h:26
iterator begin()
Definition MapRefMgr.h:36
iterator end()
Definition MapRefMgr.h:37
PlayerList const & GetPlayers() const
Definition Map.h:326
std::array< SpellEffectInfo, MAX_SPELL_EFFECTS > Effects
Definition SpellInfo.h:417
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:1407
Map * FindMap() const
Definition Object.h:626