Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- setudef flag regreminder
- if {![info exists regreminder]} {
- set regreminder(settings,timeout) "20"
- set regreminder(settings,command) "ACC"
- }
- proc regreminder:send {nick} {
- global regreminder
- if {[info exists regreminder($nick)]} { return }
- if {[info exists regreminder(polling,$nick)] && [expr [unixtime] - $regreminder(polling,$nick)] < $regreminder(settings,timeout) } { return }
- set regreminder(polling,$nick) [unixtime]
- putserv [format "PRIVMSG NickServ :%s %s" $regreminder(settings,command) $nick]
- }
- bind join - * regreminder:join
- proc regreminder:join {nick host hand chan} {
- if {[isbotnick $nick]} { return }
- if {[isignore $nick!$host]} { return }
- if {![channel get $chan regreminder]} { return }
- regreminder:send $nick
- }
- bind nick - * regreminder:nick
- proc regreminder:nick {nick host hand chan newnick} {
- global regreminder
- if {[info exists regreminder($nick)]} { unset regreminder($nick) }
- if {[isignore $newnick!$host]} { return }
- regreminder:send $newnick
- }
- bind part - * regreminder:part
- bind sign - * regreminder:part
- proc regreminder:part {nick host hand chan reason} {
- global regreminder
- if {![info exists regreminder($nick)] || [onchan $nick]} { return }
- unset regreminder($nick)
- }
- bind kick - * regreminder:kick
- proc regreminder:kick {nick host hand chan target reason} {
- global regreminder
- if {![info exists regreminder($target)] || [onchan $target]} { return }
- unset regreminder($target)
- }
- # -NickServ (services@services.host)- STATUS hawk 0
- bind notc - *STATUS* regreminder:notc
- #-NickServ (NickServ@services.int)- hawk ACC 0 (not registered)
- bind notc - *ACC* regreminder:notc
- proc regreminder:notc {nick host hand text {dest ""}} {
- global botnick regreminder
- if {$dest eq ""} { set dest $botnick }
- if {[string tolower $nick] ne "nickserv"} { return }
- if {![isbotnick $dest]} { return }
- if {[lindex $text 0] eq "STATUS"} {
- set user [lindex $text 1]
- set status [lindex $text 2]
- } elseif {[lindex $text 1] eq "ACC"} {
- set user [lindex $text 0]
- set status [lindex $text 2]
- } else {
- return
- }
- switch -- $status {
- 0 {
- putserv [format "PRIVMSG %s :%s" $user "$user -> For security reasons please take a moment to register your nickname by typing: \002\/msg nickserv register MADEUP_PASSWORD YOUR_EMAIL_ADDRESS\002"]
- putserv [format "PRIVMSG %s :%s" $user "When the NickServ responds with \002Nickname $user registered\002, please respond here with the word \002REGISTERED\002. Thanks $user!"]
- }
- 1 {
- putserv [format "PRIVMSG %s :%s" $user "$user -> For security reasons please take a moment to identify your nickname by typing: \002\/msg nickserv identify PASSWORD\002"]
- putserv [format "PRIVMSG %s :%s" $user "When the NickServ responds with \002You are now identified for $user\002, please respond here with the word \002REGISTERED\002. Thanks $user!"]
- }
- default {
- set regreminder($user) $status
- }
- }
- }
- bind msg - registered regreminder:msg
- proc regreminder:msg {nick host hand args} {
- global regreminder
- if {[info exists regreminder($nick)] || [isignore $nick!$host] || ![onchan $nick]} { return }
- foreach chan [channels] {
- if {[channel get $chan regreminder] && [onchan $nick $chan]} {
- putserv [format "PRIVMSG NickServ :%s %s" $regreminder(settings,command) $nick]
- return
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement