Advertisement
Guest User

Untitled

a guest
Feb 23rd, 2020
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.97 KB | None | 0 0
  1. #include <amxmodx>
  2. #include <csx>
  3. #include <fakemeta>
  4. #include <colorchat>
  5.  
  6. #define ForArray(%1,%2) for(new %1 = 0; %1 < sizeof %2; %1++)
  7.  
  8. #define TASK_DISPLAYHUD 1337
  9.  
  10. new const rankName[][] =
  11. {
  12. "Silver I",
  13. "Silver II",
  14. "Silver III",
  15. "Silver IV",
  16. "Silver Elite",
  17. "Silver Elite Master",
  18. "Gold Nova I",
  19. "Gold Nova II",
  20. "Gold Nova III",
  21. "Gold Nova IV",
  22. "Gold Nova Master",
  23. "Master Guardian I",
  24. "Master Guardian II",
  25. "Master Guardian Elite",
  26. "Distinguished Master Guardian",
  27. "Legendary Eagle",
  28. "Legendary Eagle Master",
  29. "Supreme Master First Class",
  30. "The Global Elite"
  31. };
  32.  
  33. new const rankKills[][] =
  34. {
  35. { 0, 29 },
  36. { 30, 59 },
  37. { 60, 119 },
  38. { 120, 209 },
  39. { 210, 324 },
  40. { 325, 499 },
  41. { 500, 729 },
  42. { 730, 999 },
  43. { 1000, 1399 },
  44. { 1400, 1849 },
  45. { 1850, 2299 },
  46. { 2300, 2899 },
  47. { 2900, 3549 },
  48. { 4200, 4999 },
  49. { 5000, 5899 },
  50. { 5900, 6899 },
  51. { 6900, 7999 },
  52. { 8000, 9299 },
  53. { 9300, 12000 }
  54. };
  55.  
  56. new const hudToggleCommands[][] =
  57. {
  58. "/hud"
  59. };
  60.  
  61. new hudObject,
  62. bool:hudEnabled[33];
  63.  
  64. public plugin_init()
  65. {
  66. register_plugin("Info Hud I Rangi CsGo", "1.0", "ProToTyp");
  67.  
  68. registerCommands(hudToggleCommands, sizeof(hudToggleCommands), "toggleHud");
  69.  
  70. hudObject = CreateHudSyncObj();
  71. }
  72.  
  73. public client_putinserver(index)
  74. {
  75. hudEnabled[index] = true;
  76.  
  77. setHudTask(index);
  78. }
  79.  
  80. public client_disconnected(index)
  81. {
  82. remove_task(index + TASK_DISPLAYHUD);
  83. }
  84.  
  85. public displayHud(taskIndex)
  86. {
  87. new index = taskIndex - TASK_DISPLAYHUD;
  88.  
  89. if(!is_user_connected(index) || !hudEnabled[index] || is_user_bot(index))
  90. {
  91. return;
  92. }
  93.  
  94. new target;
  95.  
  96. if(!is_user_alive(index))
  97. {
  98. target = pev(index, pev_iuser2);
  99.  
  100. if(!is_user_alive(target))
  101. {
  102. return;
  103. }
  104. }
  105. else
  106. {
  107. target = index;
  108. }
  109.  
  110. static userName[33],
  111. requiredKills,
  112. userPosition,
  113. userRankIndex,
  114. userStats[8],
  115. blank[8];
  116.  
  117. get_user_name(target, userName, charsmax(userName));
  118.  
  119. userRankIndex = getRankIndex(target);
  120. userPosition = get_user_stats(target, userStats, blank);
  121. requiredKills = (userRankIndex + 1 == sizeof(rankKills) ? rankKills[userRankIndex][1] : rankKills[userRankIndex + 1][0]);
  122.  
  123. set_hudmessage(0, 255, 0, 0.01, 0.17, 0, 6.0, 1.1, 0.1, 0.1);
  124. ShowSyncHudMsg(index, hudObject, "Nick: %s^nRanga: %s^nPostep: %i/%i^nFragi: %i^nRanking: %i/%i^nMonety: %d^nKonto: %s", userName, rankName[userRankIndex], userStats[0], requiredKills, get_user_frags(target), userPosition, get_statsnum(), cod_get_user_coins(target), get_user_flags(target) & ADMIN_LEVEL_H ? "VIP" : (get_user_flags(target) & ADMIN_LEVEL_G ? "Nocny VIP" : "Zwykle"));
  125. }
  126.  
  127. getRankIndex(index)
  128. {
  129. static userStats[8],
  130. blank[8];
  131.  
  132. get_user_stats(index, userStats, blank);
  133.  
  134. if(userStats[0] >= rankKills[sizeof(rankKills) - 1][0])
  135. {
  136. return sizeof(rankKills) - 1;
  137. }
  138.  
  139. ForArray(i, rankKills)
  140. {
  141. if(userStats[0] >= rankKills[i][0])
  142. {
  143. continue;
  144. }
  145.  
  146. return i - 1;
  147. }
  148.  
  149. return -1;
  150. }
  151.  
  152. public toggleHud(index)
  153. {
  154. hudEnabled[index] = !hudEnabled[index]
  155. ColorChat(index, RED, "[HUD]^4 %s Hud.", hudEnabled[index]?"Wlaczyles":"Wylaczyles");
  156.  
  157. if(hudEnabled[index])
  158. {
  159. //wlaczyles
  160. setHudTask(index);
  161.  
  162. return;
  163. }
  164. //wylaczyles
  165. remove_task(index + TASK_DISPLAYHUD);
  166. }
  167.  
  168. setHudTask(index)
  169. {
  170. set_task(1.0, "displayHud", index + TASK_DISPLAYHUD, .flags = "b");
  171. }
  172.  
  173. stock registerCommands(const array[][], arraySize, function[])
  174. {
  175. #if !defined ForRange
  176.  
  177. #define ForRange(%1,%2,%3) for(new %1 = %2; %1 <= %3; %1++)
  178.  
  179. #endif
  180.  
  181. #if AMXX_VERSION_NUM > 183
  182.  
  183. ForRange(i, 0, arraySize - 1)
  184. {
  185. ForRange(j, 0, 1)
  186. {
  187. register_clcmd(fmt("%s %s", !j ? "say" : "say_team", array[i]), function);
  188. }
  189. }
  190.  
  191. #else
  192.  
  193. new newCommand[33];
  194.  
  195. ForRange(i, 0, arraySize - 1)
  196. {
  197. ForRange(j, 0, 1)
  198. {
  199. formatex(newCommand, charsmax(newCommand), "%s %s", !j ? "say" : "say_team", array[i]);
  200. register_clcmd(newCommand, function);
  201. }
  202. }
  203.  
  204. #endif
  205. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement