Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- on *:TEXT:.promote*:*: {
- if (!$2) { return }
- if ($chan) { var %target = $chan }
- else { var %target = $nick }
- var %u = $getid($2)
- var %ulvl = $userlvl2($nick)
- if ( %ulvl >= 50 ) {
- var %plvl = $userlvl(%u)
- var %orank = $level.str(%plvl)
- var %nrank = $level.str($nextlevel(%plvl))
- if ( $maxvouch(%ulvl,%nrank) > $voucher($nick,%nrank) ) {
- if ( $user(%u).promoteby == $getid($nick) || $user(%u).promoteby == x ) {
- if ( %orank != user ) {
- var %olist = $voucher($nick,$+(%orank,list))
- var %nlist = $voucher($nick,$+(%nrank,list))
- hadd vouchdata $+(%orank,.,$getid($nick)) $remtok(%olist,%u,1,46)
- hadd vouchdata $+(%nrank,.,$getid($nick)) $addtok(%nlist,%u,46)
- hadd vouchdata $+(info.,%u) $puttok($user(%u).vouchinfo,$getid($nick),2,46)
- hadd userdata $+(level.,%u) $nextlevel(%plvl)
- }
- else {
- var %nlist = $voucher($nick,$+(%nrank,list))
- echo -ag %nrank %nlist
- hadd vouchdata $+(%nrank,.,$getid($nick)) $addtok(%nlist,%u,46)
- hadd vouchdata $+(info.,%u) $puttok($user(%u).vouchinfo,$getid($nick),2,46)
- hadd userdata $+(level.,%u) $nextlevel(%plvl)
- }
- describe %target User $getname(%u) promoted from $enclose(%orank) to $enclose(%nrank)
- }
- else { notice $nick User was first promoted by another staff member! Only (s)he can promote the user further! }
- }
- else { notice $nick You can't promote (more) %orank $+ s to %nrank $+ s! }
- }
- }
- alias maxvouch {
- if ( $2 == User ) {
- if ( $1 >= 102 ) { return 500 }
- elseif ( $1 >= 101 ) { return 300 }
- elseif ( $1 >= 100 ) { return 250 }
- elseif ( $1 >= 90 ) { return 90 }
- elseif ( $1 >= 70 ) { return 65 }
- elseif ( $1 >= 50 ) { return 20 }
- else { return 0 }
- }
- if ( $2 == Host ) {
- if ( $1 >= 102 ) { return 50 }
- elseif ( $1 >= 101 ) { return 45 }
- elseif ( $1 >= 100 ) { return 30 }
- elseif ( $1 >= 90 ) { return 20 }
- elseif ( $1 >= 70 ) { return 5 }
- elseif ( $1 >= 50 ) { return 3 }
- else { return 0 }
- }
- if ( $2 == Leader ) {
- if ( $1 >= 102 ) { return 50 }
- elseif ( $1 >= 101 ) { return 40 }
- elseif ( $1 >= 100 ) { return 30 }
- elseif ( $1 >= 90 ) { return 20 }
- elseif ( $1 >= 70 ) { return 5 }
- elseif ( $1 >= 50 ) { return 3 }
- else { return 0 }
- }
- if ( $2 == Veteran ) {
- if ( $1 >= 102 ) { return 50 }
- elseif ( $1 >= 101 ) { return 40 }
- elseif ( $1 >= 100 ) { return 30 }
- elseif ( $1 >= 90 ) { return 20 }
- elseif ( $1 >= 70 ) { return 5 }
- elseif ( $1 >= 50 ) { return 3 }
- else { return 0 }
- }
- if ( $2 == Censor ) {
- if ( $1 >= 102 ) { return 8 }
- elseif ( $1 >= 101 ) { return 5 }
- elseif ( $1 >= 100 ) { return 5 }
- elseif ( $1 >= 90 ) { return 2 }
- else { return 0 }
- }
- if ( $2 == Voucher ) {
- if ( $1 >= 102 ) { return 10 }
- elseif ( $1 >= 101 ) { return 5 }
- elseif ( $1 >= 100 ) { return 5 }
- elseif ( $1 >= 90 ) { return 2 }
- else { return 0 }
- }
- if ( $2 == Moderator ) {
- if ( $1 >= 102 ) { return 10 }
- elseif ( $1 >= 101 ) { return 5 }
- elseif ( $1 >= 100 ) { return 5 }
- else { return 0 }
- }
- if ( $2 == Admin ) {
- if ( $1 >= 102 ) { return 10 }
- elseif ( $1 >= 101 ) { return 5 }
- else { return 0 }
- }
- if ( $2 == Head Admin ) {
- if ( $1 >= 102 ) { return 1 }
- else { return 0 }
- }
- }
- alias nextlevel {
- if ( $1 >= 101 ) { return 102 }
- elseif ( $1 >= 100 ) { return 101 }
- elseif ( $1 >= 90 ) { return 100 }
- elseif ( $1 >= 70 ) { return 90 }
- elseif ( $1 >= 50 ) { return 70 }
- elseif ( $1 >= 45 ) { return 50 }
- elseif ( $1 >= 30 ) { return 45 }
- elseif ( $1 >= 20 ) { return 30 }
- elseif ( $1 >= 10 ) { return 20 }
- else { return 0 }
- }
- alias prevlevel {
- if ( $1 >= 102 ) { return 101 }
- elseif ( $1 >= 101 ) { return 100 }
- elseif ( $1 >= 100 ) { return 90 }
- elseif ( $1 >= 90 ) { return 70 }
- elseif ( $1 >= 70 ) { return 50 }
- elseif ( $1 >= 50 ) { return 45 }
- elseif ( $1 >= 45 ) { return 30 }
- elseif ( $1 >= 30 ) { return 20 }
- elseif ( $1 >= 20 ) { return 10 }
- else { return 0 }
- }
- alias level.str {
- if ( $1 >= 102 ) { return Legendary Master }
- elseif ( $1 >= 101 ) { return Head Administrator }
- elseif ( $1 >= 100 ) { return Administrator }
- elseif ( $1 >= 90 ) { return Moderator }
- elseif ( $1 >= 70 ) { return Voucher }
- elseif ( $1 >= 50 ) { return Censor }
- elseif ( $1 >= 45 ) { return Veteran }
- elseif ( $1 >= 30 ) { return Leader }
- elseif ( $1 >= 20 ) { return Host }
- elseif ( $1 >= 10 ) { return User }
- else { return unknown }
- }
- alias voucher {
- if ( $2 == user ) {
- if ($hget(vouchdata,$+(u.,$getid($1)))) { return $v1 }
- else { return 0 }
- }
- if ( $2 == host ) {
- return $numtok($hget(vouchdata,$+(host.,$getid($1))),46)
- }
- if ( $2 == leader ) {
- return $numtok($hget(vouchdata,$+(leader.,$getid($1))),46)
- }
- if ( $2 == veteran ) {
- return $numtok($hget(vouchdata,$+(veteran.,$getid($1))),46)
- }
- if ( $2 == censor ) {
- return $numtok($hget(vouchdata,$+(censor.,$getid($1))),46)
- }
- if ( $2 == voucher ) {
- return $numtok($hget(vouchdata,$+(voucher.,$getid($1))),46)
- }
- if ( $2 == moderator ) {
- return $numtok($hget(vouchdata,$+(moderator.,$getid($1))),46)
- }
- if ( $2 == administrator ) {
- return $numtok($hget(vouchdata,$+(administrator.,$getid($1))),46)
- }
- if ( $2 == Hadmin ) {
- return $numtok($hget(vouchdata,$+(headadministrator.,$getid($1))),46)
- }
- if ( $2 == hostlist ) {
- if ($hget(vouchdata,$+(host.,$getid($1)))) { return $v1 }
- else { return . }
- }
- if ( $2 == leaderlist ) {
- if ($hget(vouchdata,$+(leader.,$getid($1)))) { return $v1 }
- else { return . }
- }
- if ( $2 == veteranlist ) {
- if ($hget(vouchdata,$+(veteran.,$getid($1)))) { return $v1 }
- else { return . }
- }
- if ( $2 == censorlist ) {
- if ($hget(vouchdata,$+(censor.,$getid($1)))) { return $v1 }
- else { return . }
- }
- if ( $2 == voucherlist ) {
- if ($hget(vouchdata,$+(voucher.,$getid($1)))) { return $v1 }
- else { return . }
- }
- if ( $2 == moderatorlist ) {
- if ($hget(vouchdata,$+(moderator.,$getid($1)))) { return $v1 }
- else { return . }
- }
- if ( $2 == administratorlist ) {
- if ($hget(vouchdata,$+(administrator.,$getid($1)))) { return $v1 }
- else { return . }
- }
- if ( $2 == headadministratorlist ) {
- if ($hget(vouchdata,$+(headadministrator.,$getid($1)))) { return $v1 }
- esle { return . }
- }
- }
- 16:14:24 <rubara> .promote test
- 16:14:24 -BGIHL-BOT- You can't promote (more) Moderators to Administrators!
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement