-- COMBAT_LOG_EVENT_UNFILTERED TICKER_1000 ---@param allstates allstates ---@param e string function(allstates, e, ...) if e == "TICKER_1000" then local ttl = 120 for _, state in pairs(allstates) do if state.progress then local elapsedTime = GetTime() - state.index if elapsedTime > ttl then state.show = false state.changed = true else local prettyTime = "" local minutes = 0 while elapsedTime > 60 do elapsedTime = elapsedTime - 60 minutes = minutes + 1 end if minutes > 0 then prettyTime = string.format("%s%dm", prettyTime, minutes) end if elapsedTime > 0 then prettyTime = string.format("%s %ds", prettyTime, elapsedTime) end state.progress = string.format("%20s", prettyTime) state.changed = true end end end for i = 1, 40 do if UnitIsPlayer("nameplate" .. i) then local name = UnitName("nameplate" .. i) local faction = UnitFactionGroup("nameplate" .. i) WeakAurasSaved.Cyka.PlayerFactionCache[name] = faction end end return true end local detected = false local stinky = "" local source, err = CLEUParser.GetSourceName(...) if not err then if aura_env.stinkies[source] then stinky = source detected = true end end if not detected then local destination, err = CLEUParser.GetDestName(...) if not err then if aura_env.stinkies[destination] then stinky = destination detected = true end end end if detected then aura_env.StinkyDetected(stinky) allstates[stinky] = { show = true, changed = true, name = string.format("%-30s", stinky), progressType = "timed", duration = 60, expirationTime = GetTime() + 60, autohide = true, index = GetTime(), progress = string.format("%20s", "0s"), } end local overkill, err = CLEUParser.GetOverkill(...) if err == nil then local source, err = CLEUParser.GetSourceName(...) if err ~= nil then source = "unknown" end local destination, err = CLEUParser.GetDestName(...) if err ~= nil then destination = "unknown" end local spellName, err = CLEUParser.GetSpellName(...) if err ~= nil then spellName = "unknown" end local sourceid, err = CLEUParser.GetSourceGUID(...) if err then print("Could not get source id for " .. source) print(...) return true end local destid, err = CLEUParser.GetDestGUID(...) if err then print("Could not get destination id for " .. destination) print(...) return true end if not string.match(sourceid, "Player") then -- print("Source is not a player, nevermind...") return true end if not string.match(destid, "Player") then -- print("Destination is not a player, nevermind...") return true end aura_env.RegisterKill(source, destination, spellName, overkill) end return true end