1378 {
1379 if (aurEff->GetTotalTicks() > 0 && aurEff->GetTickNumber() ==
uint32(aurEff->GetTotalTicks()) - 1)
1380 {
1383 if (!target || !caster || !caster->
IsCreature())
1384 return;
1385
1387 {
1388 if (
Unit* caster2 = aur->GetCaster())
1389 {
1390 if (caster2->IsCreature())
1391 {
1392 caster2->ToCreature()->DespawnOrUnsummon();
1393 }
1394 }
1396 return;
1397 }
1399 {
1402 {
1405 }
1406 }
1408 {
1410 {
1413 }
1414 }
1415 }
1416 }
std::uint32_t uint32
Definition Define.h:107
@ TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN
Definition Object.h:50
@ TEMPSUMMON_CORPSE_TIMED_DESPAWN
Definition Object.h:54
@ 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:1035
Unit * GetTarget() const
Definition SpellScript.cpp:1180
Definition SpellAuras.h:87
virtual void JustSummoned(Creature *)
Definition CreatureAI.h:152
CreatureAI * AI() const
Definition Creature.h:144
bool IsPlayer() const
Definition Object.h:201
bool IsCreature() const
Definition Object.h:205
Creature * ToCreature()
Definition Object.h:206
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:5877
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:1361
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:2448
float GetPositionZ() const
Definition Position.h:123
float GetPositionX() const
Definition Position.h:121
float GetPositionY() const
Definition Position.h:122