### Match Flags ### proc match:rank { hand chan } { global owner master admin op voice chanmaster chanop chanvoice new if { [ matchattr $hand $owner ] || $hand == "owner" } { return "aefghjmnoptxA|-" } if { [ matchattr $hand $master ] || $hand == "master" } { return "afghjmoptxB|-" } if { [ matchattr $hand $admin ] || $hand == "admin" } { return "afghopC|-" } if { [ matchattr $hand $op ] || $hand == "op" } { return "afghoD|-" } if { [ matchattr $hand $voice ] || $hand == "voice" } { return "fghE|-" } if { [ matchattr $hand $chanmaster $chan ] || $hand == "chanmaster" } { return "-|fmovF $chan" } if { [ matchattr $hand $chanop $chan ] || $hand == "chanop" } { return "-|fovG $chan" } if { [ matchattr $hand $chanvoice $chan ] || $hand == "chanvoice" } { return "-|fvH $chan" } if { [ matchattr $hand $new ] || $hand == "new" } { return "fhI|-" } return "error!" } ### Change Rank ### proc chrank:proc {nick uhost hand chan text} { global owner master admin op voice chanmaster chanop chanvoice new set arg [ lindex $text 0 ] set uchan [ lindex $text 2 ] set rank [ lindex [ match:rank [ lindex $text 1 ] $uchan ] 0 ] if { $arg == "" || $rank == "" } { putserv "PRIVMSG $chan :Syntax is\: .chrank " return } else { set oldrank [ match:rank $arg $uchan ] putlog "$oldrank == \$oldrank" chattr $arg -$oldrank $uchan putlog "$rank == \$rank" chattr $arg +$rank $uchan putserv "PRIVMSG $chan :$arg\'s rank has been changed to $rank" } }