All pastes #431860 Raw Edit

Stuff

public text v1 · immutable
·published 2007-04-09 22:27 UTC
rendered paste body
; usage: /mall [chan] +o|+v|-o|-v 

alias -l mall.nick { return $eval($+($!nick,$chr(40),$1,$chr(44),$2,$chr(44),$3,$chr(41)),2) } 
alias mall {  
  if ($me ison $1) { var %chan = $1 | tokenize 32 $2- } | else { var %chan = $active } 
  if ($1 == +v) { var %temp = r } | elseif ($1 == +o) { var %temp = a,o }  | elseif ($1 == -o) { var %temp =  o } | elseif ($1 == -v) { var %temp =  v } | else { return } 
  var %total = $mall.nick(%chan,0,%temp),%i = 1 
  while (%i <= %total) {  
    if (!$regex($mall.nick(%chan,%i,%temp),^(Q|L| $+ $me $+ )$)) { var %nicks = %nicks $mall.nick(%chan,%i,%temp)  } 
    if ($numtok(%nicks,32) == $modespl) { mode %chan $left($1,1) $+ $str($right($1,1),$modespl) %nicks | unset %nicks }  
    inc %i  
  }  
  if (%nicks) { mode %chan $left($1,1) $+ $str($right($1,1),$modespl) %nicks  | unset %nicks  }  
}  
on *:text:!massv*:#: { if ($nick isop $chan) || ($nick ishop $chan) { /mall +v } }
on *:text:!masso*:#: { if ($nick isop $chan) { /mall +o } }
on *:text:!massdeo*:#: { if ($nick isop $chan) { /mall -o } }
on *:text:!massdev*:#: { if ($nick isop $chan) || ($nick ishop $chan) { /mall -v } }