Here is a simple blacklist script I am sure you can figure the rest out yourself.

Code
on *:join:#: {
    if ($nick == $me) { 
        .ial on | ialfill $chan 
         return 
    }
    if ($address isin %banlist. [ $+ [ $chan ] ]) { kick $chan $nick You are not welcome here }
}
on *:OP:#: {
    if ($opnick != $me) { return }
    .timer 1 5 /check_banned $chan
    ; I Put a delay on the check_banned incase you are opped before the /ialfill finishes.
}
alias -l check_banned {
    var %i = 1
    while ($ialchan(*,$$1,%i) {
         if ($ifmatch isin %banlist. [ $+ [ $chan ] ]) { kick $chan $nick You are not welcome here! }
   }
}
alias -l ban_nick {
  var %nick = $1
  var %chan = $2
  var %address = $ialchan(%nick,%chan,1)
  if (!%address) { return }
  if (%address in %banlist. [ $+ [ $chan ] ]) { return }
  set %banlist. [ $+ [ %chan ] ] = %banlist. [ $+ [ %chan ] ] %address
}
alias -l unban_nick {
  var %nick = $1
  var %chan = $2
  var %address = $ialchan(%nick,%chan,1)
  if (!%address) { return }
  set %banlist. [ $+ [ %chan ] ] $remove(%banlist. [ $+ [ %chan ] ], %address)
}
on *:SERVEROP:#: { }