Optimization netsplit

By nox` on Nov 09, 2013

This is a quit display system.
one person:
Image

many people:
Image

It has the distinction, as you can see in the screenshots, to collect the netsplits in a few lines.
Why use this code? This will prevent you to have dozens of identical lines in case of netplits with a better rendering.
I put 3 alias just under that allow you to adjust my system at your convenience.
However i didn't setup the normal quits you have to do it by yourself.
The text is in French but it is very easy to change

;#################################
; Configuration aliases
;#################################
;This line allows you to change the logo and the nicknames color
alias -l kikunetlogo return $+($chr(91),$chr(31),$chr(3),07,NetSplit,$chr(3),$chr(31),$chr(93),$chr(3),14)
;Allows to choose the symbol that separates nicks (use //echo - ag $asc($$?) to have the number of the symbol. Example here the symbol is "," so its code is 44)
alias -l kikunetcharsep return $chr(44) 44
;Allows you to choose the number of nickname displayed on one line
alias -l kikunetmaxnick return 20

alias -l safe return $!decode( $encode($1-, m) ,m)

on ^*:quit:{
var %b $comchan($nick,0)
while %b {
if $0 == 2 && $count($1,.) > 0 && $count($2,.) > 0 {
hadd -m $comchan($nick,%b) $nick $1-
$+(.timerkikunet,$cid,$comchan($nick,%b)) -h 1 3000 kikunetlook $safe($comchan($nick,%b)) $(|) hfree $safe($comchan($nick,%b))
}
else {
if ($nick == $me) echo -t $comchan($nick,%b) [Quit] Tu quittes ce serveur : $1-
else echo -t $comchan($nick,%b) [Quit] $nick $gettok($fulladdress,2,33) $1- [ $+ $calc($nick($comchan($nick,%b),0) - 1) Users]
}
dec %b
}
if ($query($nick)) echo -t $query($nick) [Quit] $nick $address($nick,2) $1-
haltdef
}
alias -l kikunetlook {
var %i 1,%max $hget($1,0).item
while %i <= %max {
var %txt $+(%txt,$gettok($kikunetcharsep,1,32),$hget($1,%i).item)
inc %i
if $numtok(%txt,$gettok($kikunetcharsep,2,32)) >= $kikunetmaxnick || !$hget($1,%i).item { echo -t $1 %netcolor $sorttok($mid(%txt,2-),$gettok($kikunetcharsep,2,32)) $iif(%max == 1,$hget($1,%max).data) | unset %txt }
}
if ($hget($1) && %max > 1) echo -t $1 %netcolor %max $+(personne,$iif(%max > 1,s)) $+(perdue,$iif(%max > 1,s)) $hget($1,%max).data
}

Comments

Sign in to comment.
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.