Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # a 'simple' greet enhancement
- # expand whois-fields with 'lastgreet' if you want to take advantage of the userfile and make it more resilient
- # activate: .chanset <channel> -greet +greet2
- setudef flag greet2
- setudef int greet2_expire
- bind join - * greet2:join
- proc greet2:join {nick host hand chan} {
- global whois-fields greet2
- # does user meet basic requirement
- if {![validuser $hand] || [getuser $hand INFO] eq ""} { return 0 }
- # does the channel meet basic requirement
- if {![validchan $chan] || [channel get $chan greet] || ![channel get $chan greet2] || [channel get $chan greet2_expire] eq 0} { return 0 }
- # do we have a whois field called lastgreet?
- if {[lsearch -exact "lastgreet" [string tolower ${whois-fields}]} {
- set lastgreet [getuser $hand XTRA lastgreet]
- setuser $hand XTRA lastgreet [unixtime]
- } else {
- if {[info exists greet2($chan,$host)]} {
- set lastgreet $greet2($chan,$host)
- } else {
- set lastgreet [expr [unixtime] - ([channel get $chan greet2_expire] * 61)]
- }
- set greet2($chan,$host) [unixtime]
- #uncomment following line if you want to cleanup memory at the cost of timers running
- #timer [channel get $chan greet2_expire] "unset -nocomplain greet2($chan,$host)"
- }
- # bail out if the time has not expired yet
- if {[expr ([unixtime] - $lastgreet) / 60 ] < [channel get $chan greet2_expire]} { return 0 }
- putserv [format "PRIVMSG %s :%s" $chan [getuser $hand INFO]]
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement