; Filename: away-gestures.mrc ; Author: cLx - http://clx.freeshell.org/ ; Software: mIRC (i'm sure it's working since the 5.8) ; Date: 30/04/2005 ; ; Ce script permet d'améliorer la gestion des "away" sous mIRC, dont la commande /away ; et grise le nom des personnes qui sont justement away dans la nicklist, comme le ; font les clients IRC digne de ce nom, et Xchat notablement. :) ; ; Le script récupére les stats une fois après l'entrée dans chaque canal, puis fait une ; récupération toutes les 30 secondes seulement, un canal à la fois, pour éviter une ; saturation inutile du serveur si on est dans tout plein de canaux en même temps. ; ; Une utilisation silencieuse de la commande away est toujours possible en ; tapant "/raw away". on 1:CONNECT: { .timerquietsyncbg 0 30 checkawaystate.nicklist } on 1:JOIN:#: { if (($nick == $me) && ($me ison $chan)) { .enable #checkawaystate .raw WHO $chan } } alias checkawaystate.nicklist { if ($channel(0) != 0) { inc %checkawaystate.channelnbr if (%checkawaystate.channelnbr > $channel(0) ) { set %checkawaystate.channelnbr 1 } .enable #checkawaystate .raw WHO : $+ $channel(%checkawaystate.channelnbr) } } #checkawaystate off raw 352:*: { if ( $left($7,1) = G) { cline 15 $2 $6 } else { cline $colour(listbox text) $2 $6 } haltdef } raw 315:*: { .disable #checkawaystate halt } #checkawaystate end raw 305:*: { var %i 1 :begin if ($chan(%i) == $null) { goto end } cline $colour(listbox text) $chan(%i) $me inc %i goto begin :end } raw 306:*: { var %i 1 :begin if ($chan(%i) == $null) { goto end } cline 15 $chan(%i) $me inc %i goto begin :end } alias away { if ($1 != $null) { .raw away : $+ $1- set %awaytime $ctime if ($chan(0) != 0) { ame is away: $1- } } else { .raw away if (($chan(0) != 0) && ($away != $false)) { ame is back (gone $duration($calc($ctime - %awaytime)) $+ ) } } } ; EOF