26/02/2014, 17:36
(26/02/2014, 17:00)aliasangelius a écrit : Ah, et je n'avais pas vue aussi que tu as laisser une variable qui ne devrais plus être dans le code.
Celle ci :
tcl
variable salons
Hors cette variable, Utiliser un salon précis dans le code autorise.
re-Voici le code modifié, Test le pour voir.
Et tiens nous au courant si cela s'avère fonctionnel.
tcl
namespace eval ::autorise { # Nous vÃrifions si ya le package requis pour le msgcat. package require msgcat # Nous mettons la langue de msgcat en français. ::msgcat::mclocale fr # Nom du fichier ou seront les pseudos autorisÃ. variable fichiers "operateur.db" # Les messages de msgcat. ::msgcat::mcset fr Join "\0031Auto-Op Accepter Pour \0034 %s \0031Sur \0034%s" ::msgcat::mcset fr Ajout "\00314Félicitation \0034° \0033%s \0034° \037\0031a etait ajoutà dans la liste des opÃrateur de %s sur l'host %s\037\0031" ::msgcat::mcset fr Del "\0031Auto-Op Supprimé Pour \0034%s \0031Sur \0034%s" # Listes des binds. bind join - "$::autorise::salons *" [namespace current]::joinauto bind pub o "!opadd" [namespace current]::+ajout bind pub o "!opdel" [namespace current]::-ajout # ProcÃdure de crÃation du fichier Autorise. if {![file exists $fichiers]} { set load [open $fichiers w+] close $load putlog "\2Je crÃe le fichier $fichiers\2" } # ProcÃdure de join. proc joinauto {nick host hand chan} { set k [lindex [split $nick |] 0] set vnick $nick if [isbotnick $nick] return if {[acceesalon $nick]==0} { putserv "privmsg $chan :[::msgcat::mc Join $nick $chan]" pushmode $salons +o $nick return 0 } # ProcÃdure d'ajout de pseudo autorise. proc +ajout { nick host hand chan arg } { variable fichiers set temp [lindex $arg 0] if {$temp == ""} { putserv "NOTICE $nick :Utilisation: !opadd <pseudo>" putserv "NOTICE $nick :Exemple !opadd $nick" return 0 } set lis "[fread $fichiers]" if {[lsearch -exact "x $fichiers" "$temp"]!="0"} { lappend lis $temp fwrite $fichiers $temp putserv "privmsg $chan :[::msgcat::mc Ajout $nick $chan $host]" return 0 } putserv "NOTICE $nick :\002Erreur:\002$temp\002 \0034est dÃjà dans la liste\0034" return 0 } # ProcÃdure de suppression de pseudo autorise. proc -ajout { nick host hand chan arg } { variable fichiers set temp [lindex $arg 0] if {$temp == ""} { putserv "NOTICE $nick :Utilisation: !opdel <pseudo>" putserv "NOTICE $nick :Exemple: !opdel $nick" return 0 } set autoajout "[fread $fichiers]" set tmp "" foreach bb $autoajout { if {![string match $temp $bb]} {lappend tmp $bb} } fdel $fichiers $tmp putserv "privmsg $chan :[::msgcat::mc Del $nick $chan]" return 0 } # ProcÃdure pour voir la liste des autorise. bind pub o "!opliste" [namespace current]::auto proc auto { nick host hand chan arg } { variable fichiers set fp [open $fichiers "r"] set fc -1 putserv "notice $nick :\037\00300,01 -> Liste des operateur. <-\037\003" while {![eof $fp]} { set data [gets $fp] incr fc if {$data !=""} { putserv "notice $nick :\0031\[ \0034$data\0031\0031 ]\0031" } unset data } close $fp putserv "notice $nick :\037\00300,01 -> Fin de la liste des operateur. <-\037\003" } # Ne pas toucher Systeme Proc !! proc acceesalon {nick} { variable fichiers set fa [open $fichiers r] set access 0 while { ![eof $fa]} { set ligne [gets $fa] if {[string tolower $nick] == [string tolower $ligne]} { set access 1 } } close $fa return $access } # ProcÃdure d'Ãcriture de fichier. proc fwrite {fi arg} { set f [open $fi a] puts $f $arg close $f } # ProcÃdure de suppression de fichier. proc fdel {fi arg} { set f [open $fi w] puts $f $arg close $f } # ProcÃdure de lecture de fichier. proc fread {fi} { set f [open $fi r] set t [gets $f] close $f return $t } } putlog "\002\0034Chargement.. \002\037\0031op.tcl V1.0 by toretto\037\0031"
J'ai une erreur en core a la ligne 25
tcl
set k [lindex [split $nick |] 0]