From 73caedb9ff2cf26002999901b6591dd56787a40b Mon Sep 17 00:00:00 2001 From: Meow <30401521+me0wg4ming@users.noreply.github.com> Date: Thu, 26 Feb 2026 16:18:46 +0100 Subject: [PATCH] possible fix for swing timer vanishing sometimes possible fix for swing timer vanishing sometimes --- modules/swingtimer.lua | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/modules/swingtimer.lua b/modules/swingtimer.lua index bf775349..0774729e 100644 --- a/modules/swingtimer.lua +++ b/modules/swingtimer.lua @@ -354,6 +354,12 @@ pfUI:RegisterModule("swingtimer", "vanilla:tbc", function () local now = GetTime() local anyActive = false + -- Execute delayed regen reset (only if combat hasn't resumed) + if swingState.regenResetPending and now >= swingState.regenResetPending then + swingState.regenResetPending = nil + ResetSwingTimers() + end + local curR, curG, curB = mhDefaultR, mhDefaultG, mhDefaultB if sw_hsqueue and isWarrior then local hs, cl = IsHSOrCleaveQueued() @@ -590,10 +596,13 @@ pfUI:RegisterModule("swingtimer", "vanilla:tbc", function () RebuildQueueSlotCache() elseif event == "PLAYER_REGEN_DISABLED" then + swingState.regenResetPending = nil -- cancel delayed reset, combat resumed UpdateWeaponSpeeds() elseif event == "PLAYER_REGEN_ENABLED" then - ResetSwingTimers() + -- Delay reset to avoid false resets between mobs in raids + -- If combat resumes within 2s (PLAYER_REGEN_DISABLED), cancel the reset + swingState.regenResetPending = GetTime() + 2.0 hsQueued = false cleaveQueued = false