Channel Mode Popup

By chicknh8r on May 01, 2007

This snippet is my attempt to take a little guess work out of what channel modes do what.
Copy this code, then in your mIRC, click ALT+R, then goto 'File', then goto 'New'. Paste the code, then do a 'save-as' and name it whatever you'd like. After you hit 'OK', you should now be able to right click in a channel window and have a menu popup.
The modes that are currently set in that channel have a checkmark in front of them. Simply click the mode you want to change. I hope you find this usefull.

menu channel {
  $iif($active != status,$xu($chan) $xb($xc($chan)))
  .$xu($chan) $+ 's Adjustable Modes $xb($xa($chan)): echo -a $xa
  .-
  .$xs(A) (A) Admins only Channel: $xm(A)
  .$xs(C) (C) No CTCPs allowed in the Channel: $xm(C)
  .$xs(G) (G) Censor Bad Language: $xm(G)
  .$xs(M) (M) Must be using a registered nick(+r), or have voice access to talk: $xm(M)
  .$xs(K) (K) /KNOCK is not allowed: $xm(K)
  .$xs(N) (N) No Nickname changes are permitted in the Channel: $xm(N)
  .$xs(O) (O) IRC Operator only Channel (settable by IRCops): $xm(O)
  .$xs(Q) (Q) No Kicks Allowed: $xm(Q)
  .$xs(R) (R) Only registered(+r) users may join the Channel: $xm(R)
  .$xs(S) (S) Strips mIRC color codes: $xm(S)
  .$xs(T) (T) No NOTICEs allowed in the Channel: $xm(T)
  .$xs(V) (V) /INVITE is not allowed: $xm(V)
  .$xs(c) (c) Block messages containing mIRC color codes: $xm(c)
  .$xs(i) (i) A user must be invited to join the Channel: $xm(i)
  .$xs(k) (k) <key> = Users must specify <key> to join: $xm(k) $iif(k !isincs $xc($chan),$$?="Enter a key")
  .$xs(l) (l) <number of max users> = Channel may hold at most <number> of users: $xm(l) $iif(l !isincs $xc($chan),$$?="Enter Limit")
  .$xs(m) (m) Moderated Channel(only +vhoaq users may speak): $xm(m) 
  .$xs(n) (n) Users outside the Channel can not send PRIVMSGs to the Channel: $xm(n)
  .$xs(p) (p) Private Channel: $xm(p)
  .$xs(r) (r) The Channel is registered (settable by Services only): $xm(r)
  .$xs(s) (s) Secret Channel: $xm(s)
  .$xs(u) (u) Auditorium mode (/names and /who $+($chr(35),channel) only show Channel OPS): $xm(u)
  .$xs(z) (z) Only Clients on a Secure Connection (SSL) can join: $xm(z)
  - 
}
menu nicklist {
  $iif($1 != $null, $1 ))
  .QuickInfo $xb($1):$xr
  .-
  .Channel $xb($chan):$xr
  .Ident $xi($1).n:$xr
  .Host $xi($1).h:$xr
  .Idle Time $xi($1).i:$xr
  .Com. ch. $xi($1).c:$xr
  .-
  .Control
  ..$+($iif(v isin $xl($1),-,+),v): mode $chan $+($iif(v isin $xl($1),-,+),v) $$1
  ..$+($iif(h isin $xl($1),-,+),h): mode $chan $+($iif(h isin $xl($1),-,+),h) $$1
  ..$+($iif(o isin $xl($1),-,+),o): mode $chan $+($iif(o isin $xl($1),-,+),o) $$1
  ..$+($iif(a isin $xl($1),-,+),a): mode $chan $+($iif(a isin $xl($1),-,+),a) $$1
  ..$+($iif(q isin $xl($1),-,+),q): mode $chan $+($iif(q isin $xl($1),-,+),q) $$1
  -
}

alias -l xc return $chan($chan).mode
alias -l xa return $chanmodes
alias -l xs return $style($iif($1 isincs $xc,5,4))
alias -l xm return mode $chan $+($iif($1 isincs $xc,-,+),$1)
alias -l xu return $replace($1,$left($1,2),$upper($left($1,2)))
alias -l xb return $+($chr(91),$1,$chr(93))
alias -l xl return $replace($remove($nick($chan,$1).pnick,$1),+,v,%,h,@,o,&,a,~,q)
alias -l xr return
alias -l xi {
  if (!$1) { return }
  var %a = $left($nick($chan,$1).pnick,1), %b = $replace(%a,~,Owner,&,Admin,@,Operator,%,Half Operator,+,Voiced), %c 
  if ($prop == l) { %c = $xb($+(%a,$chr(32),%b)) }
  if ($prop == h) { %c = $xb($phost($1)) }
  if ($prop == n) { %c = $xb($pident($1)) }
  if ($prop == i) { %c = $xb($pidle($1)) }
  if ($prop == c) { %c = $xb($replace($comchans($1),$chr(32),$chr(44))) }
  if ($prop == a) { %c = $xb($address($1,5)) }
  return %c
}

Comments

Sign in to comment.
Sharky_Dude   -  Jul 17, 2011

This is actually a pretty nice snippet, too bad I wasn't into irc when you posted this.

 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.