mirror of
https://github.com/brues-code/SuperCleveRoidMacros.git
synced 2026-09-16 03:38:00 +00:00
enhance immunity tracking with SPELL_GO cross-reference and improve combo point capture
Use SPELL_GO hit/miss data to skip redundant debuff scanning for CC/shared immunity verification. Add stale entry cleanup (>2s) for pending debuffs. Capture combo points at SPELL_CAST_EVENT (client-side, pre-server) for reliable finisher duration tracking. Add SPELL_GO reactive ability detection for yellow attack dodges replacing combat log text parsing.
This commit is contained in:
+12
-2
@@ -467,8 +467,18 @@ function CleveRoids.TrackComboPointCastByID(spellID, targetGUID)
|
||||
|
||||
-- If combo points are 0, try multiple fallback sources
|
||||
if comboPoints == 0 then
|
||||
-- First, try lastComboPoints (don't reset immediately - let it persist)
|
||||
if CleveRoids.lastComboPoints > 0 then
|
||||
-- PRIMARY: Check SPELL_CAST_EVENT capture (most reliable - client-side pre-server)
|
||||
local pending = CleveRoids.pendingCasts and CleveRoids.pendingCasts[spellID]
|
||||
if pending and pending.comboPoints and pending.comboPoints > 0 then
|
||||
comboPoints = pending.comboPoints
|
||||
if CleveRoids.debug then
|
||||
DEFAULT_CHAT_FRAME:AddMessage(
|
||||
string.format("|cff00ff88[TrackComboByID]|r Using SPELL_CAST_EVENT CP: %d for spell ID %d",
|
||||
comboPoints, spellID)
|
||||
)
|
||||
end
|
||||
-- Fallback: lastComboPoints (don't reset immediately - let it persist)
|
||||
elseif CleveRoids.lastComboPoints > 0 then
|
||||
comboPoints = CleveRoids.lastComboPoints
|
||||
-- Don't reset here - let it persist for multiple events
|
||||
if CleveRoids.debug then
|
||||
|
||||
Reference in New Issue
Block a user