Files
wow-weakauras/FreshShit/WhoSniffer/event.lua

55 lines
1.8 KiB
Lua

-- WHO_LIST_UPDATE
function()
for i = 1, GetNumWhoResults() do
local name, guild, level, race, class, zone = GetWhoInfo(i)
---@type WHOQuery
local query = aura_env.lastQuery
if not query then
print("No query wtf?")
return
end
---@type WHOFilter[]
local filters = query.filters
for _, filter in pairs(filters) do
if not filter(name, guild, level, race, class, zone) then
--print("Filter failed", filter, name, guild, level, race, class,
-- zone)
return
end
end
local player = aura_env.stinkies[name]
if not player then
player = Player.new(name, guild, race, class, zone)
local timestamp = date("%Y-%m-%dT%H:%M:%S")
if not WeakAurasSaved.Cyka.WhoSniffer[name] then
WeakAurasSaved.Cyka.WhoSniffer[name] = {}
end
WeakAurasSaved.Cyka.WhoSniffer[name][timestamp] = {
["name"] = name,
["guild"] = guild,
["race"] = race,
["class"] = class,
["zone"] = zone
}
local stinky = WeakAurasSaved.Cyka.stinkies[name]
if stinky then
PlaySoundFile("Interface\\Sounds\\Domination.ogg", "Master")
else
PlaySoundFile("Interface\\Sounds\\Cloak.ogg", "Master")
end
aura_env.Notify(player)
end
player:Touch()
player.zone = zone
aura_env.stinkies[name] = player
end
-- Turns out WA cannot do this (
-- aura_env.UpdateMacro()
_G["FriendsFrameCloseButton"]:Click()
end
-- /run WeakAurasSaved.Cyka.WhoSniffer = {}