From 4f502ba2ad750ad92592df8f90eae7e7d33787dc Mon Sep 17 00:00:00 2001 From: Jrc13245 Date: Wed, 21 Jan 2026 18:29:57 -0500 Subject: [PATCH] fix nofirstaction flag --- Core.lua | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/Core.lua b/Core.lua index 09f0bcb..d83bd62 100644 --- a/Core.lua +++ b/Core.lua @@ -2192,7 +2192,12 @@ function CleveRoids.DoWithConditionals(msg, hook, fixEmptyTargetFunc, targetBefo CleveRoids.stopOnCastFlag = true return true elseif action == "NOFIRSTACTION" then + -- Clear flags - same logic as DoNoFirstAction + local wasFirstActionActive = CleveRoids.stopOnCastFlag CleveRoids.stopOnCastFlag = false + if wasFirstActionActive and CleveRoids.stopMacroFlag then + CleveRoids.stopMacroFlag = false + end return true end @@ -2324,8 +2329,13 @@ function CleveRoids.DoWithConditionals(msg, hook, fixEmptyTargetFunc, targetBefo CleveRoids.stopOnCastFlag = true return true elseif action == "NOFIRSTACTION" then - -- Clear flag to re-enable multi-queue behavior + -- Clear flags to re-enable multi-queue behavior + -- Also clear stopMacroFlag if it was set by the firstaction mechanism + local wasFirstActionActive = CleveRoids.stopOnCastFlag CleveRoids.stopOnCastFlag = false + if wasFirstActionActive and CleveRoids.stopMacroFlag then + CleveRoids.stopMacroFlag = false + end return true end @@ -3387,8 +3397,15 @@ function CleveRoids.DoNoFirstAction(msg) end return false else - -- No conditionals - just clear the flag + -- No conditionals - clear the flags + -- Capture stopOnCastFlag BEFORE clearing it to know if firstaction was active + local wasFirstActionActive = CleveRoids.stopOnCastFlag CleveRoids.stopOnCastFlag = false + -- Also clear stopMacroFlag if it was set by the firstaction mechanism + -- (stopOnCastFlag being true means firstaction mode caused stopMacroFlag to be set) + if wasFirstActionActive and CleveRoids.stopMacroFlag then + CleveRoids.stopMacroFlag = false + end return true end end