06/03/2014, 20:21
(Modification du message : 06/03/2014, 21:03 par aliasangelius.)
Ok.. alors je regarderais demain de plus près.
"Envoyé depuis mon GT-N7000 avec Tapatalk"
Tiens test comme sa :
J'ai modifié la ligne :
Par :
Et aussi rajouter deux set :
Essaye et dit moi ce que cela donne mais je pense que sa devrais être dans ce genre la en modifications pour que sa fonctionne.
"Envoyé depuis mon GT-N7000 avec Tapatalk"
Tiens test comme sa :
tcl
#################################
# Script op.tcl #
# Tcl Creat By Toretto #
# 23/02/2014 #
# #
####################################
# Aurel-Tchat Network #
# Server irc://irc.aurel-tchat.fr#
# Site-Web http://aurel-tchat.fr #
# Forum http://forum.aurel-tchat.fr#
####################################
#####################################################################################
# Attention Si vous toucher le code vous risquer de le faire planter #
# Merci de pas toucher si vous avez aucune connaissance dans le domaine du TCL#
#####################################################################################
#***********************************#
# TCL en NameSpace. #
# Utilisation de msgcat. #
# Utilisation des procédure #
# Pushmode/Putkick. #
#***********************************#
namespace eval ::operateur {
# 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"
# Ici ont mets le temps d'opage et de voice en secondes.
variable opsec 3
# 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 - "*" [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 d'auto-op/voice sur salon.
proc verif {nick chan} {
if {[isop $nick $chan]} {return}
set vnick [lindex [split $nick |] 0]
putserv "mode $chan +ov $vnick $vnick"
}
# Procédure de join.
proc joinauto {nick host hand chan} {
if {$nick == $::botnick} { return 0 }
if {![botisop $chan]} { return 0 }
if {[acceesalon $nick]==1} {
putserv "privmsg $chan :[::msgcat::mc Join $nick $chan]"
utimer $::operateur::opsec [list ::operateur::verif $nick $chan]
return 1
}
}
# 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 userhost [getchanhost $nick]
set userhost "*!*[string range $userhost [string first @ $userhost] e]"
set lis "[fread $fichiers]"
set args [split $arg]
set vnick [lindex $arg 0]
set host "[split [getchanhost $vnick $chan] @]"
if {[lsearch -exact "$lis" $userhost] != -1} {
lappend lis $temp
fwrite $fichiers $temp
putserv "privmsg $chan :[::msgcat::mc Ajout $vnick $chan $host]"
utimer $::operateur::opsec [list ::operateur::verif $vnick $chan]
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 args [split $arg]
set vnick [lindex $arg 0]
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 $vnick $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
}
}
namespace eval ::half {
# 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 "helpeur.db"
# Ici ont mets le temps d'opage et de voice en secondes.
variable opsec 3
# Les messages de msgcat.
::msgcat::mcset fr Join "\0031Auto-Halfop Accepter Pour \0034%s \0031Sur \0034%s"
::msgcat::mcset fr Ajout "\00314Félicitation \0034° \0033%s \0034° \037\0031a etait ajoute dans la liste des halfop de %s sur l'host %s \037\0031"
::msgcat::mcset fr Del "\0031Auto-Halfop Supprimé De \0034%s \0031Sur \0034%s"
# Listes des binds.
bind join - "*" [namespace current]::joinauto
bind pub o "!halfadd" [namespace current]::+ajout
bind pub o "!halfdel" [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 d'auto-op/voice sur salon.
proc verif {nick chan} {
if {[isop $nick $chan]} {return}
set vnick [lindex [split $nick |] 0]
putserv "mode $chan +hv $vnick $vnick"
}
# Procédure de join.
proc joinauto {nick host hand chan} {
if {$nick == $::botnick} { return 0 }
if {![botisop $chan]} { return 0 }
if {[acceesalon $nick]==1} {
putserv "privmsg $chan :[::msgcat::mc Join $nick $chan]"
utimer $::half::opsec [list ::half::verif $nick $chan]
return 1
}
}
# 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: !halfadd <pseudo>"
putserv "NOTICE $nick :Exemple !halfadd $nick"
return 0
}
set lis "[fread $fichiers]"
set args [split $arg]
set vnick [lindex $arg 0]
set host "[split [getchanhost $vnick $chan] @]"
if {[lsearch -exact "x $fichiers" "$temp"]!="0"} {
lappend lis $temp
fwrite $fichiers $temp
putserv "privmsg $chan :[::msgcat::mc Ajout $vnick $chan $host]"
utimer $::half::opsec [list ::half::verif $vnick $chan]
return 0
}
putserv "NOTICE $nick :\002Erreur:\002$temp\002 \0034est deja dans la liste\0034"
return 0
}
# ProcÃdure de suppression de pseudo autorise.
proc -ajout { nick host hand chan arg } {
variable fichiers
set args [split $arg]
set vnick [lindex $arg 0]
set temp [lindex $arg 0]
if {$temp == ""} {
putserv "NOTICE $nick :Utilisation: !halfdel <pseudo>"
putserv "NOTICE $nick :Exemple: !halfdel $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 $vnick $chan]"
return 0
}
# ProcÃdure pour voir la liste des autorise.
bind pub o "!halfliste" [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 halfop. <-\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 halfop. <-\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
}
}
namespace eval ::voice {
# 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 "voice.db"
# Ici ont mets le temps d'opage et de voice en secondes.
variable opsec 3
# Les messages de msgcat.
::msgcat::mcset fr Join "\0031Auto-Voice Accepter Pour \0034%s \0031Sur \0034%s"
::msgcat::mcset fr Ajout "\00314Félicitation \0034° \0033%s \0034° \037\0031a etait ajoute dans la liste des voice de %s sur l'host %s \037\0031"
::msgcat::mcset fr Del "\0031Auto-Voice Supprimé De \0034%s \0031Sur \0034%s"
# Listes des binds.
bind join - "*" [namespace current]::joinauto
bind pub o "!voiceadd" [namespace current]::+ajout
bind pub o "!voicedel" [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 d'auto-op/voice sur salon.
proc verif {nick chan} {
if {[isop $nick $chan]} {return}
set vnick [lindex [split $nick |] 0]
putserv "mode $chan +v $vnick"
}
# Procédure de join.
proc joinauto {nick host hand chan} {
if {$nick == $::botnick} { return 0 }
if {![botisop $chan]} { return 0 }
if {[acceesalon $nick]==1} {
putserv "privmsg $chan :[::msgcat::mc Join $nick $chan]"
utimer $::voice::opsec [list ::voice::verif $nick $chan]
return 1
}
}
# 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: !voiceadd <pseudo>"
putserv "NOTICE $nick :Exemple !voiceadd $nick"
return 0
}
set lis "[fread $fichiers]"
set args [split $arg]
set vnick [lindex $arg 0]
set host "[split [getchanhost $vnick $chan] @]"
if {[lsearch -exact "x $fichiers" "$temp"]!="0"} {
lappend lis $temp
fwrite $fichiers $temp
putserv "privmsg $chan :[::msgcat::mc Ajout $vnick $chan $host]"
utimer $::voice::opsec [list ::voice::verif $vnick $chan]
return 0
}
putserv "NOTICE $nick :\002Erreur:\002$temp\002 \0034est deja dans la liste\0034"
return 0
}
# ProcÃdure de suppression de pseudo autorise.
proc -ajout { nick host hand chan arg } {
variable fichiers
set args [split $arg]
set vnick [lindex $arg 0]
set temp [lindex $arg 0]
if {$temp == ""} {
putserv "NOTICE $nick :Utilisation: !voicedel <pseudo>"
putserv "NOTICE $nick :Exemple: !voicedel $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 $vnick $chan]"
return 0
}
# ProcÃdure pour voir la liste des autorise.
bind pub o "!voiceliste" [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 voice. <-\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 voice. <-\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
}
}
J'ai modifié la ligne :
tcl
if {[lsearch -exact "x $fichiers" "$temp"]!="0"} {
Par :
tcl
if {[lsearch -exact "$lis" $userhost] != -1} {return 0}
Et aussi rajouter deux set :
tcl
set userhost [getchanhost $nick]
set userhost "*!*[string range $userhost [string first @ $userhost] e]"
Essaye et dit moi ce que cela donne mais je pense que sa devrais être dans ce genre la en modifications pour que sa fonctionne.