1385 {
1386 if (aurEff->GetTotalTicks() > 0 && aurEff->GetTickNumber() ==
uint32(aurEff->GetTotalTicks()) - 1)
1387 {
1390 if (!target || !caster || !caster->
IsCreature())
1391 return;
1392
1394 {
1395 if (
Unit* caster2 = aur->GetCaster())
1396 {
1397 if (caster2->IsCreature())
1398 {
1399 caster2->ToCreature()->DespawnOrUnsummon();
1400 }
1401 }
1403 return;
1404 }
1406 {
1409 {
1412 }
1413 }
1415 {
1417 {
1420 }
1421 }
1422 }
1423 }
std::uint32_t uint32
Definition Define.h:107
@ TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN
Definition Object.h:51
@ TEMPSUMMON_CORPSE_TIMED_DESPAWN
Definition Object.h:55
@ SPELL_FLASH_FREEZE_TRAPPED_PLAYER
Definition boss_hodir.cpp:43
@ SPELL_FLASH_FREEZE_INSTAKILL
Definition boss_hodir.cpp:42
@ SPELL_FLASH_FREEZE_TRAPPED_NPC
Definition boss_hodir.cpp:44
@ NPC_FLASH_FREEZE_NPC
Definition boss_hodir.cpp:113
@ NPC_FLASH_FREEZE_PLR
Definition boss_hodir.cpp:112
Unit * GetCaster() const
Definition SpellScript.cpp:1040
Unit * GetTarget() const
Definition SpellScript.cpp:1185
Definition SpellAuras.h:88
virtual void JustSummoned(Creature *)
Definition CreatureAI.h:152
CreatureAI * AI() const
Definition Creature.h:144
bool IsPlayer() const
Definition Object.h:207
bool IsCreature() const
Definition Object.h:211
Creature * ToCreature()
Definition Object.h:212
virtual void SetData(uint32, uint32)
Definition UnitAI.h:219
Aura * GetAura(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, ObjectGuid itemCasterGUID=ObjectGuid::Empty, uint8 reqEffMask=0) const
Definition Unit.cpp:5624
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:1372
TempSummon * SummonCreature(uint32 id, Position const &pos, TempSummonType spwtype=TEMPSUMMON_MANUAL_DESPAWN, uint32 despwtime=0, uint32 vehId=0, SummonPropertiesEntry const *properties=nullptr, bool visibleBySummonerOnly=false) const
Definition Object.cpp:2453
float GetPositionZ() const
Definition Position.h:123
float GetPositionX() const
Definition Position.h:121
float GetPositionY() const
Definition Position.h:122