Code:
on @*:text:*:%clanchan:{
  if ($nick isop $chan) { return }
  inc -u8 $+(%,flood.,$chan,.,$nick)
  if ($($+(%,flood.,$chan,.,$nick),2) > 4) {
    mode $chan -v+b $nick $nick
    .timer 1 60 /mode $chan -b+v $nick $nick
    .notice $nick %color1 You have been devoiced for 60 seconds due to flooding. %color2
    .msg $chan %color1 Remember not to flood or you'll end up like $nick %color2
  }
}


See if this works for you. When you are devoicing someone, you can ban them with the same mode command (cut down on commands sent, reduce flooding potential). Although personally, I wouldn't recommend making so much happen because then if a few people gang up on you, they can make your script flood you off. It's also unnecessary to set a value to 0 before inc'ing it.