CServ Auth
CServ Auth
- Code:
######################################################
## Auto Auth on CServ Bot (see www.ircore.com) ##
## ##
## _]NiX[_ <nix@valium.org> http://www.valium.org ##
######################################################
# checktime
set cservauth(chktime) 1
# CServ nick
set cservauth(cserv) "IriX"
# your bot's ID-Nick
set cservauth(idnick) "Xtreme"
# use public command for oping me? 1/0
set cservauth(pub) 0
######################################################
bind dcc o +auth +cservauth
proc +cservauth {hand idx text} {
global cservchan
set chan [lindex $text 0]
if {[llength $text] != 2} {
putdcc $idx "Usage : .+auth <#channel> <password>"
return 0
} elseif {![string match #* $chan]} {
putdcc $idx "[lindex $text 0] is not a valid channel"
return 0
} else {
set cservchan($chan) "$chan [lindex $text 1]"
SaveCServ
return 1
}
}
bind dcc o -auth -cservauth
proc -cservauth {hand idx text} {
global cservchan
set chan [lindex $text 0]
if {![info exists cservchan($chan)]} {
putdcc $idx "[lindex $text 0] is not a valid channel"
return 0
} else {
unset cservchan($chan)
SaveCServ
return 1
}
}
bind dcc o auth cservauth
proc cservauth {hand idx text} {
global cservchan
putdcc $idx " CServAuth.tcl "
putdcc $idx ""
putdcc $idx ".+auth <#channel> <password>"
putdcc $idx ".-auth <#channel>"
putdcc $idx ""
putdcc $idx "Auth list :"
if {[matchattr $hand n]} {putdcc $idx "channel password"} {putdcc $idx "channel"}
foreach a [array name cservchan] {
if {[matchattr $hand n]} {putdcc $idx "[lindex $cservchan($a) 0] ([lindex $cservchan($a) 1])"
} else {putdcc $idx "[lindex $cservchan($a) 0]"}
}
putdcc $idx ""
}
proc SaveCServ {} {
global cservchan
set f [open CServAuth.conf w]
foreach c [array name cservchan] {
puts $f "$cservchan($c)"
}
close $f
}
if {[file exists "CServAuth.conf"]} {
set f [open CServAuth.conf r]
while {[gets $f line] >= 0} {
set cservchan([string tolower [lindex $line 0]]) $line
}
close $f
}
proc CServAuth {} {
global cservauth cservchan botnick
foreach a [array name cservchan] {
set chan [lindex $cservchan($a) 0]
if {[validchan $chan]} {
if {(![botisop $chan]) && ([isop $cservauth(cserv) $chan])} {
putserv "PRIVMSG $cservauth(cserv) :AUTH $chan $cservauth(idnick) [lindex $cservchan($a) 1]"
if {$cservauth(pub)} {putserv "PRIVMSG $chan :!op"
} else {putserv "PRIVMSG $cservauth(cserv) :OP $chan"}
}
}
}
timer $cservauth(chktime) CServAuth
}
foreach t [timers] {
if {[lindex $t 1] == "CServAuth"} {killtimer [lindex $t 2]}
}
CServAuth
putlog "CServAuth.tcl - (.auth for help - check time set to $cservauth(chktime) mins)"
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|