0.1.232: Kanaele: unbekannte Mitglieder der rechten Liste werden Schritt fuer Schritt per /who nachgefragt (nur bei offenem Reiter) [ungeprueft]

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016onJCSHLwhs9udhC9ZLzk9
This commit is contained in:
Lacustat
2026-11-02 00:13:56 +01:00
co-authored by Claude Sonnet 5.5
parent 8d27728dac
commit 33388f80d6
3 changed files with 18 additions and 3 deletions
+15 -2
View File
@@ -178,7 +178,8 @@ local whoSent, whoLast = 0, 0
local WHO_GAP, WHO_TIMEOUT, WHO_RETRY = 6, 5, 600
local forced = {}
function CL.Ask(name, force)
local memberTag = {}
function CL.Ask(name, force, member)
if type(name) ~= "string" or name == "" then return end
if force then forced[name] = true end
local c, l = CL.Info(name)
@@ -190,10 +191,22 @@ function CL.Ask(name, force)
if whoQueue[k] == name then return end
k = k + 1
end
if table.getn(whoQueue) >= 25 then return end
if table.getn(whoQueue) >= 80 then return end
if member then memberTag[name] = true end
whoQueue[table.getn(whoQueue) + 1] = name
end
-- beim Schliessen des Reiters: noch offene Mitglieder-Abfragen verwerfen
function CL.ClearMemberQueue()
local new, k = {}, 1
while k <= table.getn(whoQueue) do
if not memberTag[whoQueue[k]] then new[table.getn(new) + 1] = whoQueue[k] end
k = k + 1
end
whoQueue = new
memberTag = {}
end
local function WhoDone()
whoCur = nil
local ff = G.FriendsFrame