Voici un petit addon pour s'identifier automatiquement a NickServ. Fonctionne sur un nombre illimité de serveurs et de pseudos. Utilise les hash-tables.
Source / Exemple :
dialog -l autoid {
title "Auto Identify NickServ"
size -1 -1 115 107
option dbu
box "Network", 1, 9 1 97 34
combo 2, 12 9 91 11, drop
button "Ajouter", 3, 27 22 28 10
button "Effacer", 4, 58 22 28 10
box "Pseudos", 5, 2 36 113 58
list 6, 5 44 48 47, size vsbar
text "Pseudo :", 7, 56 45 23 8
edit "", 8, 80 44 31 10, autohs
text "Pass :", 9, 56 56 16 8
edit "", 10, 74 55 37 10, pass autohs
button "Ajouter", 11, 64 66 37 10
button "Effacer", 12, 64 79 37 10
button "Fermer", 13, 40 95 37 10, cancel
}
on *:START:{ hmake autoid | $iif($exists($+(",$aih,")),hload,hsave) autoid $+(",$aih,") }
on *:DIALOG:autoid:*:*:{
if ($devent == init) { autoid_nl }
elseif ($devent == sclick) {
if ($did == 2) { autoid_cl $did(2).seltext }
if ($did == 3) { var %m $$input(Nom du network :,e,Nom du network ?) | hadd -m autoid %m | aih | autoid_nl }
elseif ($did == 4) { hdel autoid $$did(2).seltext | aih | autoid_nl | did -r $dname 6 }
elseif ($did == 11 && $did(8) && $did(10) && $did(2).seltext) { hadd -m autoid $ifmatch $hget(autoid,$ifmatch) $+($did(8),$chr(9),$did(10)) | aih | autoid_cl $did(2).seltext | did -r $dname 8,10 }
elseif ($did == 12 && $did(6).seltext && $did(2).seltext) { hadd -m autoid $ifmatch $deltok($hget(autoid,$ifmatch),$did(6).sel,32) | aih | autoid_cl $did(2).seltext }
}
}
alias -l aih $iif($isid,return $scriptdirautoid.hash,hsave autoid $+(",$scriptdirautoid.hash,"))
alias -l autoid_nl {
var %? 1 , %d autoid 2 | did -r %d
while ($hget(autoid,%?).item) { did -a %d $ifmatch | inc %? }
}
alias -l autoid_cl {
var %a 1 | did -r autoid 6
while ($gettok($hget(autoid,$1),%a,32)) { did -a autoid 6 $gettok($ifmatch,1,9) | inc %a }
}
alias autoid dialog $iif($dialog(autoid),-v,-m) autoid autoid
on *:CONNECT:{ .msg NickServ IDENTIFY $$mypass($network,$me) }
on me:*:NICK:{ .msg NickServ IDENTIFY $$mypass($network,$newnick) }
alias -l mypass {
var %o $iif($2,$2,$me) , %h $hfind(autoid,$1)
if (%h) {
var %i 1 | while ($gettok($hget(autoid,%h),%i,32)) {
tokenize 9 $ifmatch
if ($1 == %o) { return $2 }
inc %i
}
}
}
Conclusion :
Voila, loadez ça dans vos remotes, pour charger, tapez /autoid
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.