All pastes #639958 Raw Edit

Miscellany

public text v1 · immutable
#639958 ·published 2007-07-30 23:50 UTC
rendered paste body
alias power {
  var %@ 0,%% 0,%+ 0,%Reg 0,%b $scid(0),%serv $server,%po 0,%tot 0,%serv $server
  while (%b) { scid $scon(%b) 
    if ($status == connected) { 
      var %a $chan(0), %chans $calc(%chans + $chan(0)) 
      while (%a) { 
        if ($me isop $chan(%a)) { 
          inc %@ 
        var %po $calc($nick($chan(%a),0) -1 + %po) } 
        elseif ($me ishop $chan(%a)) { inc %% | inc %po $calc($nick($chan(%a),0,o) -1) } 
        elseif ($me isvoice $chan(%a)) { inc %+ | inc %po $calc($nick($chan(%a),0,oh) -1) } 
        elseif ($me isreg $chan(%a)) { inc %Reg }
        inc %tot $nick($chan(%a),0) 
        dec %a 
      }
    }
    dec %b
  }
  scid -r
  if (!$isid) { say 4I'm opped in $bracketer(%@) $+ , halfopped in $bracketer(%%) $+ , voiced in $bracketer(%+) $+ , and regular in $bracketer(%Reg) out of $bracketer(%chans) channels on $bracketer($scid(0)) servers. I have power over $bracketer(%po $+ / $+ %tot) ( $+ $ceil($calc((%po / %tot)*100)) $+ $chr(37) $+ ) users. $+(4,-,15,$me,4,-,) }
  else return $bracketer(%po $+ / $+ %tot) ( $+ $ceil($calc((%po / %tot)*100)) $+ $chr(37) $+ )
}
alias bracketer { return $+(12,$chr(91),4,$$1,$2-,12,$chr(93),4) }