Guest User

Untitled

a guest
Oct 20th, 2017
628
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.86 KB | None | 0 0
  1. /*
  2. Admin System
  3. by Dowla
  4. Credits: balkan-samp.com
  5.  
  6. */
  7. //INCLUDE
  8.  
  9. #include <a_samp>
  10. #include <zcmd>
  11. #include <sscanf2>
  12. #include <YSI\y_ini>
  13.  
  14. //DEFINE
  15.  
  16. #define PATH "/Korisnici/%s.ini"
  17.  
  18. //Enum
  19.  
  20. enum pInfo
  21. {
  22. pAdminLevel
  23. }
  24.  
  25. //NEW
  26.  
  27. new PlayerInfo[MAX_PLAYERS][pInfo];
  28.  
  29. //PUBLICS
  30.  
  31. forward LoadUser_data(playerid,name[],value[]);
  32. public LoadUser_data(playerid,name[],value[])
  33. {
  34. INI_Int("AdminLevel",PlayerInfo[playerid][pAdminLevel]);
  35. return 1;
  36. }
  37. public OnPlayerConnect(playerid)
  38. {
  39. INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
  40. return 1;
  41. }
  42. public OnPlayerDisconnect(playerid, reason)
  43. {
  44. new INI:File = INI_Open(UserPath(playerid));
  45. INI_WriteInt(File,"AdminLevel",PlayerInfo[playerid][pAdminLevel]);
  46. INI_Close(File);
  47. return 1;
  48. }
  49. //stock
  50.  
  51. stock GetName(playerid)
  52. {
  53. new name[MAX_PLAYER_NAME];
  54. GetPlayerName(playerid, name, sizeof(name));
  55. return name;
  56. }
  57. stock UserPath(playerid)
  58. {
  59. new string[128],playername[MAX_PLAYER_NAME];
  60. GetPlayerName(playerid,playername,sizeof(playername));
  61. format(string,sizeof(string),PATH,playername);
  62. return string;
  63. }
  64.  
  65. //KOMANDE
  66.  
  67. CMD:makeadmin( playerid, params[] )
  68. {
  69. if(IsPlayerAdmin(playerid) || PlayerInfo[playerid][pAdminLevel] > 6)
  70. {
  71. new id, msg1[128], msg2[128], alevel, msg[128], msg0[128];
  72. if(sscanf(params, "ud", id, alevel)) return SendClientMessage(playerid, -1, "{FFFFFF}[SERVER] {FF00DD}Korisite /makeadmin [ID] [Level 1-7]");
  73. if(alevel > 7) return SendClientMessage(playerid, -1, "{FF0000}[SERVER] {FFFFFF}Admin level ne moze biti veci od 7 !");
  74. if(!IsPlayerConnected(id)) return SendClientMessage(playerid, -1, "{FFFFFF}[SERVER] {FF00DD}Taj igrac nije na serveru !");
  75. if(alevel == 0)
  76. {
  77. if(PlayerInfo[id][pAdminLevel] > 0)
  78. {
  79. format(msg,sizeof(msg), "{FF0000}[SERVER] {FFFFFF}Admin %s Vam je skinuo Admina.", GetName(playerid));
  80. SendClientMessage(id, -1, msg);
  81. format(msg0,sizeof(msg0), "{FF0000}[SERVER] {FFFFFF}Skinuli ste igracu %s Admina.", GetName(id));
  82. SendClientMessage(playerid, -1, msg0);
  83. PlayerInfo[id][pAdminLevel] = 0;
  84. }
  85. else return SendClientMessage(playerid, -1, "{FF0000}[SERVER] {FFFFFF}Taj igrac nema Admina ! ");
  86. }
  87. else
  88. {
  89. format(msg1,sizeof(msg1), "{FF0000}[SERVER] {FFFFFF}Admin %s Vam je dao Admin Level %d.", GetName(playerid), alevel);
  90. SendClientMessage(id, -1, msg1);
  91. format(msg2,sizeof(msg2), "{FF0000}[SERVER] {FFFFFF}Dali ste igracu %s Admin Level %d.", GetName(id), alevel);
  92. SendClientMessage(playerid, -1, msg2);
  93. PlayerInfo[id][pAdminLevel] = alevel;
  94. }
  95. }
  96. else return SendClientMessage(playerid, -1, "{FF0000}[SERVER] {FFFFFF}Niste ovlasceni !");
  97. return 1;
  98. }
  99. ////////////////////////////////////////////////////////////////////////////////
Advertisement
Add Comment
Please, Sign In to add comment