mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-02-25 21:15:55 +00:00
refactor(Core): DespawnOrUnsummon (#23141)
This commit is contained in:
@@ -1046,7 +1046,7 @@ public:
|
||||
break;
|
||||
case EVENT_VAEL_3_DESPAWN:
|
||||
DoCast(me, SPELL_VAELASTRASZ_SPAWN);
|
||||
me->DespawnOrUnsummon(1500);
|
||||
me->DespawnOrUnsummon(1500ms);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
||||
@@ -435,7 +435,7 @@ public:
|
||||
break;
|
||||
case EVENT_SUCCESS_2:
|
||||
DoCast(me, SPELL_VAELASTRASZZ_SPAWN);
|
||||
me->DespawnOrUnsummon(1000);
|
||||
me->DespawnOrUnsummon(1s);
|
||||
break;
|
||||
case EVENT_PATH_3:
|
||||
me->GetMotionMaster()->MovePath(NEFARIUS_PATH_3, false);
|
||||
|
||||
@@ -199,7 +199,7 @@ class spell_mc_play_dead_aura : public AuraScript
|
||||
else
|
||||
{
|
||||
Unit::Kill(creatureTarget, creatureTarget);
|
||||
creatureTarget->DespawnOrUnsummon(14000);
|
||||
creatureTarget->DespawnOrUnsummon(14s);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -146,7 +146,7 @@ public:
|
||||
{
|
||||
if (Player* player = ObjectAccessor::GetPlayer(*me, playerGUID))
|
||||
player->GroupEventHappens(QUEST_A_FINE_MESS, me);
|
||||
me->DespawnOrUnsummon(1000);
|
||||
me->DespawnOrUnsummon(1s);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -88,7 +88,7 @@ struct npc_kilrek : public ScriptedAI
|
||||
DoCast(Terestian, SPELL_BROKEN_PACT, true);
|
||||
}
|
||||
}
|
||||
me->DespawnOrUnsummon(15000);
|
||||
me->DespawnOrUnsummon(15s);
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
|
||||
@@ -523,9 +523,9 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
me->DespawnOrUnsummon(100);
|
||||
me->DespawnOrUnsummon(100ms);
|
||||
if (Creature* arca = ObjectAccessor::GetCreature((*me), ArcanagosGUID))
|
||||
arca->DespawnOrUnsummon(100);
|
||||
arca->DespawnOrUnsummon(100ms);
|
||||
|
||||
return 5000;
|
||||
default:
|
||||
|
||||
@@ -141,7 +141,7 @@ struct boss_vexallus : public BossAI
|
||||
void SummonedCreatureDies(Creature* summon, Unit* killer) override
|
||||
{
|
||||
summons.Despawn(summon);
|
||||
summon->DespawnOrUnsummon(1);
|
||||
summon->DespawnOrUnsummon(1ms);
|
||||
if (killer)
|
||||
killer->CastSpell(killer, SPELL_ENERGY_FEEDBACK, true, 0, 0, summon->GetGUID());
|
||||
}
|
||||
|
||||
@@ -230,7 +230,7 @@ public:
|
||||
me->RemoveAllAuras();
|
||||
me->CastSpell(attacker, SPELL_DUEL_VICTORY, true);
|
||||
me->RestoreFaction();
|
||||
me->DespawnOrUnsummon(10000);
|
||||
me->DespawnOrUnsummon(10s);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -407,7 +407,7 @@ public:
|
||||
{
|
||||
if (type == POINT_MOTION_TYPE && point == 1)
|
||||
{
|
||||
me->DespawnOrUnsummon(1500);
|
||||
me->DespawnOrUnsummon(1500ms);
|
||||
me->CastSpell(me, SPELL_GHOUL_SUBMERGE, true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -692,7 +692,7 @@ public:
|
||||
orbaz->SetReactState(REACT_PASSIVE);
|
||||
orbaz->AI()->Talk(EMOTE_LIGHT_OF_DAWN04);
|
||||
orbaz->GetMotionMaster()->MovePoint(2, LightOfDawnPos[2], true, true);
|
||||
orbaz->DespawnOrUnsummon(7000);
|
||||
orbaz->DespawnOrUnsummon(7s);
|
||||
}
|
||||
|
||||
for (SummonList::const_iterator itr = summons.begin(); itr != summons.end(); ++itr)
|
||||
@@ -839,7 +839,7 @@ public:
|
||||
alex->AI()->Talk(SAY_LIGHT_OF_DAWN41);
|
||||
|
||||
if (Creature* darion = GetEntryFromSummons(NPC_DARION_MOGRAINE))
|
||||
darion->DespawnOrUnsummon(3000);
|
||||
darion->DespawnOrUnsummon(3s);
|
||||
break;
|
||||
case EVENT_OUTRO_SCENE_19:
|
||||
if (Creature* alex = GetEntryFromSummons(NPC_HIGHLORD_ALEXANDROS_MOGRAINE))
|
||||
@@ -886,7 +886,7 @@ public:
|
||||
case EVENT_OUTRO_SCENE_23:
|
||||
if (Creature* alex = GetEntryFromSummons(NPC_HIGHLORD_ALEXANDROS_MOGRAINE))
|
||||
{
|
||||
alex->DespawnOrUnsummon(5000);
|
||||
alex->DespawnOrUnsummon(5s);
|
||||
alex->SetVisible(false);
|
||||
}
|
||||
break;
|
||||
@@ -1055,7 +1055,7 @@ public:
|
||||
if (Creature* lk = GetEntryFromSummons(NPC_THE_LICH_KING))
|
||||
{
|
||||
lk->CastSpell(lk, SPELL_EXIT_TELEPORT_VISUAL, true);
|
||||
lk->DespawnOrUnsummon(1500);
|
||||
lk->DespawnOrUnsummon(1500ms);
|
||||
}
|
||||
|
||||
if (Creature* tirion = GetEntryFromSummons(NPC_HIGHLORD_TIRION_FORDRING))
|
||||
@@ -1145,7 +1145,7 @@ public:
|
||||
}
|
||||
case EVENT_OUTRO_SCENE_61:
|
||||
summons.DespawnAll();
|
||||
me->DespawnOrUnsummon(1);
|
||||
me->DespawnOrUnsummon(1ms);
|
||||
events.Reset();
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -103,7 +103,7 @@ public:
|
||||
void EnterEvadeMode(EvadeReason /*why*/) override
|
||||
{
|
||||
instance->SetData(DATA_KIRTONOS_THE_HERALD, FAIL);
|
||||
me->DespawnOrUnsummon(1);
|
||||
me->DespawnOrUnsummon(1ms);
|
||||
}
|
||||
|
||||
void MovementInform(uint32 type, uint32 id) override
|
||||
|
||||
@@ -360,7 +360,7 @@ struct npc_madrigosa : public NullCreatureAI
|
||||
break;
|
||||
case EVENT_SPAWN_FELMYST:
|
||||
DoCastAOE(SPELL_SUMMON_FELBLAZE, true);
|
||||
me->DespawnOrUnsummon(1);
|
||||
me->DespawnOrUnsummon(1ms);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -425,7 +425,7 @@ struct npc_demonic_vapor_trail : public NullCreatureAI
|
||||
void Reset() override
|
||||
{
|
||||
me->CastSpell(me, SPELL_DEMONIC_VAPOR_TRAIL_PERIODIC, true);
|
||||
me->DespawnOrUnsummon(20000);
|
||||
me->DespawnOrUnsummon(20s);
|
||||
}
|
||||
|
||||
void SpellHitTarget(Unit* /*unit*/, SpellInfo const* spellInfo) override
|
||||
|
||||
@@ -387,7 +387,7 @@ struct boss_kiljaeden : public BossAI
|
||||
{
|
||||
anveena->RemoveAllAuras();
|
||||
anveena->CastSpell(anveena, SPELL_SACRIFICE_OF_ANVEENA, true);
|
||||
anveena->DespawnOrUnsummon(1500);
|
||||
anveena->DespawnOrUnsummon(1500ms);
|
||||
DoCastSelf(SPELL_CUSTOM_08_STATE, true);
|
||||
me->SetUnitFlag(UNIT_FLAG_PACIFIED);
|
||||
scheduler.CancelAll();
|
||||
@@ -555,7 +555,7 @@ struct boss_kiljaeden : public BossAI
|
||||
summon->CastSpell(summon, SPELL_ARMAGEDDON_VISUAL, true);
|
||||
summon->SetPosition(summon->GetPositionX(), summon->GetPositionY(), summon->GetPositionZ() + 20.0f, 0.0f);
|
||||
summon->m_Events.AddEvent(new CastArmageddon(summon), summon->m_Events.CalculateTime(6000));
|
||||
summon->DespawnOrUnsummon(urand(8000, 10000));
|
||||
summon->DespawnOrUnsummon(randtime(8s, 10s));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -919,7 +919,7 @@ struct npc_kalecgos_kj : public NullCreatureAI
|
||||
if (Creature* velen = summons.GetCreatureWithEntry(NPC_PROPHET_VELEN))
|
||||
{
|
||||
velen->GetMotionMaster()->MovePoint(0, 1739.38f, 643.79f, 28.06f);
|
||||
velen->DespawnOrUnsummon(5000);
|
||||
velen->DespawnOrUnsummon(5s);
|
||||
}
|
||||
events.ScheduleEvent(eventId + 1, 3s);
|
||||
break;
|
||||
@@ -929,7 +929,7 @@ struct npc_kalecgos_kj : public NullCreatureAI
|
||||
if (summon->GetEntry() == NPC_SHATTERED_SUN_SOLDIER)
|
||||
{
|
||||
summon->GetMotionMaster()->MovePoint(0, 1739.38f, 643.79f, 28.06f);
|
||||
summon->DespawnOrUnsummon(summon->GetExactDist2d(1734.96f, 642.43f) * 100);
|
||||
summon->DespawnOrUnsummon(Milliseconds(uint32(summon->GetExactDist2d(1734.96f, 642.43f) * 100)));
|
||||
}
|
||||
events.ScheduleEvent(eventId + 1, 7s);
|
||||
break;
|
||||
|
||||
@@ -274,7 +274,7 @@ struct npc_singularity : public NullCreatureAI
|
||||
|
||||
void Reset() override
|
||||
{
|
||||
me->DespawnOrUnsummon(18000);
|
||||
me->DespawnOrUnsummon(18s);
|
||||
|
||||
me->m_Events.AddEventAtOffset([&] {
|
||||
DoCastSelf(SPELL_BLACK_HOLE_SUMMON_VISUAL, true);
|
||||
|
||||
@@ -285,10 +285,7 @@ struct boss_zuljin : public BossAI
|
||||
instance->SetBossState(DATA_ZULJIN, DONE);
|
||||
Talk(SAY_DEATH);
|
||||
summons.DespawnEntry(CREATURE_COLUMN_OF_FIRE);
|
||||
|
||||
me->m_Events.AddEventAtOffset( [this] {
|
||||
summons.DespawnAll();
|
||||
}, 3s);
|
||||
summons.DespawnAll(3s);
|
||||
}
|
||||
|
||||
void SpawnAdds()
|
||||
|
||||
@@ -78,7 +78,7 @@ struct npc_forest_frog : public ScriptedAI
|
||||
void MovementInform(uint32 type, uint32 data) override
|
||||
{
|
||||
if (type == POINT_MOTION_TYPE && data == POINT_DESPAWN)
|
||||
me->DespawnOrUnsummon(1000);
|
||||
me->DespawnOrUnsummon(1s);
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
|
||||
@@ -355,7 +355,7 @@ public:
|
||||
if (arlokk->IsAlive())
|
||||
arlokk->GetAI()->SetData(_sideData, 0);
|
||||
}
|
||||
me->DespawnOrUnsummon(4000);
|
||||
me->DespawnOrUnsummon(4s);
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
|
||||
@@ -641,7 +641,7 @@ public:
|
||||
{
|
||||
DoCast(target, SPELL_REVIVE);
|
||||
}
|
||||
me->DespawnOrUnsummon(1000);
|
||||
me->DespawnOrUnsummon(1s);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -64,7 +64,7 @@ struct boss_twilight_corrupter : public ScriptedAI
|
||||
{
|
||||
if (creature->IsAlive() && me->GetGUID() != creature->GetGUID())
|
||||
{
|
||||
me->DespawnOrUnsummon(1);
|
||||
me->DespawnOrUnsummon(1ms);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -262,7 +262,7 @@ public:
|
||||
if (Unit* creature = summon->GetSummonerUnit())
|
||||
creature->GetAI()->DoAction(1);
|
||||
|
||||
me->DespawnOrUnsummon(1);
|
||||
me->DespawnOrUnsummon(1ms);
|
||||
}
|
||||
|
||||
void JustDied(Unit*) override
|
||||
|
||||
@@ -586,7 +586,7 @@ public:
|
||||
case 13:
|
||||
me->setActive(false);
|
||||
if (Creature* c = me->FindNearestCreature(NPC_SUNWELL_VISUAL_BUNNY, 60.0f, true))
|
||||
c->DespawnOrUnsummon(1);
|
||||
c->DespawnOrUnsummon(1ms);
|
||||
if (GameObject* go = me->FindNearestGameObject(GO_QUEL_DELAR, 60.0f))
|
||||
go->RemoveGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
me->SetWalk(true);
|
||||
|
||||
@@ -3054,10 +3054,10 @@ public:
|
||||
if (Creature* valimathras = ObjectAccessor::GetCreature(*me, ValimathrasGUID))
|
||||
{
|
||||
valimathras->GetMotionMaster()->MovePoint(0, 1804.559f, 235.504f, 62.753f);
|
||||
valimathras->DespawnOrUnsummon(3 * IN_MILLISECONDS);
|
||||
valimathras->DespawnOrUnsummon(3s);
|
||||
}
|
||||
if (Creature* valimathrasportal = ObjectAccessor::GetCreature(*me, ValimathrasPortalGUID))
|
||||
valimathrasportal->DespawnOrUnsummon(6 * IN_MILLISECONDS);
|
||||
valimathrasportal->DespawnOrUnsummon(6s);
|
||||
JumpToNextStep(1 * IN_MILLISECONDS);
|
||||
break;
|
||||
case 26:
|
||||
@@ -3332,10 +3332,10 @@ public:
|
||||
if (Creature* valimathras = ObjectAccessor::GetCreature(*me, ValimathrasGUID))
|
||||
{
|
||||
valimathras->GetMotionMaster()->MovePoint(0, 1596.642f, 429.811f, -46.3429f);
|
||||
valimathras->DespawnOrUnsummon(3 * IN_MILLISECONDS);
|
||||
valimathras->DespawnOrUnsummon(3s);
|
||||
}
|
||||
if (Creature* valimathrasportal = ObjectAccessor::GetCreature(*me, ValimathrasPortalGUID))
|
||||
valimathrasportal->DespawnOrUnsummon(3 * IN_MILLISECONDS);
|
||||
valimathrasportal->DespawnOrUnsummon(3s);
|
||||
JumpToNextStep(2 * IN_MILLISECONDS);
|
||||
break;
|
||||
// KHANOK - Trashspawn
|
||||
@@ -3865,8 +3865,8 @@ public:
|
||||
me->GetCreatureListWithEntryInGrid(HelperList, NPC_OVERLORD_SAURFANG, 100.0f);
|
||||
if (!HelperList.empty())
|
||||
for (std::list<Creature*>::iterator itr = HelperList.begin(); itr != HelperList.end(); itr++)
|
||||
(*itr)->DespawnOrUnsummon(120 * IN_MILLISECONDS);
|
||||
me->DespawnOrUnsummon(120 * IN_MILLISECONDS);
|
||||
(*itr)->DespawnOrUnsummon(120s);
|
||||
me->DespawnOrUnsummon(120s);
|
||||
bStepping = false;
|
||||
JumpToNextStep(0 * IN_MILLISECONDS);
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user