All pastes #605403 Raw Edit

Someone

public text v1 · immutable
·published 2007-07-06 04:46 UTC
rendered paste body
on *:START: { 
  ;if user sends more than %flood.lines in this time ban them 
  set %flood.unset 3
  ;if a user sends more than this many lines/actions in %flood.unset ban them 
  set %flood.lines 10 
  ;this is the bantime in seconds 
  set %flood.bantime 300
} 
on *:TEXT:*:#: {  
  if ($nick !isop $chan) {
    if ($nick !ishop $chan) { 
      var inc %kickcounter 
      inc $($+(-u,%flood.unset)) $+(%,flood.,$chan,.,text.,$nick) 
      if ($($+(%,flood.,$chan,.,text.,$nick),2) >= %flood.lines) {
        if (!$($+(%,flood.,$chan,.warning.,$nick),2)) {
          set -u300 $+(%,flood.,$chan,.warning.,$nick) 1
          kick $chan $nick 4Stop Flooding! (Warning)
          halt
        }
        else {
          ban $($+(-ku,%flood.bantime)) $chan $nick 3 3Flood. 3 Lines in 10 Second. 5 min ban. x $+ $bytes(%kickcounter,b) $+ x 
        }
      } 
    }
  }
}