Timed Blacklisted

By [|Red-X|] on Aug 13, 2004

this is to add a user into blacklisted for n secs ... and auto remove it after n secs. it will also read the address of all users in channel when you 1st join a channnel and you get op then it checks for blacklisted addresses. if existed they will get kicked.

on !*:join:#: {   
  if ($hfind(blacklist,$address($nick,2),1,w)) { 
    if ($me isop $chan) { ban -ku300 $chan $nick 2 $gettok($hget(blacklist, $hfind(blacklist, $address($nick,2),1,w)),2-,32) < [IP-matched] }
    else { echo $color(info) -ta 4ALERT:12 $nick from $site is blacklisted just joined $chan }
  }
}
on !*:op:#: {
  if ($opnick == $me) { who $chan }
}
on *:start:{
  if (!$hget(blacklist)) hmake blacklist 30
}
raw 352:*: {
  var %badadd = $+(*,$3,@,$4), %bn = $6
  if ($hfind(blacklist,%badadd,1,w)) { %nickbl = $addtok(%nickbl,$6,44) | echo $color(info) -at found $6 as blaclisted }
  halt
}
raw 315:*: {
  if (!%nickbl) { halt }
  if ($me isop $2) {
    var %n = $numtok(%nickbl,44) 
    while (%n) {
      if ($gettok(%nickbl,%n,44) != $me) kick $2 $gettok(%nickbl,%n,44) Blacklisted 
      dec %n
    }
    halt
  } 
}
menu nicklist {
  &Blacklisted
  .$iif($hfind(blacklist,$address($snick(#,1),2),1,w),Del,Add): {
    %reason = $input(type reason,e,Blacklisted) 
    %timedbl = $input(how long you will be blacklisted $snick(#,1) (in secs),e,Time Blacklisted) 
    if ($hfind(blacklist,$address($snick(#,1),2))) hdel -w blacklist $+($address($snick(#,1),2),*) | else { hadd -mu [ $+ [ %timedbl ] ] blacklist $address($snick(#,1),5) $snick(#,1) %reason | if ($me isop #) ban -k #  $snick(#,1) 2 %reason }
  } 
  .$iif(!$hget(blacklist,0).item,$style(2)) Clear Blacklisted: hdel -w blacklist * | echo $color(info) -a REPORT: removing all Black List done...)
}

Comments

Sign in to comment.
Yoinx   -  Dec 23, 2004

i\'m not gonna test it but, \"if ($hfind(blacklist,$address($nick,2),1,w)) {\" that really shouldnt be wildacard searching since you\'re not giving it a wildcard but it still looks like it would work good.

 Respond  
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.