Control-All
Posted by KilledInAction
Tuesday, March 16, 2004
Description: Mass channel mode script


;Control-All snippet by KIA
;Usage: select the names you want and right click
menu nicklist {
  -
  Control-All
  .Ignore: dosomemodes +i
  .Unignore: dosomemodes -i
  .Op: dosomemodes +o
  .Deop: dosomemodes -o
  .Voice: dosomemodes +v
  .Devoice: dosomemodes -v
  .Kick: dosomemodes k
  .Kick (why): dosomemodes kw
  .Ban: dosomemodes b
  .Ban, Kick: dosomemodes bk
  .Ban, Kick (why): dosomemodes bkw
}

alias -l dosomemodes {
  if ($me !isop $active) return
  var %csnicks,%snicks = $replace($snicks,$chr(44),$chr(32))
  if ($1 isin +o-o+v-v) {
    while (%snicks) {
      %csnicks = $gettok(%snicks,1-6,32)
      %snicks = $gettok(%snicks,7-,32)
      mode $chan $left($1,1) $+ $str($right($1,1),$numtok(%csnicks,32)) %csnicks
    }  
  }
  elseif (?i iswm $1) {
    while (%snicks) {
      ignore $iif($left($1,1) == $chr(43),$null,-r) $gettok(%snicks,1,32) 1
      %snicks = $deltok(%snicks,1,32)
    }
  }
  else {
    if (w isin $1) { var %k.reason = $$?="Reason:" | if (!%k.reason) return }
    else var %k.reason = Bye.
    while (%snicks) {
      if (b isin $1) ban $gettok(%snicks,1,32) 2
      if (k isin $1) kick $chan $gettok(%snicks,1,32) %k.reason
      %snicks = $deltok(%snicks,1,32)
    }
  }
}

Submit a comment
Oops! You need to login or register before you can post a comment!

ebaum's world