bind pub -|- .rank nsb_r_cmd bind pub n|n .new new:user bind pub n|n .del del:user bind pub n|n .chrank chrank:proc proc new:user {nick uhost hand chan text} { set arg [lindex [split $text] 0] set rank [lindex [split $text] 1] switch -- $arg { "" { putserv "PRIVMSG $chan : Syntax is: .new \[\]"; return } default { adduser $arg; putserv "PRIVMSG $chan : Added user $arg" } } switch -- $rank { A| - 10 { chattr $arg +A| } B| - 09 - 9 { chattr $arg +B| } C| - 08 - 8 { chattr $arg +C| } D| - 07 - 7 { chattr $arg +D| } E| - 06 - 6 { chattr $arg +E| } default { chattr $arg +F|; putserv "PRIVMSG $chan :$arg was added as a Civillian!"; return } } putserv "PRIVMSG $chan :User added with rank level: $rank" } proc chrank:proc {nick uhost hand chan text} { set arg [lindex [split $text] 0] set newrank [lindex [split $text] 1] if {$arg == ""} { putserv "PRIVMSG $chan : Syntax is: .chrank " return } switch -- $newrank { A| - 10 { set new A| } B| - 09 - 9 { set new B| } C| - 08 - 8 { set new C| } D| - 07 - 7 { set new D| } E| - 06 - 6 { set new E| } default { putserv "PRIVMSG $chan :$newrank didn't match any ranks !"; return } } if {[validuser $arg]} { if {[matchattr $arg A|]} { set oldrank "A|" } if {[matchattr $arg B|]} { set oldrank "B|" } if {[matchattr $arg C|]} { set oldrank "C|" } if {[matchattr $arg D|]} { set oldrank "D|" } if {[matchattr $arg E|]} { set oldrank "E|" } if {[matchattr $arg F|]} { set oldrank "F|" } chattr $arg '-$oldrank' chattr $arg '+$new' putserv "PRIVMSG $chan :$arg has been promoted to rank $newrank" } else { putserv "PRIVMSG $chan :$arg is not a valid user." } } proc del:user {nick uhost hand chan arg} { if {[validuser $arg]} { deluser $arg putserv "PRIVMSG $chan : User Deleted!" } else { putserv "PRIVMSG $chan : User not found!" } }