Jakwob-WG

Exp/Level/Prestige System v1.3.1 (Custom)

Jun 2nd, 2015
386
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 21.49 KB | None | 0 0
  1. /*
  2.  
  3.        $$$$$\           $$\                               $$\      ™
  4.        \__$$ |          $$ |                              $$ |
  5.           $$ | $$$$$$\  $$ |  $$\ $$\  $$\  $$\  $$$$$$\  $$$$$$$\
  6.           $$ | \____$$\ $$ | $$  |$$ | $$ | $$ |$$  __$$\ $$  __$$\
  7.     $$\   $$ | $$$$$$$ |$$$$$$  / $$ | $$ | $$ |$$ /  $$ |$$ |  $$ |
  8.     $$ |  $$ |$$  __$$ |$$  _$$<  $$ | $$ | $$ |$$ |  $$ |$$ |  $$ |
  9.     \$$$$$$  |\$$$$$$$ |$$ | \$$\ \$$$$$\$$$$  |\$$$$$$  |$$$$$$$  |
  10.      \______/  \_______|\__|  \__| \_____\____/  \______/ \_______/
  11.                    _____________________________
  12.                   |      Created By Jakwob™     |
  13.                   |  Do not claim its your own  |
  14.                   |________©2015 Jakwob™________|
  15.                             Version 1.3.1
  16. */
  17.  
  18. #define FILTERSCRIPT
  19.  
  20. #include <a_samp>
  21. #include <zcmd>
  22. #include <YSI\y_ini>
  23. #include <sscanf2>
  24.  
  25. #define MAX_PRESTIGE 1
  26.  
  27. #define UserLevels "Levels/%s.ini"
  28. #define SCM SendClientMessage
  29.  
  30. enum
  31. {
  32.     DIALOG_RANKHELP,
  33.     DIALOG_MYRANK
  34. }
  35.  
  36. enum RankInfo
  37. {
  38.     xp,
  39.     level,
  40.     prestige
  41. }
  42. new rInfo[MAX_PLAYERS][RankInfo];
  43. new PlayerText:RanksTD;
  44. new bool:debugmode;
  45.  
  46. public OnFilterScriptInit()
  47. {
  48.     debugmode = false; // Change to true for permanent debugmode
  49.     return 1;
  50. }
  51.  
  52. public OnFilterScriptExit()
  53. {
  54.     debugmode = false; // Change to true for permanent debugmode
  55.     return 1;
  56. }
  57.  
  58. stock LevelsPath(playerid)
  59. {
  60.     new str[128],name[MAX_PLAYER_NAME];
  61.     GetPlayerName(playerid,name,sizeof(name));
  62.     format(str,sizeof(str),UserLevels,name);
  63.     return str;
  64. }
  65. forward loadaccount_user(playerid, name[], value[]);
  66. public loadaccount_user(playerid, name[], value[])
  67. {
  68.     INI_Int("XP",rInfo[playerid][xp]);
  69.     INI_Int("Level",rInfo[playerid][level]);
  70.     INI_Int("Prestige",rInfo[playerid][prestige]);
  71.     if(debugmode == true)
  72.     {
  73.         printf("[debug] %s file loaded", GetName(playerid));
  74.     }
  75.     return 1;
  76. }
  77.  
  78. public OnPlayerConnect(playerid)
  79. {
  80.     INI_ParseFile(LevelsPath(playerid),"loadaccount_%s",.bExtra = true, .extra = playerid);
  81.    
  82.     new string[125];
  83.     format(string,sizeof string,"~g~XP ~y~%d~n~~g~Level ~y~%d~n~~g~Prestige ~y~%d",rInfo[playerid][xp], rInfo[playerid][level], rInfo[playerid][prestige]);
  84.     PlayerTextDrawSetString(playerid, RanksTD, string);
  85.     RanksTD = CreatePlayerTextDraw(playerid,500.000000, 100.000000, string);
  86.     PlayerTextDrawBackgroundColor(playerid,RanksTD, 255);
  87.     PlayerTextDrawFont(playerid,RanksTD, 3);
  88.     PlayerTextDrawLetterSize(playerid,RanksTD, 0.500000, 1.000000);
  89.     PlayerTextDrawColor(playerid,RanksTD, -1);
  90.     PlayerTextDrawSetOutline(playerid,RanksTD, 1);
  91.     PlayerTextDrawSetProportional(playerid,RanksTD, 1);
  92.     PlayerTextDrawSetSelectable(playerid,RanksTD, 0);
  93.     return 1;
  94. }
  95.  
  96. public OnPlayerSpawn(playerid)
  97. {
  98.     PlayerTextDrawShow(playerid, RanksTD);
  99.     return 1;
  100. }
  101.  
  102. public OnPlayerDisconnect(playerid, reason)
  103. {
  104.     new INI:file = INI_Open(LevelsPath(playerid));
  105.     INI_SetTag(file,"Player Levels");
  106.     INI_WriteInt(file,"XP",rInfo[playerid][xp]);
  107.     INI_WriteInt(file,"Level",rInfo[playerid][level]);
  108.     INI_WriteInt(file,"Prestige",rInfo[playerid][prestige]);
  109.     INI_Close(file);
  110.     if(debugmode == true)
  111.     {
  112.         printf("[debug] %s file saved", GetName(playerid));
  113.     }
  114.    
  115.     PlayerTextDrawHide(playerid, RanksTD);
  116.     PlayerTextDrawDestroy(playerid, RanksTD);
  117.     return 1;
  118. }
  119.  
  120. public OnPlayerDeath(playerid, killerid, reason)
  121. {
  122.     rInfo[killerid][xp] += 1;
  123.     PlayerTextDrawHide(playerid, RanksTD);
  124.     return 1;
  125. }
  126.  
  127. public OnPlayerUpdate(playerid)
  128. {
  129.     LevelUp(playerid);
  130.     return 1;
  131. }
  132.  
  133. CMD:myrank(playerid, params[])
  134. {
  135.     new str[300];
  136.     format(str, sizeof(str), "XP: %d\nLevel: %d\nPrestige: %d\n", rInfo[playerid][xp], rInfo[playerid][level],rInfo[playerid][prestige]);
  137.     ShowPlayerDialog(playerid, DIALOG_MYRANK, DIALOG_STYLE_MSGBOX, "Your Rank", str, "Close", "");
  138.     if(debugmode == true)
  139.     {
  140.         printf("[debug] %s has used /myrank", GetName(playerid));
  141.     }
  142.     return 1;
  143. }
  144.  
  145. CMD:rankhelp(playerid, params[])
  146. {
  147.     new str[300], str1[1000];
  148.     format(str, sizeof(str), "\n{FFFFFF}** {FF9900}XP {FFFFFF}**\n");
  149.     strcat(str1, str);
  150.     format(str, sizeof(str), "\nXP can be gained by many methods.\nKilling Players - 1 XP\n'Example' - 4 XP\n'Example' - 2 XP\n");
  151.     strcat(str1, str);
  152.     format(str, sizeof(str), "\n{FFFFFF}** {FF9900}Leveling up {FFFFFF}**\n");
  153.     strcat(str1, str);
  154.     format(str, sizeof(str), "\nUpon leveling up you will recieve a cash bonus each time you level up.\n");
  155.     strcat(str1, str);
  156.     format(str, sizeof(str), "\n{FFFFFF}** {FF9900}Prestige {FFFFFF}**\n");
  157.     strcat(str1, str);
  158.     format(str, sizeof(str), "\nWhen you reach the maximum level you will Prestige\nYou will recieve a huge cash bonus of $1 million each time you prestige.\n");
  159.     strcat(str1, str);
  160.     ShowPlayerDialog(playerid, DIALOG_RANKHELP, DIALOG_STYLE_MSGBOX, "Rank Help", str1, "Close", "");
  161.     if(debugmode == true)
  162.     {
  163.         printf("[debug] %s has used /rankhelp", GetName(playerid));
  164.     }
  165.     return 1;
  166. }
  167.  
  168. CMD:givexp(playerid, params[])
  169. {
  170.     new amount, ID, str[128];
  171.     if(!IsPlayerAdmin(playerid))return SCM(playerid, -1, "ERROR: You need to be an admin to use this command!");
  172.     if(sscanf(params, "ui", ID, amount)) return SCM(playerid, -1, "USAGE: /givexp <playerid> <1-99>");
  173.     if(amount < 1 || amount > 99) return SCM(playerid, -1, "ERROR: Invalid XP ammount. Number must be between 1 and 99.");
  174.     if(!IsPlayerConnected(ID))return SCM(playerid,-1,"ERROR: Player is not connected.");
  175.     {
  176.         format(str, sizeof(str), "%s Has given you %d XP", GetName(playerid), amount);
  177.         SCM(ID, -1, str);
  178.         format(str, sizeof(str), "You have given you %s %d XP", GetName(ID), amount);
  179.         SCM(playerid, -1, str);
  180.         rInfo[ID][xp] += amount;
  181.         UpdateRankTD(playerid);
  182.         if(debugmode == true)
  183.         {
  184.             printf("[debug] %s has given %s %d xp", GetName(playerid), GetName(ID), amount);
  185.         }
  186.     }
  187.     return 1;
  188. }
  189.  
  190. CMD:givelvl(playerid, params[])
  191. {
  192.     new amount, ID, str[128];
  193.     if(!IsPlayerAdmin(playerid))return SCM(playerid, -1, "ERROR: You need to be an admin to use this command!");
  194.     if(sscanf(params, "ui", ID, amount)) return SCM(playerid, -1, "USAGE: /givelevel <playerid> <1-99>");
  195.     if(amount < 1 || amount > 99) return SCM(playerid, -1, "ERROR: Invalid XP ammount. Number must be between 1 and 99.");
  196.     if(!IsPlayerConnected(ID))return SCM(playerid,-1,"ERROR: Player is not connected.");
  197.     {
  198.         format(str, sizeof(str), "%s Has given you %d levels", GetName(playerid), amount);
  199.         SCM(ID, -1, str);
  200.         format(str, sizeof(str), "You have given you %s %d levels", GetName(ID), amount);
  201.         SCM(playerid, -1, str);
  202.         rInfo[ID][level] += amount;
  203.         UpdateRankTD(playerid);
  204.         if(debugmode == true)
  205.         {
  206.             printf("[debug] %s has given %s %d levels", GetName(playerid), GetName(ID), amount);
  207.         }
  208.     }
  209.     return 1;
  210. }
  211.  
  212. CMD:giveprestige(playerid, params[])
  213. {
  214.     new amount, ID, str[128];
  215.     if(!IsPlayerAdmin(playerid))return SCM(playerid, -1, "ERROR: You need to be an admin to use this command!");
  216.     if(sscanf(params, "ui", ID, amount)) return SCM(playerid, -1, "USAGE: /giveprestige <playerid> <1-99>");
  217.     if(amount < 1 || amount > 99) return SCM(playerid, -1, "ERROR: Invalid XP ammount. Number must be between 1 and 99.");
  218.     if(!IsPlayerConnected(ID))return SCM(playerid,-1,"ERROR: Player is not connected.");
  219.     {
  220.         format(str, sizeof(str), "%s Has given you %d prestige", GetName(playerid), amount);
  221.         SCM(ID, -1, str);
  222.         format(str, sizeof(str), "You have given you %s %d prestiges", GetName(ID), amount);
  223.         SCM(playerid, -1, str);
  224.         rInfo[ID][prestige] += amount;
  225.         UpdateRankTD(playerid);
  226.         if(debugmode == true)
  227.         {
  228.             printf("[debug] %s has given %s %d prestige", GetName(playerid), GetName(ID), amount);
  229.         }
  230.     }
  231.     return 1;
  232. }
  233.  
  234. CMD:resetrank(playerid, params[])
  235. {
  236.     new ID, str[128];
  237.     if(!IsPlayerAdmin(playerid))return SCM(playerid, -1, "ERROR: You need to be an admin to use this command!");
  238.     if(sscanf(params, "u", ID)) return SCM(playerid, -1, "USAGE: /resetrank <playerid>");
  239.     if(!IsPlayerConnected(ID))return SCM(playerid,-1,"ERROR: Player is not connected.");
  240.     {
  241.         format(str, sizeof(str), "%s Has rest your rank", GetName(playerid));
  242.         SCM(ID, -1, str);
  243.         format(str, sizeof(str), "You have rest %s's Rank", GetName(ID));
  244.         SCM(playerid, -1, str);
  245.         rInfo[ID][xp] = 0;
  246.         rInfo[ID][level] = 0;
  247.         rInfo[ID][prestige] = 0;
  248.         UpdateRankTD(playerid);
  249.         if(debugmode == true)
  250.         {
  251.             printf("[debug] %s used /resetrank on %s", GetName(playerid), GetName(ID));
  252.         }
  253.     }
  254.     return 1;
  255. }
  256.  
  257. //Example of usages of xp/levels/prestige
  258. CMD:veh(playerid, params[])
  259. {
  260.     if(rInfo[playerid][prestige] < 1) return SCM(playerid, -1, "You need to be Prestige level 1");
  261.     {
  262.         new Float:x,Float:y,Float:z, Float:a,veh;
  263.         GetPlayerPos(playerid,x,y,z);
  264.         GetPlayerFacingAngle(playerid, a);
  265.         veh = CreateVehicle(402,x,y,z,a,-1,-1,-1);
  266.         PutPlayerInVehicle(playerid,veh,0);
  267.         if(debugmode == true)
  268.         {
  269.             printf("[debug] %s used /veh and spawned vehicle model 402", GetName(playerid));
  270.         }
  271.     }
  272.     return 1;
  273. }
  274.  
  275. CMD:rdm(playerid, params[])
  276. {
  277.     if(!IsPlayerAdmin(playerid))return SCM(playerid, -1, "ERROR: You need to be an admin to use this command!");
  278.     if(debugmode == false)
  279.     {
  280.         SCM(playerid, -1, "[debug] Ranks Debug Mode Activated");
  281.         debugmode = true;
  282.         printf("[debug] %s has activated Ranks Debug Mode", GetName(playerid));
  283.     }
  284.     if(debugmode == true)
  285.     {
  286.         SCM(playerid, -1, "[debug] Ranks Debug Mode Deactivated");
  287.         debugmode = false;
  288.         printf("[debug] %s has deactivated Ranks Debug Mode", GetName(playerid));
  289.     }
  290.     return 1;
  291. }
  292.  
  293. LevelUp(playerid)
  294. {
  295.     if(rInfo[playerid][level] == 0 || 1)
  296.     {
  297.         if(rInfo[playerid][xp] > 100)//Levels
  298.         {
  299.             rInfo[playerid][level] ++;
  300.             rInfo[playerid][xp] = 0;
  301.             GivePlayerMoney(playerid, 50000);
  302.             UpdateRankTD(playerid);
  303.             if(debugmode == true)
  304.             {
  305.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  306.             }
  307.         }
  308.     }
  309.     if(rInfo[playerid][level] == 2 || 3)
  310.     {
  311.         if(rInfo[playerid][xp] > 200)//Levels
  312.         {
  313.             rInfo[playerid][level] ++;
  314.             rInfo[playerid][xp] = 0;
  315.             GivePlayerMoney(playerid, 50000);
  316.             UpdateRankTD(playerid);
  317.             if(debugmode == true)
  318.             {
  319.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  320.             }
  321.         }
  322.     }
  323.     if(rInfo[playerid][level] == 4 || 5)
  324.     {
  325.         if(rInfo[playerid][xp] > 400)//Levels
  326.         {
  327.             rInfo[playerid][level] ++;
  328.             rInfo[playerid][xp] = 0;
  329.             GivePlayerMoney(playerid, 50000);
  330.             UpdateRankTD(playerid);
  331.             if(debugmode == true)
  332.             {
  333.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  334.             }
  335.         }
  336.     }
  337.     if(rInfo[playerid][level] == 6 || 7)
  338.     {
  339.         if(rInfo[playerid][xp] > 700)//Levels
  340.         {
  341.             rInfo[playerid][level] ++;
  342.             rInfo[playerid][xp] = 0;
  343.             GivePlayerMoney(playerid, 50000);
  344.             UpdateRankTD(playerid);
  345.             if(debugmode == true)
  346.             {
  347.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  348.             }
  349.         }
  350.     }
  351.     if(rInfo[playerid][level] == 8 || 9)
  352.     {
  353.         if(rInfo[playerid][xp] > 1400)//Levels
  354.         {
  355.             rInfo[playerid][level] ++;
  356.             rInfo[playerid][xp] = 0;
  357.             GivePlayerMoney(playerid, 50000);
  358.             UpdateRankTD(playerid);
  359.             if(debugmode == true)
  360.             {
  361.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  362.             }
  363.         }
  364.     }
  365.     if(rInfo[playerid][level] == 10 || 11)
  366.     {
  367.         if(rInfo[playerid][xp] > 2000)//Levels
  368.         {
  369.             rInfo[playerid][level] ++;
  370.             rInfo[playerid][xp] = 0;
  371.             GivePlayerMoney(playerid, 50000);
  372.             UpdateRankTD(playerid);
  373.             if(debugmode == true)
  374.             {
  375.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  376.             }
  377.         }
  378.     }
  379.     if(rInfo[playerid][level] == 12 || 13)
  380.     {
  381.         if(rInfo[playerid][xp] > 2450)//Levels
  382.         {
  383.             rInfo[playerid][level] ++;
  384.             rInfo[playerid][xp] = 0;
  385.             GivePlayerMoney(playerid, 50000);
  386.             UpdateRankTD(playerid);
  387.             if(debugmode == true)
  388.             {
  389.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  390.             }
  391.         }
  392.     }
  393.     if(rInfo[playerid][level] == 14 || 15)
  394.     {
  395.         if(rInfo[playerid][xp] > 2875)//Levels
  396.         {
  397.             rInfo[playerid][level] ++;
  398.             rInfo[playerid][xp] = 0;
  399.             GivePlayerMoney(playerid, 50000);
  400.             UpdateRankTD(playerid);
  401.             if(debugmode == true)
  402.             {
  403.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  404.             }
  405.         }
  406.     }
  407.     if(rInfo[playerid][level] == 16 || 17)
  408.     {
  409.         if(rInfo[playerid][xp] > 3260)//Levels
  410.         {
  411.             rInfo[playerid][level] ++;
  412.             rInfo[playerid][xp] = 0;
  413.             GivePlayerMoney(playerid, 50000);
  414.             UpdateRankTD(playerid);
  415.             if(debugmode == true)
  416.             {
  417.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  418.             }
  419.         }
  420.     }
  421.     if(rInfo[playerid][level] == 18 || 19)
  422.     {
  423.         if(rInfo[playerid][xp] > 3568)//Levels
  424.         {
  425.             rInfo[playerid][level] ++;
  426.             rInfo[playerid][xp] = 0;
  427.             GivePlayerMoney(playerid, 50000);
  428.             UpdateRankTD(playerid);
  429.             if(debugmode == true)
  430.             {
  431.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  432.             }
  433.         }
  434.     }
  435.     if(rInfo[playerid][level] == 20 || 21)
  436.     {
  437.         if(rInfo[playerid][xp] > 4900)//Levels
  438.         {
  439.             rInfo[playerid][level] ++;
  440.             rInfo[playerid][xp] = 0;
  441.             GivePlayerMoney(playerid, 50000);
  442.             UpdateRankTD(playerid);
  443.             if(debugmode == true)
  444.             {
  445.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  446.             }
  447.         }
  448.     }
  449.     if(rInfo[playerid][level] == 22 || 23)
  450.     {
  451.         if(rInfo[playerid][xp] > 5340)//Levels
  452.         {
  453.             rInfo[playerid][level] ++;
  454.             rInfo[playerid][xp] = 0;
  455.             GivePlayerMoney(playerid, 50000);
  456.             UpdateRankTD(playerid);
  457.             if(debugmode == true)
  458.             {
  459.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  460.             }
  461.         }
  462.     }
  463.     if(rInfo[playerid][level] == 24 || 25)
  464.     {
  465.         if(rInfo[playerid][xp] > 5760)//Levels
  466.         {
  467.             rInfo[playerid][level] ++;
  468.             rInfo[playerid][xp] = 0;
  469.             GivePlayerMoney(playerid, 50000);
  470.             UpdateRankTD(playerid);
  471.             if(debugmode == true)
  472.             {
  473.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  474.             }
  475.         }
  476.     }
  477.     if(rInfo[playerid][level] == 26 || 27)
  478.     {
  479.         if(rInfo[playerid][xp] > 6250)//Levels
  480.         {
  481.             rInfo[playerid][level] ++;
  482.             rInfo[playerid][xp] = 0;
  483.             GivePlayerMoney(playerid, 50000);
  484.             UpdateRankTD(playerid);
  485.             if(debugmode == true)
  486.             {
  487.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  488.             }
  489.         }
  490.     }
  491.     if(rInfo[playerid][level] == 28 || 29)
  492.     {
  493.         if(rInfo[playerid][xp] > 6670)//Levels
  494.         {
  495.             rInfo[playerid][level] ++;
  496.             rInfo[playerid][xp] = 0;
  497.             GivePlayerMoney(playerid, 50000);
  498.             UpdateRankTD(playerid);
  499.             if(debugmode == true)
  500.             {
  501.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  502.             }
  503.         }
  504.     }
  505.     if(rInfo[playerid][level] == 30 || 31)
  506.     {
  507.         if(rInfo[playerid][xp] > 6950)//Levels
  508.         {
  509.             rInfo[playerid][level] ++;
  510.             rInfo[playerid][xp] = 0;
  511.             GivePlayerMoney(playerid, 50000);
  512.             UpdateRankTD(playerid);
  513.             if(debugmode == true)
  514.             {
  515.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  516.             }
  517.         }
  518.     }
  519.     if(rInfo[playerid][level] == 32 || 33)
  520.     {
  521.         if(rInfo[playerid][xp] > 7340)//Levels
  522.         {
  523.             rInfo[playerid][level] ++;
  524.             rInfo[playerid][xp] = 0;
  525.             GivePlayerMoney(playerid, 50000);
  526.             UpdateRankTD(playerid);
  527.             if(debugmode == true)
  528.             {
  529.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  530.             }
  531.         }
  532.     }
  533.     if(rInfo[playerid][level] == 34 || 35)
  534.     {
  535.         if(rInfo[playerid][xp] > 7777)//Levels
  536.         {
  537.             rInfo[playerid][level] ++;
  538.             rInfo[playerid][xp] = 0;
  539.             GivePlayerMoney(playerid, 50000);
  540.             UpdateRankTD(playerid);
  541.             if(debugmode == true)
  542.             {
  543.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  544.             }
  545.         }
  546.     }
  547.     if(rInfo[playerid][level] == 36 || 37)
  548.     {
  549.         if(rInfo[playerid][xp] > 8000)//Levels
  550.         {
  551.             rInfo[playerid][level] ++;
  552.             rInfo[playerid][xp] = 0;
  553.             GivePlayerMoney(playerid, 50000);
  554.             UpdateRankTD(playerid);
  555.             if(debugmode == true)
  556.             {
  557.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  558.             }
  559.         }
  560.     }
  561.     if(rInfo[playerid][level] == 38 || 39)
  562.     {
  563.         if(rInfo[playerid][xp] > 8360)//Levels
  564.         {
  565.             rInfo[playerid][level] ++;
  566.             rInfo[playerid][xp] = 0;
  567.             GivePlayerMoney(playerid, 50000);
  568.             UpdateRankTD(playerid);
  569.             if(debugmode == true)
  570.             {
  571.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  572.             }
  573.         }
  574.     }
  575.     if(rInfo[playerid][level] == 40 || 41)
  576.     {
  577.         if(rInfo[playerid][xp] > 8749)//Levels
  578.         {
  579.             rInfo[playerid][level] ++;
  580.             rInfo[playerid][xp] = 0;
  581.             GivePlayerMoney(playerid, 50000);
  582.             UpdateRankTD(playerid);
  583.             if(debugmode == true)
  584.             {
  585.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  586.             }
  587.         }
  588.     }
  589.     if(rInfo[playerid][level] == 42 || 43)
  590.     {
  591.         if(rInfo[playerid][xp] > 8998)//Levels
  592.         {
  593.             rInfo[playerid][level] ++;
  594.             rInfo[playerid][xp] = 0;
  595.             GivePlayerMoney(playerid, 50000);
  596.             UpdateRankTD(playerid);
  597.             if(debugmode == true)
  598.             {
  599.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  600.             }
  601.         }
  602.     }
  603.     if(rInfo[playerid][level] == 44 || 45)
  604.     {
  605.         if(rInfo[playerid][xp] > 9287)//Levels
  606.         {
  607.             rInfo[playerid][level] ++;
  608.             rInfo[playerid][xp] = 0;
  609.             GivePlayerMoney(playerid, 50000);
  610.             UpdateRankTD(playerid);
  611.             if(debugmode == true)
  612.             {
  613.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  614.             }
  615.         }
  616.     }
  617.     if(rInfo[playerid][level] == 46 || 47)
  618.     {
  619.         if(rInfo[playerid][xp] > 9520)//Levels
  620.         {
  621.             rInfo[playerid][level] ++;
  622.             rInfo[playerid][xp] = 0;
  623.             GivePlayerMoney(playerid, 50000);
  624.             UpdateRankTD(playerid);
  625.             if(debugmode == true)
  626.             {
  627.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  628.             }
  629.         }
  630.     }
  631.     if(rInfo[playerid][level] == 48 || 49)
  632.     {
  633.         if(rInfo[playerid][xp] > 9846)//Levels
  634.         {
  635.             rInfo[playerid][level] ++;
  636.             rInfo[playerid][xp] = 0;
  637.             GivePlayerMoney(playerid, 50000);
  638.             UpdateRankTD(playerid);
  639.             if(debugmode == true)
  640.             {
  641.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  642.             }
  643.         }
  644.     }
  645.     if(rInfo[playerid][level] == 50 || 51)
  646.     {
  647.         if(rInfo[playerid][xp] > 12064)//Levels
  648.         {
  649.             rInfo[playerid][level] ++;
  650.             rInfo[playerid][xp] = 0;
  651.             GivePlayerMoney(playerid, 50000);
  652.             UpdateRankTD(playerid);
  653.             if(debugmode == true)
  654.             {
  655.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  656.             }
  657.         }
  658.     }
  659.     if(rInfo[playerid][level] == 52 || 53)
  660.     {
  661.         if(rInfo[playerid][xp] > 14857)//Levels
  662.         {
  663.             rInfo[playerid][level] ++;
  664.             rInfo[playerid][xp] = 0;
  665.             GivePlayerMoney(playerid, 50000);
  666.             UpdateRankTD(playerid);
  667.             if(debugmode == true)
  668.             {
  669.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  670.             }
  671.         }
  672.     }
  673.     if(rInfo[playerid][level] == 54 || 55)
  674.     {
  675.         if(rInfo[playerid][xp] > 16642)//Levels
  676.         {
  677.             rInfo[playerid][level] ++;
  678.             rInfo[playerid][xp] = 0;
  679.             GivePlayerMoney(playerid, 50000);
  680.             UpdateRankTD(playerid);
  681.             if(debugmode == true)
  682.             {
  683.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  684.             }
  685.         }
  686.     }
  687.     if(rInfo[playerid][level] == 56 || 57)
  688.     {
  689.         if(rInfo[playerid][xp] > 18465)//Levels
  690.         {
  691.             rInfo[playerid][level] ++;
  692.             rInfo[playerid][xp] = 0;
  693.             GivePlayerMoney(playerid, 50000);
  694.             UpdateRankTD(playerid);
  695.             if(debugmode == true)
  696.             {
  697.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  698.             }
  699.         }
  700.     }
  701.     if(rInfo[playerid][level] == 58)
  702.     {
  703.         if(rInfo[playerid][xp] > 20000)//Levels
  704.         {
  705.             rInfo[playerid][level] ++;
  706.             rInfo[playerid][xp] = 0;
  707.             GivePlayerMoney(playerid, 50000);
  708.             UpdateRankTD(playerid);
  709.             if(debugmode == true)
  710.             {
  711.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  712.             }
  713.         }
  714.     }
  715.     if(rInfo[playerid][level] == 59)
  716.     {
  717.         if(rInfo[playerid][xp] > 30000)//Levels
  718.         {
  719.             rInfo[playerid][level] ++;
  720.             rInfo[playerid][xp] = 0;
  721.             GivePlayerMoney(playerid, 50000);
  722.             UpdateRankTD(playerid);
  723.             if(debugmode == true)
  724.             {
  725.                 printf("[debug] %s has leveled up to %d", GetName(playerid), rInfo[playerid][prestige]);
  726.             }
  727.         }
  728.     }
  729.     if(rInfo[playerid][prestige] == MAX_PRESTIGE) return 0;
  730.     if(rInfo[playerid][level] > 60)//Prestige levels
  731.     {
  732.         rInfo[playerid][prestige] ++;
  733.         rInfo[playerid][xp] = 0;
  734.         rInfo[playerid][level] = 0;
  735.         GivePlayerMoney(playerid, 1000000);
  736.         UpdateRankTD(playerid);
  737.         if(debugmode == true)
  738.         {
  739.             printf("[debug] %s has prestiged up to %d", GetName(playerid), rInfo[playerid][prestige]);
  740.         }
  741.     }
  742.     return 1;
  743. }
  744.  
  745. UpdateRankTD(playerid)
  746. {
  747.     new str[125];
  748.     format(str,sizeof str,"~g~XP ~y~%d~n~~g~Level ~y~%d~n~~g~Prestige ~y~%d",rInfo[playerid][xp], rInfo[playerid][level], rInfo[playerid][prestige]);
  749.     PlayerTextDrawSetString(playerid, RanksTD, str);
  750. }
  751.  
  752. GetName(playerid)
  753. {
  754.     new name[24];
  755.     GetPlayerName(playerid, name, sizeof name);
  756.     return name;
  757. }
Advertisement
Add Comment
Please, Sign In to add comment