From eff2cac905ac8d63078db9147cf2ec18f2d8ae82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=A9=E9=B9=AD?= <18535853+PkllonG@users.noreply.github.com> Date: Sun, 12 Apr 2026 18:34:17 +0800 Subject: [PATCH] fix(Scripts/VioletHold): Fix the issue where no waves occur after the 7th wave wipes out the players (#25433) --- .../scripts/Northrend/VioletHold/instance_violet_hold.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp b/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp index f88bc90d2..232230a27 100644 --- a/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp +++ b/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp @@ -166,6 +166,7 @@ public: case DATA_CYANIGOSA: if (state == DONE) { + _events.Reset(); _encounterStatus = DONE; HandleGameObject(DATA_MAIN_DOOR, true); DoUpdateWorldState(WORLD_STATE_VIOLET_HOLD_SHOW, 0); @@ -556,7 +557,12 @@ public: DoUpdateWorldState(WORLD_STATE_VIOLET_HOLD_SHOW, 0); _encounterStatus = NOT_STARTED; _gateHealth = 100; - _waveCount = 0; + if (GetBossState(DATA_2ND_BOSS) == DONE) + _waveCount = 12; + else if (GetBossState(DATA_1ST_BOSS) == DONE) + _waveCount = 6; + else + _waveCount = 0; _defensesUsed = false; if (GetBossState(DATA_CYANIGOSA) == DONE) _encounterStatus = DONE;