Code: Select all
bind pub n|- !cbx CLEAR-OLD-Bans
proc CLEAR-OLD-Bans {nick host hand chan text} {
set chan2 "#test"
bind raw - 367 timed:clear:oldbans:raw2024
bind raw - 368 timed:clear:oldbans:raw2024
putnow "mode $chan2 +b"
}
proc timed:clear:oldbans:raw2024 {from key text} {
global clearbans
switch -- $key {
367 {
lassign [split $text] bot chan mask
set chan [string tolower $chan]
lappend clearbans($chan) $mask
}
368 {
lassign [split $text] bot chan
set chan [string tolower $chan]
unbind raw - 367 timed:clear:oldbans:raw2024
unbind raw - 368 timed:clear:oldbans:raw2024
if {![info exists clearbans($chan)]} return
set len [llength $clearbans($chan)]
set total 0
if {$len > 0} {
while {$len > 0} {
if {$len > 6} {
set mode [string repeat "b" 6]
set masks [join [lrange $clearbans($chan) 0 [expr {6 - 1}]]]
set clearbans($chan) [lrange $clearbans($chan) 6 end]
incr len -6
incr total 6
} else {
set mode [string repeat "b" $len]
set masks [join $clearbans($chan)]
incr total $len
set len 0
}
incr counter 1
after [expr {$counter*4000}] [list putnow "MODE $chan -$mode $masks"]
}
}
}
}
}
Eggdrop community