summaryrefslogtreecommitdiff
path: root/src/server/scripts
diff options
context:
space:
mode:
authorAndrew <47818697+Nyeriah@users.noreply.github.com>2025-11-09 19:06:47 -0300
committerGitHub <noreply@github.com>2025-11-09 23:06:47 +0100
commit283f03bdcdbfdbe876a9d6daaee207714726b8cd (patch)
treedc1d531935423f505abbbb0359cfd439fc4c1f1c /src/server/scripts
parent57daeed03aa0a740206e089c5c563ce543618fa4 (diff)
fix(Scripts/HoL): Killing Volkhan should despawn all Slags (#23581)
Diffstat (limited to 'src/server/scripts')
-rw-r--r--src/server/scripts/Northrend/Ulduar/HallsOfLightning/boss_volkhan.cpp17
1 files changed, 14 insertions, 3 deletions
diff --git a/src/server/scripts/Northrend/Ulduar/HallsOfLightning/boss_volkhan.cpp b/src/server/scripts/Northrend/Ulduar/HallsOfLightning/boss_volkhan.cpp
index 7e7e800b9a..f19dba6995 100644
--- a/src/server/scripts/Northrend/Ulduar/HallsOfLightning/boss_volkhan.cpp
+++ b/src/server/scripts/Northrend/Ulduar/HallsOfLightning/boss_volkhan.cpp
@@ -41,6 +41,7 @@ enum VolkhanOther
NPC_VOLKHAN_ANVIL = 28823,
NPC_MOLTEN_GOLEM = 28695,
NPC_BRITTLE_GOLEM = 28681,
+ NPC_SLAG = 28585,
// Misc
ACTION_SHATTER = 1,
@@ -77,7 +78,7 @@ enum Yells
struct boss_volkhan : public BossAI
{
- boss_volkhan(Creature* creature) : BossAI(creature, DATA_VOLKHAN), summons(creature) { }
+ boss_volkhan(Creature* creature) : BossAI(creature, DATA_VOLKHAN) { }
void Reset() override
{
@@ -104,6 +105,18 @@ struct boss_volkhan : public BossAI
{
_JustDied();
Talk(SAY_DEATH);
+
+ std::list<Creature*> slags;
+ GetCreatureListWithEntryInGrid(slags, me, NPC_SLAG, 100.0f);
+
+ if (!slags.empty())
+ {
+ for (Creature* slag : slags)
+ {
+ if (slag)
+ slag->DespawnOrUnsummon();
+ }
+ }
}
void GetNextPos()
@@ -286,8 +299,6 @@ struct boss_volkhan : public BossAI
}
private:
- EventMap events;
- SummonList summons;
float x, y, z;
uint8 PointID;
uint8 ShatteredCount;