; 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
 [PROGRAMME COMPLET] AutoExit (a sa propre page)
 [C] [Win32] Mouseloop : Ou comment faire des trucs stupides avec le pointeur de la souris
 [PHP] [INCLUDE] Récupérer des chaines quel que soit l'état de magicquotes.
 [C] [Win32] APM : Faire passer les moniteurs en green mode/locker le PC rapidement.
 [QBASIC] Lire par RS-232 les données du multimetre VC 670 et les enregistrer dans un CSV
 [C] [Portable] [Connerie] Un encodeur/décodeur ROT13 et pas que 13, en mode console.
 [mIRC] Ce client IRC n'est pas très convivial avec le mode "away". Voila qui est mieux.
 [C] [Win32] Un programme pour récupérer le nom de la chanson actuellement jouée.
 [Cµ] [PIC] [CCS] Le programme d'un chariot suiveur de ligne noire par caméra video.
10  [PROJET SOURCEFORGE] [C] Un client/passerelle en mode console pour les minichats (rmcgirr83.org) sur forums PhpBB
11  [C] [Win32] [NHC] "Workaround" d'un probleme avec le son de mon laptop lors du changement de frequence cpu
12  [C] Make-ILDA : a C routine to create ILDA files, for lasershows.