; Usage: /clonescan <#channel> or /clonescan (when active window is a channel) ; Menu Definition: menu channel { - Clone Scan { clonescan # } - } ; Raws raw 352:*:{ halt } raw 315:*:{ clonescan $4 | halt } ; Aliases: alias clonescan { if (!$1 && $active !ischan) { return } if (!$1) { tokenize 32 $active } if ($chan($1).ial == $false) { echo $color(info) -ta * Updating IAL... | who $1 | return } if (!$hget(clones)) { hmake clones 100 } echo $color(info) -ta * Clonescan for: $1 var %z = 1, %b, %host, %nick, %found = 0 | while ($ialchan(*,$1,%z)) { %b = $v1 | %host = $mask($ialchan(*,$1,%z).host,3) | %nick = $ialchan(*,$1,%z).nick | hadd -m clones %host $hget(clones,%host) %nick | inc %z } var %zaa = 1, %b | while ($hget(clones,%zaa).item) { %b = $v1 | if ($numtok($hget(clones,%b),32) >= 2) { echo $color(own) -ta * ( $+ $calc(%found + 1) $+ ) $hget(clones,%b) ( $+ %b $+ ) | inc %found } | inc %zaa } echo $color(info) -ta * End of clonescan. %found set(s) found. | hfree clones }