Advertisement
Guest User

Untitled

a guest
Jul 26th, 2017
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
mIRC 6.67 KB | None | 0 0
  1. on *:TEXT:.promote*:*: {
  2.   if (!$2) { return }
  3.   if ($chan) { var %target = $chan }
  4.   else { var %target = $nick }
  5.   var %u = $getid($2)
  6.   var %ulvl = $userlvl2($nick)
  7.   if ( %ulvl >= 50 ) {
  8.     var %plvl = $userlvl(%u)
  9.     var %orank = $level.str(%plvl)
  10.     var %nrank = $level.str($nextlevel(%plvl))
  11.     if ( $maxvouch(%ulvl,%nrank) > $voucher($nick,%nrank) ) {
  12.       if ( $user(%u).promoteby == $getid($nick) || $user(%u).promoteby == x ) {
  13.         if ( %orank != user ) {
  14.           var %olist = $voucher($nick,$+(%orank,list))
  15.           var %nlist = $voucher($nick,$+(%nrank,list))
  16.           hadd vouchdata $+(%orank,.,$getid($nick)) $remtok(%olist,%u,1,46)
  17.           hadd vouchdata $+(%nrank,.,$getid($nick)) $addtok(%nlist,%u,46)
  18.           hadd vouchdata $+(info.,%u) $puttok($user(%u).vouchinfo,$getid($nick),2,46)
  19.           hadd userdata $+(level.,%u) $nextlevel(%plvl)
  20.         }
  21.         else {
  22.           var %nlist = $voucher($nick,$+(%nrank,list))
  23.           echo -ag %nrank %nlist
  24.           hadd vouchdata $+(%nrank,.,$getid($nick)) $addtok(%nlist,%u,46)
  25.           hadd vouchdata $+(info.,%u) $puttok($user(%u).vouchinfo,$getid($nick),2,46)
  26.           hadd userdata $+(level.,%u) $nextlevel(%plvl)
  27.         }
  28.         describe %target User $getname(%u) promoted from $enclose(%orank) to $enclose(%nrank)
  29.       }
  30.       else { notice $nick User was first promoted by another staff member! Only (s)he can promote the user further! }
  31.     }
  32.     else { notice $nick You can't promote (more) %orank $+ s to %nrank $+ s! }
  33.   }
  34. }
  35.  
  36.  
  37. alias maxvouch {
  38.   if ( $2 == User ) {
  39.     if ( $1 >= 102 ) { return 500 }
  40.     elseif ( $1 >= 101 ) { return 300 }
  41.     elseif ( $1 >= 100 ) { return 250 }
  42.     elseif ( $1 >= 90 ) { return 90 }
  43.     elseif ( $1 >= 70 ) { return 65 }
  44.     elseif ( $1 >= 50 ) { return 20 }
  45.     else { return 0 }
  46.   }
  47.   if ( $2 == Host ) {
  48.     if ( $1 >= 102 ) { return 50 }
  49.     elseif ( $1 >= 101 ) { return 45 }
  50.     elseif ( $1 >= 100 ) { return 30 }
  51.     elseif ( $1 >= 90 ) { return 20 }
  52.     elseif ( $1 >= 70 ) { return 5 }
  53.     elseif ( $1 >= 50 ) { return 3 }
  54.     else { return 0 }
  55.   }
  56.  
  57.   if ( $2 == Leader ) {
  58.     if ( $1 >= 102 ) { return 50 }
  59.     elseif ( $1 >= 101 ) { return 40 }
  60.     elseif ( $1 >= 100 ) { return 30 }
  61.     elseif ( $1 >= 90 ) { return 20 }
  62.     elseif ( $1 >= 70 ) { return 5 }
  63.     elseif ( $1 >= 50 ) { return 3 }
  64.     else { return 0 }
  65.   }
  66.  
  67.   if ( $2 == Veteran ) {
  68.     if ( $1 >= 102 ) { return 50 }
  69.     elseif ( $1 >= 101 ) { return 40 }
  70.     elseif ( $1 >= 100 ) { return 30 }
  71.     elseif ( $1 >= 90 ) { return 20 }
  72.     elseif ( $1 >= 70 ) { return 5 }
  73.     elseif ( $1 >= 50 ) { return 3 }
  74.     else { return 0 }
  75.   }
  76.  
  77.   if ( $2 == Censor ) {
  78.     if ( $1 >= 102 ) { return 8 }
  79.     elseif ( $1 >= 101 ) { return 5 }
  80.     elseif ( $1 >= 100 ) { return 5 }
  81.     elseif ( $1 >= 90 ) { return 2 }
  82.     else { return 0 }
  83.   }
  84.   if ( $2 == Voucher ) {
  85.     if ( $1 >= 102 ) { return 10 }
  86.     elseif ( $1 >= 101 ) { return 5 }
  87.     elseif ( $1 >= 100 ) { return 5 }
  88.     elseif ( $1 >= 90 ) { return 2 }
  89.     else { return 0 }
  90.   }
  91.   if ( $2 == Moderator ) {
  92.     if ( $1 >= 102 ) { return 10 }
  93.     elseif ( $1 >= 101 ) { return 5 }
  94.     elseif ( $1 >= 100 ) { return 5 }
  95.     else { return 0 }
  96.   }
  97.   if ( $2 == Admin ) {
  98.     if ( $1 >= 102 ) { return 10 }
  99.     elseif ( $1 >= 101 ) { return 5 }
  100.     else { return 0 }
  101.   }
  102.   if ( $2 == Head Admin ) {
  103.     if ( $1 >= 102 ) { return 1 }
  104.     else { return 0 }
  105.   }
  106. }
  107.  
  108. alias nextlevel {
  109.   if ( $1 >= 101 ) { return 102 }
  110.   elseif ( $1 >= 100 ) { return 101 }
  111.   elseif ( $1 >= 90 ) { return 100 }
  112.   elseif ( $1 >= 70 ) { return 90 }
  113.   elseif ( $1 >= 50 ) { return 70 }
  114.   elseif ( $1 >= 45 ) { return 50 }
  115.   elseif ( $1 >= 30 ) { return 45 }
  116.   elseif ( $1 >= 20 ) { return 30 }
  117.   elseif ( $1 >= 10 ) { return 20 }
  118.   else { return 0 }
  119. }
  120.  
  121. alias prevlevel {
  122.   if ( $1 >= 102 ) { return 101 }
  123.   elseif ( $1 >= 101 ) { return 100 }
  124.   elseif ( $1 >= 100 ) { return 90 }
  125.   elseif ( $1 >= 90 ) { return 70 }
  126.   elseif ( $1 >= 70 ) { return 50 }
  127.   elseif ( $1 >= 50 ) { return 45 }
  128.   elseif ( $1 >= 45 ) { return 30 }
  129.   elseif ( $1 >= 30 ) { return 20 }
  130.   elseif ( $1 >= 20 ) { return 10 }
  131.   else { return 0 }
  132. }
  133.  
  134. alias level.str {
  135.   if ( $1 >= 102 ) { return Legendary Master }
  136.   elseif ( $1 >= 101 ) { return Head Administrator }
  137.   elseif ( $1 >= 100 ) { return Administrator }
  138.   elseif ( $1 >= 90 ) { return Moderator }
  139.   elseif ( $1 >= 70 ) { return Voucher }
  140.   elseif ( $1 >= 50 ) { return Censor }
  141.   elseif ( $1 >= 45 ) { return Veteran }
  142.   elseif ( $1 >= 30 ) { return Leader }
  143.   elseif ( $1 >= 20 ) { return Host }
  144.   elseif ( $1 >= 10 ) { return User }
  145.   else { return unknown }
  146. }
  147.  
  148. alias voucher {
  149.   if ( $2 == user ) {
  150.     if ($hget(vouchdata,$+(u.,$getid($1)))) { return $v1 }
  151.     else { return 0 }
  152.   }
  153.   if ( $2 == host ) {
  154.     return $numtok($hget(vouchdata,$+(host.,$getid($1))),46)
  155.   }
  156.   if ( $2 == leader ) {
  157.     return $numtok($hget(vouchdata,$+(leader.,$getid($1))),46)
  158.   }
  159.   if ( $2 == veteran ) {
  160.     return $numtok($hget(vouchdata,$+(veteran.,$getid($1))),46)
  161.   }
  162.   if ( $2 == censor ) {
  163.     return $numtok($hget(vouchdata,$+(censor.,$getid($1))),46)
  164.   }
  165.   if ( $2 == voucher ) {
  166.     return $numtok($hget(vouchdata,$+(voucher.,$getid($1))),46)
  167.   }
  168.   if ( $2 == moderator ) {
  169.     return $numtok($hget(vouchdata,$+(moderator.,$getid($1))),46)
  170.   }
  171.   if ( $2 == administrator ) {
  172.     return $numtok($hget(vouchdata,$+(administrator.,$getid($1))),46)
  173.   }
  174.   if ( $2 == Hadmin ) {
  175.     return $numtok($hget(vouchdata,$+(headadministrator.,$getid($1))),46)
  176.   }
  177.   if ( $2 == hostlist ) {
  178.     if ($hget(vouchdata,$+(host.,$getid($1)))) { return $v1 }
  179.     else { return . }
  180.   }
  181.   if ( $2 == leaderlist ) {
  182.     if ($hget(vouchdata,$+(leader.,$getid($1)))) { return $v1 }
  183.     else { return . }
  184.   }
  185.   if ( $2 == veteranlist ) {
  186.     if ($hget(vouchdata,$+(veteran.,$getid($1)))) { return $v1 }
  187.     else { return . }
  188.   }
  189.   if ( $2 == censorlist ) {
  190.     if ($hget(vouchdata,$+(censor.,$getid($1)))) { return $v1 }
  191.     else { return . }
  192.   }
  193.   if ( $2 == voucherlist ) {
  194.     if ($hget(vouchdata,$+(voucher.,$getid($1)))) { return $v1 }
  195.     else { return . }
  196.   }
  197.   if ( $2 == moderatorlist ) {
  198.     if ($hget(vouchdata,$+(moderator.,$getid($1)))) { return $v1 }
  199.     else { return . }
  200.   }
  201.   if ( $2 == administratorlist ) {
  202.     if ($hget(vouchdata,$+(administrator.,$getid($1)))) { return $v1 }
  203.     else { return . }
  204.   }
  205.   if ( $2 == headadministratorlist ) {
  206.     if ($hget(vouchdata,$+(headadministrator.,$getid($1)))) { return $v1 }
  207.     esle { return . }
  208.   }
  209. }
  210.  
  211.  
  212. 16:14:24 <rubara> .promote test
  213. 16:14:24 -BGIHL-BOT- You can't promote (more) Moderators to Administrators!
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement