SweepyBoop's Arena Helper

SweepyBoop's Arena Helper

43.1k Downloads

Dispelling HOJ on a party member doesn't trigger the party stun DR

SweepyBoop opened this issue ยท 6 comments

commented
commented

Diminish handles it this way:
if eventType == "SPELL_AURA_REMOVED" then
Timers:Insert(destGUID, srcGUID, category, spellID, isFriendly, isNotPetOrPlayer, false)
elseif eventType == "SPELL_AURA_APPLIED" then
Timers:Insert(destGUID, srcGUID, category, spellID, isFriendly, isNotPetOrPlayer, true)
elseif eventType == "SPELL_AURA_REFRESH" then
Timers:Update(destGUID, srcGUID, category, spellID, isFriendly, isNotPetOrPlayer, true)
end

commented

This happened during a solo shuffle, so maybe need to clear partyInfo cache on arena spec update

commented

This is not specific to dispelling a stun possibly.
I noticed sometimes when they trinket the stun, or as the stun expires, the WA is not activated either.

commented

Meanwhile personal DR timers work fine.
It's possibly that WAs are started but didn't find a frame.
Diminish addon uses the same approach to find raid frame, but they don't stop CompactRaidFrame1 is nil.

That can possibly fix the issue.
To verify it's no longer reproing, print when WA activates, and a matching print when a frame is found.

commented

local function FindCompactRaidFrameByUnit(unitID)
local guid = UnitGUID(unitID)
if not guid then return end

    for i = 1, 40 do
        -- TODO: local frame = Icons:GetAnchor("raid"..i, true)
        local frame = _G["CompactRaidFrame"..i] -- check this frame first

        -- CompactRaidFrameManager_GetSetting("KeepGroupsTogether")
        if not frame or frame and not frame.unit then
            frame = _G["CompactPartyFrameMember"..i] -- check this instead if first frame has no unit attached
        end

        if not frame or frame and not frame.unit then
            frame = _G["CompactRaidGroup1Member"..i]
        end

        if frame and frame.unit and UnitGUID(frame.unit) == guid then
            return frame
        end
    end
end
commented

Seems working so far, closing for now. If it occurs again will reopen