diff options
author | Benjamin Jackson <38561765+heyitsbench@users.noreply.github.com> | 2025-08-30 08:43:06 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-08-30 09:43:06 -0300 |
commit | d9c99cd0156a4329250ae3fb419d923ca25b5df5 (patch) | |
tree | 762c7daa5e6403c5afa0ddcbfafe3430382394bc /src | |
parent | 445161d3b9d5276d1a63831e98c83015f39a9522 (diff) |
fix(Scripts/Karazhan): Minor adjustments to Tenris Mirkblood. (#22753)
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/EasternKingdoms/Karazhan/boss_tenris_mirkblood.cpp | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/server/scripts/EasternKingdoms/Karazhan/boss_tenris_mirkblood.cpp b/src/server/scripts/EasternKingdoms/Karazhan/boss_tenris_mirkblood.cpp index 518a46055f..bed3364478 100644 --- a/src/server/scripts/EasternKingdoms/Karazhan/boss_tenris_mirkblood.cpp +++ b/src/server/scripts/EasternKingdoms/Karazhan/boss_tenris_mirkblood.cpp @@ -177,6 +177,9 @@ struct npc_sanguine_spirit : public ScriptedAI me->SetReactState(REACT_AGGRESSIVE); me->SetInCombatWithZone(); DoCastSelf(SPELL_SANGUINE_SPIRIT_AURA); + }).Schedule(30s, [this](TaskContext /*context*/) + { + me->DespawnOrUnsummon(); }); } @@ -320,6 +323,7 @@ public: events.Reset(); if (InstanceScript* instance = player->GetInstanceScript()) + { if (instance->GetBossState(DATA_MIRKBLOOD) != DONE) { opener = player; @@ -327,8 +331,10 @@ public: events.ScheduleEvent(EVENT_SAY, 1s); events.ScheduleEvent(EVENT_FLAG, 5s); - me->SetGameObjectFlag(GO_FLAG_NOT_SELECTABLE); } + } + + me->SetGameObjectFlag(GO_FLAG_NOT_SELECTABLE); return true; } @@ -342,14 +348,13 @@ public: switch (events.ExecuteEvent()) { case EVENT_SAY: - if (!mirkblood) + if (!mirkblood || !mirkblood->IsAlive()) return; mirkblood->AI()->Talk(SAY_AGGRO, opener); break; case EVENT_FLAG: - if (!mirkblood) - return; - mirkblood->SetImmuneToPC(false); + if (mirkblood) + mirkblood->SetImmuneToPC(false); me->Delete(); break; } |