All pastes #515383 Raw Edit

Miscellany

public text v1 · immutable
#515383 ·published 2007-05-28 04:44 UTC
rendered paste body
on *:ban:#:{
  if (%protect. [ $+ [ $banmask ] ] == $null) { halt }
  mode $chan +e $banmask
  if ($nick != $me) { 
    kick $chan $nick Nice try, $nick $+ .
    if $chan = #vivec halt
    else mode $chan +b $address($nick,2)
  }
  mode $chan -b $banmask
}

on *:rawmode:#:{
  if (-e isin $1-) {
    if (%protect. [ $+ [ $2 ] ] != $null) {
      mode $chan +e $2
    }
  }
}

on *:join:#:{
  if (%protect. [ $+ [ $address($nick,2) ] ]) {
    mode $chan +e $address($nick,2)
  }
}

on *:kick:#:{
  set %kchan $chan
  if ($knick == $me) {
    /cs unban %kchan
  }
}

alias setprotect {
  set %protect. [ $+ [ $address($$1,0) ] ] 0
  set %protect. [ $+ [ $address($$1,1) ] ] 0
  set %protect. [ $+ [ $address($$1,2) ] ] 0
  set %protect. [ $+ [ $address($$1,3) ] ] 0
  set %protect. [ $+ [ $address($$1,4) ] ] 0
  set %protect. [ $+ [ $address($$1,5) ] ] 0
  set %protect. [ $+ [ $address($$1,6) ] ] 0
  set %protect. [ $+ [ $address($$1,7) ] ] 0
  set %protect. [ $+ [ $address($$1,8) ] ] 0
}

alias unprotect {
  unset %protect. [ $+ [ $address($$1,0) ] ]
  unset %protect. [ $+ [ $address($$1,1) ] ]
  unset %protect. [ $+ [ $address($$1,2) ] ]
  unset %protect. [ $+ [ $address($$1,3) ] ]
  unset %protect. [ $+ [ $address($$1,4) ] ]
  unset %protect. [ $+ [ $address($$1,5) ] ]
  unset %protect. [ $+ [ $address($$1,6) ] ]
  unset %protect. [ $+ [ $address($$1,7) ] ]
  unset %protect. [ $+ [ $address($$1,8) ] ]
}

menu nicklist {
  Ban Protect
  .Add $$1 $+ :setprotect $$1 | echo -a Protection set for $$1
  .Del $$1 $+ :unprotect $$1 | echo -a $$1 unprotected
}