Advertisement
zreikmahmoud98

admin

Jul 17th, 2014
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 22.68 KB | None | 0 0
  1. #include <a_samp>
  2. #include <dini>
  3. #include <dutils>
  4. #include <sscanf>
  5. #pragma unused ret_memcpy
  6.  
  7. #define FILTERSCRIPT
  8. #if defined FILTERSCRIPT
  9. #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
  10. #define COLOR_GREY 0xAFAFAFAA
  11. #define COLOR_ACTIVEBORDER 0xB4B4B4FF
  12. #define COLOR_ACTIVECAPTION 0x99B4D1FF
  13. #define COLOR_ACTIVECAPTIONTEXT 0x000000FF
  14. #define COLOR_ALICEBLUE 0xF0F8FFFF
  15. #define COLOR_ANTIQUEWHITE 0xFAEBD7FF
  16. #define COLOR_APPWORKSPACE 0xABABABFF
  17. #define COLOR_AQUA 0x00FFFFFF
  18. #define COLOR_AQUAMARINE 0x7FFFD4FF
  19. #define COLOR_AZURE 0xF0FFFFFF
  20. #define COLOR_BEIGE 0xF5F5DCFF
  21. #define COLOR_BISQUE 0xFFE4C4FF
  22. #define COLOR_BLACK 0x000000FF
  23. #define COLOR_BLANCHEDALMOND 0xFFEBCDFF
  24. #define COLOR_BLUE 0x0000FFFF
  25. #define COLOR_BLUEVIOLET 0x8A2BE2FF
  26. #define COLOR_BROWN 0xA52A2AFF
  27. #define COLOR_BURLYWOOD 0xDEB887FF
  28. #define COLOR_BUTTONFACE 0xF0F0F0FF
  29. #define COLOR_BUTTONHIGHLIGHT 0xFFFFFFFF
  30. #define COLOR_BUTTONSHADOW 0xA0A0A0FF
  31. #define COLOR_CADETBLUE 0x5F9EA0FF
  32. #define COLOR_CHARTREUSE 0x7FFF00FF
  33. #define COLOR_CHOCOLATE 0xD2691EFF
  34. #define COLOR_CONTROL 0xF0F0F0FF
  35. #define COLOR_CONTROLDARK 0xA0A0A0FF
  36. #define COLOR_CONTROLDARKDARK 0x696969FF
  37. #define COLOR_CONTROLLIGHT 0xE3E3E3FF
  38. #define COLOR_CONTROLLIGHTLIGHT 0xFFFFFFFF
  39. #define COLOR_CONTROLTEXT 0x000000FF
  40. #define COLOR_CORAL 0xFF7F50FF
  41. #define COLOR_CORNFLOWERBLUE 0x6495EDFF
  42. #define COLOR_CORNSILK 0xFFF8DCFF
  43. #define COLOR_CRIMSON 0xDC143CFF
  44. #define COLOR_CYAN 0x00FFFFFF
  45. #define COLOR_DARKBLUE 0x00008BFF
  46. #define COLOR_DARKCYAN 0x008B8BFF
  47. #define COLOR_DARKGOLDENROD 0xB8860BFF
  48. #define COLOR_DARKGRAY 0xA9A9A9FF
  49. #define COLOR_DARKGREEN 0x006400FF
  50. #define COLOR_DARKKHAKI 0xBDB76BFF
  51. #define COLOR_DARKMAGENTA 0x8B008BFF
  52. #define COLOR_DARKOLIVEGREEN 0x556B2FFF
  53. #define COLOR_DARKORANGE 0xFF8C00FF
  54. #define COLOR_DARKORCHID 0x9932CCFF
  55. #define COLOR_DARKRED 0x8B0000FF
  56. #define COLOR_DARKSALMON 0xE9967AFF
  57. #define COLOR_DARKSEAGREEN 0x8FBC8BFF
  58. #define COLOR_DARKSLATEBLUE 0x483D8BFF
  59. #define COLOR_DARKSLATEGRAY 0x2F4F4FFF
  60. #define COLOR_DARKTURQUOISE 0x00CED1FF
  61. #define COLOR_DARKVIOLET 0x9400D3FF
  62. #define COLOR_DEEPPINK 0xFF1493FF
  63. #define COLOR_DEEPSKYBLUE 0x00BFFFFF
  64. #define COLOR_DESKTOP 0x000000FF
  65. #define COLOR_DIMGRAY 0x696969FF
  66. #define COLOR_DODGERBLUE 0x1E90FFFF
  67. #define COLOR_FIREBRICK 0xB22222FF
  68. #define COLOR_FLORALWHITE 0xFFFAF0FF
  69. #define COLOR_FORESTGREEN 0x228B22FF
  70. #define COLOR_FUCHSIA 0xFF00FFFF
  71. #define COLOR_GAINSBORO 0xDCDCDCFF
  72. #define COLOR_GHOSTWHITE 0xF8F8FFFF
  73. #define COLOR_GOLD 0xFFD700FF
  74. #define COLOR_GOLDENROD 0xDAA520FF
  75. #define COLOR_GRADIENTACTIVECAPTION 0xB9D1EAFF
  76. #define COLOR_GRADIENTINACTIVECAPTION 0xD7E4F2FF
  77. #define COLOR_GRAY 0x808080FF
  78. #define COLOR_GRAYTEXT 0x808080FF
  79. #define COLOR_GREEN 0x008000FF
  80. #define COLOR_GREENYELLOW 0xADFF2FFF
  81. #define COLOR_HIGHLIGHT 0x3399FFFF
  82. #define COLOR_HIGHLIGHTTEXT 0xFFFFFFFF
  83. #define COLOR_HONEYDEW 0xF0FFF0FF
  84. #define COLOR_HOTPINK 0xFF69B4FF
  85. #define COLOR_HOTTRACK 0x0066CCFF
  86. #define COLOR_INACTIVEBORDER 0xF4F7FCFF
  87. #define COLOR_INACTIVECAPTION 0xBFCDDBFF
  88. #define COLOR_INACTIVECAPTIONTEXT 0x434E54FF
  89. #define COLOR_INDIANRED 0xCD5C5CFF
  90. #define COLOR_INDIGO 0x4B0082FF
  91. #define COLOR_INFO 0xFFFFE1FF
  92. #define COLOR_INFOTEXT 0x000000FF
  93. #define COLOR_IVORY 0xFFFFF0FF
  94. #define COLOR_KHAKI 0xF0E68CFF
  95. #define COLOR_LAVENDER 0xE6E6FAFF
  96. #define COLOR_LAVENDERBLUSH 0xFFF0F5FF
  97. #define COLOR_LAWNGREEN 0x7CFC00FF
  98. #define COLOR_LEMONCHIFFON 0xFFFACDFF
  99. #define COLOR_LIGHTBLUE 0xADD8E6FF
  100. #define COLOR_LIGHTCORAL 0xF08080FF
  101. #define COLOR_LIGHTCYAN 0xE0FFFFFF
  102. #define COLOR_LIGHTGOLDENRODYELLOW 0xFAFAD2FF
  103. #define COLOR_LIGHTGRAY 0xD3D3D3FF
  104. #define COLOR_LIGHTGREEN 0x90EE90FF
  105. #define COLOR_LIGHTPINK 0xFFB6C1FF
  106. #define COLOR_LIGHTSALMON 0xFFA07AFF
  107. #define COLOR_LIGHTSEAGREEN 0x20B2AAFF
  108. #define COLOR_LIGHTSKYBLUE 0x87CEFAFF
  109. #define COLOR_LIGHTSLATEGRAY 0x778899FF
  110. #define COLOR_LIGHTSTEELBLUE 0xB0C4DEFF
  111. #define COLOR_LIGHTYELLOW 0xFFFFE0FF
  112. #define COLOR_LIME 0x00FF00FF
  113. #define COLOR_LIMEGREEN 0x32CD32FF
  114. #define COLOR_LINEN 0xFAF0E6FF
  115. #define COLOR_MAGENTA 0xFF00FFFF
  116. #define COLOR_MAROON 0x800000FF
  117. #define COLOR_MEDIUMAQUAMARINE 0x66CDAAFF
  118. #define COLOR_MEDIUMBLUE 0x0000CDFF
  119. #define COLOR_MEDIUMORCHID 0xBA55D3FF
  120. #define COLOR_MEDIUMPURPLE 0x9370DBFF
  121. #define COLOR_MEDIUMSEAGREEN 0x3CB371FF
  122. #define COLOR_MEDIUMSLATEBLUE 0x7B68EEFF
  123. #define COLOR_MEDIUMSPRINGGREEN 0x00FA9AFF
  124. #define COLOR_MEDIUMTURQUOISE 0x48D1CCFF
  125. #define COLOR_MEDIUMVIOLETRED 0xC71585FF
  126. #define COLOR_MENU 0xF0F0F0FF
  127. #define COLOR_MENUBAR 0xF0F0F0FF
  128. #define COLOR_MENUHIGHLIGHT 0x3399FFFF
  129. #define COLOR_MENUTEXT 0x000000FF
  130. #define COLOR_MIDNIGHTBLUE 0x191970FF
  131. #define COLOR_MINTCREAM 0xF5FFFAFF
  132. #define COLOR_MISTYROSE 0xFFE4E1FF
  133. #define COLOR_MOCCASIN 0xFFE4B5FF
  134. #define COLOR_NAVAJOWHITE 0xFFDEADFF
  135. #define COLOR_NAVY 0x000080FF
  136. #define COLOR_OLDLACE 0xFDF5E6FF
  137. #define COLOR_OLIVE 0x808000FF
  138. #define COLOR_OLIVEDRAB 0x6B8E23FF
  139. #define COLOR_ORANGE 0xFFA500FF
  140. #define COLOR_ORANGERED 0xFF4500FF
  141. #define COLOR_ORCHID 0xDA70D6FF
  142. #define COLOR_PALEGOLDENROD 0xEEE8AAFF
  143. #define COLOR_PALEGREEN 0x98FB98FF
  144. #define COLOR_PALETURQUOISE 0xAFEEEEFF
  145. #define COLOR_PALEVIOLETRED 0xDB7093FF
  146. #define COLOR_PAPAYAWHIP 0xFFEFD5FF
  147. #define COLOR_PEACHPUFF 0xFFDAB9FF
  148. #define COLOR_PERU 0xCD853FFF
  149. #define COLOR_PINK 0xFFC0CBFF
  150. #define COLOR_PLUM 0xDDA0DDFF
  151. #define COLOR_POWDERBLUE 0xB0E0E6FF
  152. #define COLOR_PURPLE 0x800080FF
  153. #define COLOR_RED 0xFF0000FF
  154. #define COLOR_YELLOW 0xFFFF00FF
  155.  
  156. #define PlayerFile "Admin/Users/%s.ini"
  157. #define CommandFile "Admin/Settings/Commands.ini"
  158.  
  159. #endif
  160.  
  161. enum PLAYER_MAIN {
  162.         PLAYER_NAME[MAX_PLAYER_NAME],
  163.         PLAYER_IP[16],
  164.         PLAYER_REGGED,
  165.         PLAYER_PASS,
  166.         PLAYER_LEVEL,
  167.         PLAYER_MONEY,
  168. }
  169. new gPlayerInfo[MAX_PLAYERS][PLAYER_MAIN];
  170. new gPlayerLogged[MAX_PLAYERS];
  171. new pName[MAX_PLAYER_NAME];
  172.  
  173. enum COMMANDS_MAIN {
  174.     KICK,
  175.     BAN,
  176.     KILL,
  177.     ANN,
  178.     AGIVEARMOUR,
  179.     SETVH,
  180.     EXPLODE,
  181.     FLIP,
  182.     GOTO,
  183.     GET,
  184.     GIVEARMOUR,
  185.     GIVEHEALTH,
  186.     GIVEWEAPON,
  187.     GOD,
  188.     AHEAL,
  189.     IMITATE,
  190.     GETIP,
  191.     MAXAMMO,
  192.     MAXPING,
  193.     MAKEADMIN,
  194.     SETWANTED,
  195.     TBAN,
  196.     SETTIME,
  197.     SETWEATHER
  198. }
  199. new gCommands[COMMANDS_MAIN];
  200.  
  201. public OnFilterScriptInit()
  202. {
  203.     print("\n************************************");
  204.     print("*                                  *");
  205.     print("* Admin Filterscript by Da_Light   *");
  206.     print("*                                  *");
  207.     print("************************************\n");
  208.  
  209.     // Level 0 = Noob
  210.     // Level 1 = Moderator
  211.     // Level 2 = Administrator
  212.     // Level 3 = Head Administrator
  213.     // Level 4 = Management
  214.     // Level 5 = Server Owner
  215.  
  216.     if(!fexist(CommandFile))
  217.     {
  218.         dini_Create(CommandFile);
  219.         dini_IntSet(CommandFile, "Kick", 1);
  220.         dini_IntSet(CommandFile, "Ban", 2);
  221.         dini_IntSet(CommandFile, "Kill", 1);
  222.         dini_IntSet(CommandFile, "Ann", 2);
  223.         dini_IntSet(CommandFile, "Agivearmour", 4);
  224.         dini_IntSet(CommandFile, "Setvh", 3);
  225.         dini_IntSet(CommandFile, "Explode", 1);
  226.         dini_IntSet(CommandFile, "Flip", 1);
  227.         dini_IntSet(CommandFile, "Goto", 3);
  228.         dini_IntSet(CommandFile, "Get", 3);
  229.         dini_IntSet(CommandFile, "Givearmour", 4);
  230.         dini_IntSet(CommandFile, "Givehealth", 4);
  231.         dini_IntSet(CommandFile, "Giveweapon", 4);
  232.         dini_IntSet(CommandFile, "God", 5);
  233.         dini_IntSet(CommandFile, "Aheal", 4);
  234.         dini_IntSet(CommandFile, "Imitate", 3);
  235.         dini_IntSet(CommandFile, "Getip", 1);
  236.         dini_IntSet(CommandFile, "Maxammo", 2);
  237.         dini_IntSet(CommandFile, "Maxping", 2);
  238.         dini_IntSet(CommandFile, "Makeadmin", 5);
  239.         dini_IntSet(CommandFile, "Setwanted", 4);
  240.         dini_IntSet(CommandFile, "Tban", 2);
  241.         dini_IntSet(CommandFile, "Settime", 2);
  242.         dini_IntSet(CommandFile, "Setweather", 2);
  243.     }
  244.  
  245.     gCommands[KICK] = dini_Int(CommandFile, "Kick");
  246.     gCommands[BAN] = dini_Int(CommandFile, "Ban");
  247.     gCommands[KILL] = dini_Int(CommandFile, "Kill");
  248.     gCommands[ANN] = dini_Int(CommandFile, "Ann");
  249.     gCommands[AGIVEARMOUR] = dini_Int(CommandFile, "Agivearmour");
  250.     gCommands[SETVH] = dini_Int(CommandFile, "Setvh");
  251.     gCommands[EXPLODE] = dini_Int(CommandFile, "Explode");
  252.     gCommands[FLIP] = dini_Int(CommandFile, "Flip");
  253.     gCommands[GOTO] = dini_Int(CommandFile, "Goto");
  254.     gCommands[GET] = dini_Int(CommandFile, "Get");
  255.     gCommands[GIVEARMOUR] = dini_Int(CommandFile, "Givearmour");
  256.     gCommands[GIVEHEALTH] = dini_Int(CommandFile, "Givehealth");
  257.     gCommands[GIVEWEAPON] = dini_Int(CommandFile, "Giveweapon");
  258.     gCommands[GOD] = dini_Int(CommandFile, "God");
  259.     gCommands[AHEAL] = dini_Int(CommandFile, "Aheal");
  260.     gCommands[IMITATE] = dini_Int(CommandFile, "Imitate");
  261.     gCommands[GETIP] = dini_Int(CommandFile, "Getip");
  262.     gCommands[MAXAMMO] = dini_Int(CommandFile, "Maxammo");
  263.     gCommands[MAXPING] = dini_Int(CommandFile, "Maxping");
  264.     gCommands[MAKEADMIN] = dini_Int(CommandFile, "Makeadmin");
  265.     gCommands[SETWANTED] = dini_Int(CommandFile, "Setwanted");
  266.     gCommands[TBAN] = dini_Int(CommandFile, "Tban");
  267.     gCommands[SETTIME] = dini_Int(CommandFile, "Settime");
  268.     gCommands[SETWEATHER] = dini_Int(CommandFile, "Setweather");
  269.     return 1;
  270. }
  271.  
  272. public OnPlayerConnect(playerid)
  273. {
  274.     new file[100], name[MAX_PLAYER_NAME];
  275.     GetPlayerName(playerid, name, sizeof(name));
  276.     format(file, sizeof(file), PlayerFile, name);
  277.     if(!fexist(file))
  278.     {
  279.         ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, "Register", "{FF0000}You're name isn't found to be registered in our database. \n{00FFFF}Please enter a new password to register.", "Register", "Exit");
  280.     }
  281.     else if(fexist(file))
  282.     {
  283.         ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PASSWORD, "Login", "{00FF00}You're name is found to be registered in our database. \n{00FFFF}Please enter your password to login.", "Login", "Exit");
  284.     }
  285.     return 1;
  286. }
  287.  
  288. public OnPlayerDisconnect(playerid, reason)
  289. {
  290.     new file[100];
  291.     format(file, sizeof(file), PlayerFile, gPlayerInfo[playerid][PLAYER_NAME]);
  292.     dini_Set(file, "Name", gPlayerInfo[playerid][PLAYER_NAME]);
  293.     dini_Set(file, "Ip", gPlayerInfo[playerid][PLAYER_IP]);
  294.     dini_IntSet(file, "Registered", gPlayerInfo[playerid][PLAYER_REGGED]);
  295.     dini_IntSet(file, "Password", gPlayerInfo[playerid][PLAYER_PASS]);
  296.     dini_IntSet(file, "Level", gPlayerInfo[playerid][PLAYER_LEVEL]);
  297.     dini_IntSet(file, "Money", GetPlayerMoney(playerid));
  298.     gPlayerLogged[playerid] = 0;
  299.     return 1;
  300. }
  301.  
  302. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  303. {
  304.     if(dialogid == 1)
  305.     {
  306.         if(response)
  307.         {
  308.             new file[100];
  309.             new name[MAX_PLAYER_NAME];
  310.             new ip[30];
  311.             new string[128];
  312.             GetPlayerName(playerid, name, sizeof(name));
  313.             GetPlayerIp(playerid, ip, sizeof(ip));
  314.             format(file, sizeof(file), PlayerFile, name);
  315.             dini_Create(file);
  316.             dini_Set(file, "Name", name);
  317.             dini_Set(file, "Ip", ip);
  318.             dini_IntSet(file, "Registered", 1);
  319.             dini_IntSet(file, "Password", num_hash(inputtext));
  320.             dini_IntSet(file, "Level", 0);
  321.             dini_IntSet(file, "Money", 50);
  322.             format(string, sizeof(string), ">> Success: {FFFFFF}You succesfully registered. Name: {FF0000}%s / Password: {FFFF00}%s", name, inputtext);
  323.             SendClientMessage(playerid, COLOR_GREEN, string);
  324.             strcat(gPlayerInfo[playerid][PLAYER_NAME], dini_Get(file, "Name"));
  325.             strcat(gPlayerInfo[playerid][PLAYER_IP], dini_Get(file, "Ip"));
  326.             gPlayerInfo[playerid][PLAYER_PASS] = dini_Int(file, "Password");
  327.             gPlayerInfo[playerid][PLAYER_LEVEL] = dini_Int(file, "Level");
  328.             GivePlayerMoney(playerid, dini_Int(file, "Money"));
  329.             gPlayerLogged[playerid] = 1;
  330.         }
  331.         else if(!response)
  332.         {
  333.             SendClientMessage(playerid, -1, "~r~>> Error: ~w~You need to register in order to play!");
  334.             PlayerPlaySound(playerid, 1150, 0.0, 0.0, 10.0);
  335.             Kick(playerid);
  336.         }
  337.     }
  338.  
  339.     if(dialogid == 2)
  340.     {
  341.         if(response)
  342.         {
  343.             if(strlen(inputtext))
  344.             {
  345.                 new file[100], name[MAX_PLAYER_NAME], string[128];
  346.                 GetPlayerName(playerid, name, sizeof(name));
  347.                 format(file, sizeof(file), PlayerFile, name);
  348.                 if(num_hash(inputtext) == dini_Int(file, "Password"))
  349.                 {
  350.                     strcat(gPlayerInfo[playerid][PLAYER_NAME], dini_Get(file, "Name"));
  351.                     strcat(gPlayerInfo[playerid][PLAYER_IP], dini_Get(file, "Ip"));
  352.                     gPlayerInfo[playerid][PLAYER_PASS] = dini_Int(file, "Password");
  353.                     gPlayerInfo[playerid][PLAYER_LEVEL] = dini_Int(file, "Level");
  354.                     GivePlayerMoney(playerid, dini_Int(file, "Money"));
  355.                     gPlayerLogged[playerid] = 1;
  356.                     format(string, sizeof(string), "~g~>> Success: ~w~Welcome back, %s", name);
  357.                     SendClientMessage(playerid, -1, string);
  358.                 }
  359.                 else if(num_hash(inputtext) != dini_Int(file, "Password"))
  360.                 {
  361.                     SendClientMessage(playerid, -1, "~r~>> Error: ~w~Wrong password!");
  362.                     PlayerPlaySound(playerid, 1150, 0.0, 0.0, 10.0);
  363.                     ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PASSWORD, "Login", "{00FF00}You're name is found to be registered in our database. \n{00FFFF}Please enter your password to login.", "Login", "Exit");
  364.                 }
  365.             }
  366.             else if(!strlen(inputtext))
  367.             {
  368.                 SendClientMessage(playerid, COLOR_RED, "~r~>> Error: ~w~You must enter your password!");
  369.                 PlayerPlaySound(playerid, 1150, 0.0, 0.0, 10.0);
  370.                 ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PASSWORD, "Login", "{00FF00}You're name is found to be registered in our database. \n{00FFFF}Please enter your password to login.", "Login", "Exit");
  371.             }
  372.         }
  373.         else if(!response)
  374.         {
  375.             SendClientMessage(playerid, COLOR_RED, "~r~>> Error: ~w~You need to logon in order to play!");
  376.             PlayerPlaySound(playerid, 1150, 0.0, 0.0, 10.0);
  377.             Kick(playerid);
  378.         }
  379.     }
  380.     return 1;
  381. }
  382.  
  383. public OnPlayerCommandText(playerid, cmdtext[])
  384. {
  385.     dcmd(kick, 4, cmdtext);
  386.     dcmd(ban, 3, cmdtext);
  387.     dcmd(kill, 4, cmdtext);
  388.     dcmd(ann, 3, cmdtext);
  389.     return 0;
  390. }
  391.  
  392. dcmd_kick(playerid, params[])
  393. {
  394.     if(gPlayerInfo[playerid][PLAYER_LEVEL] < gCommands[KICK])
  395.     {
  396.         new string[128];
  397.         format(string, sizeof(string), ">> Error: {FFFFFF}You are not authorized to do that!", gCommands[KICK]);
  398.         SendClientMessage(playerid, COLOR_RED, string);
  399.     }
  400.     else
  401.     {
  402.         new tmp[256], tmp2[256], index, id;
  403.         tmp = strtok(params, index);
  404.         tmp2 = strtok(params, index);
  405.  
  406.         if(!strlen(tmp))
  407.         {
  408.             SendClientMessage(playerid, COLOR_ORANGE, ">> Kick: {FFFFFF}/kick [ID] [Reason]");
  409.         }
  410.         else if(!strlen(tmp2))
  411.         {
  412.             SendClientMessage(playerid, COLOR_ORANGE, ">> Kick: {FFFFFF}/kick [ID] [Reason]");
  413.         }
  414.         else
  415.         {
  416.             id = strval(tmp);
  417.             if(!IsPlayerConnected(id))
  418.             {
  419.                 SendClientMessage(playerid, COLOR_RED, ">> Error: {FFFFFF}The player is not connected.");
  420.             }
  421.             else if(id == playerid)
  422.             {
  423.                 SendClientMessage(playerid, COLOR_RED, ">> Error: {FFFFFF}You can't kick yourself.");
  424.             }
  425.             else if(gPlayerInfo[id][PLAYER_LEVEL] > gPlayerInfo[playerid][PLAYER_LEVEL])
  426.             {
  427.                 SendClientMessage(playerid, COLOR_RED, ">> Error: {FFFFFF}You are not authorized to kick an admin with a higher level than you!");
  428.             }
  429.             else
  430.             {
  431.                 new string[256], name[MAX_PLAYER_NAME];
  432.                 GetPlayerName(id, name, sizeof(name));
  433.                 GetPlayerName(playerid, pName, sizeof(pName));
  434.                 if(id >= 0 && id <= 9)
  435.                 {
  436.                     GetPlayerName(playerid, pName, sizeof(pName));
  437.                     format(string, sizeof(string), ">> Server: You have been kicked by %s. (Reason: %s.)", pName, params[2]);
  438.                     SendClientMessage(id, COLOR_RED, string);
  439.                     Kick(id);
  440.                     format(string, sizeof(string), ">> Server: %s has kicked %s. (Reason: %s.)", pName, name, params[2]);
  441.                     SendClientMessageToAll(COLOR_RED, string);
  442.                 }
  443.                 else if(id >= 10 && id <= 99)
  444.                 {
  445.                     GetPlayerName(playerid, pName, sizeof(pName));
  446.                     format(string, sizeof(string), ">> Server: You have been kicked by %s. (Reason: %s.)", pName, params[3]);
  447.                     SendClientMessage(id, COLOR_RED, string);
  448.                     Kick(id);
  449.                     format(string, sizeof(string), ">> Server: %s has kicked %s. (Reason: %s.)", pName, name, params[3]);
  450.                     SendClientMessageToAll(COLOR_RED, string);
  451.                 }
  452.             }
  453.         }
  454.     }
  455.     return 1;
  456. }
  457.  
  458. dcmd_ban(playerid, params[])
  459. {
  460.     if(gPlayerInfo[playerid][PLAYER_LEVEL] < gCommands[BAN])
  461.     {
  462.         new string[128];
  463.         format(string, sizeof(string), ">> Error: {FFFFFF}You are not authorized to do that!", gCommands[BAN]);
  464.         SendClientMessage(playerid, COLOR_RED, string);
  465.     }
  466.     else
  467.     {
  468.         new tmp[256], tmp2[256], index, id;
  469.         tmp = strtok(params, index);
  470.         tmp2 = strtok(params, index);
  471.  
  472.         if(!strlen(tmp))
  473.         {
  474.             SendClientMessage(playerid, COLOR_ORANGE, ">> Ban: {FFFFFF}/ban [ID] [Reason]");
  475.         }
  476.         else if(!strlen(tmp2))
  477.         {
  478.             SendClientMessage(playerid, COLOR_ORANGE, ">> Ban: {FFFFFF}/ban [ID] [Reason]");
  479.         }
  480.         else
  481.         {
  482.             id = strval(tmp);
  483.             if(!IsPlayerConnected(id))
  484.             {
  485.                 SendClientMessage(playerid, COLOR_RED, ">> Error: {FFFFFF}The player is not connected.");
  486.             }
  487.             else if(id == playerid)
  488.             {
  489.                 SendClientMessage(playerid, COLOR_RED, ">> Error: {FFFFFF}You can't ban yourself.");
  490.             }
  491.             else if(gPlayerInfo[id][PLAYER_LEVEL] > gPlayerInfo[playerid][PLAYER_LEVEL])
  492.             {
  493.                 SendClientMessage(playerid, COLOR_RED, ">> Error: {FFFFFF}You are not authorized to ban an admin with a higher level than you!");
  494.             }
  495.             else
  496.             {
  497.                 new string[256], name[MAX_PLAYER_NAME];
  498.                 GetPlayerName(id, name, sizeof(name));
  499.                 GetPlayerName(playerid, pName, sizeof(pName));
  500.                 if(id >= 0 && id <= 9)
  501.                 {
  502.                     GetPlayerName(playerid, pName, sizeof(pName));
  503.                     format(string, sizeof(string), ">> Server: You have been banned by %s. (Reason: %s.)", pName, params[2]);
  504.                     SendClientMessage(id, COLOR_RED, string);
  505.                     BanEx(id, params[2]);
  506.                     format(string, sizeof(string), ">> Server: %s has banned %s. (Reason: %s.)", pName, name, params[2]);
  507.                     SendClientMessageToAll(COLOR_RED, string);
  508.                 }
  509.                 else if(id >= 10 && id <= 99)
  510.                 {
  511.                     GetPlayerName(playerid, pName, sizeof(pName));
  512.                     format(string, sizeof(string), ">> Server: You have been banned by %s. (Reason: %s.)", pName, params[3]);
  513.                     SendClientMessage(id, COLOR_RED, string);
  514.                     BanEx(id, params[3]);
  515.                     format(string, sizeof(string), ">> Server: %s has banned %s. (Reason: %s.)", pName, name, params[3]);
  516.                     SendClientMessageToAll(COLOR_RED, string);
  517.                 }
  518.             }
  519.         }
  520.     }
  521.     return 1;
  522. }
  523.  
  524. dcmd_kill(playerid, params[])
  525. {
  526.     if(gPlayerInfo[playerid][PLAYER_LEVEL] < gCommands[KILL])
  527.     {
  528.         new string[128];
  529.         format(string, sizeof(string), ">> Error: {FFFFFF}You are not authorized to do that!", gCommands[KILL]);
  530.         SendClientMessage(playerid, COLOR_RED, string);
  531.     }
  532.     else
  533.     {
  534.         new tmp[256], tmp2[256], index, id;
  535.         tmp = strtok(params, index);
  536.         tmp2 = strtok(params, index);
  537.  
  538.         if(!strlen(tmp))
  539.         {
  540.             SendClientMessage(playerid, COLOR_ORANGE, ">> Kill: {FFFFFF}/kick [ID]");
  541.         }
  542.         else if(!strlen(tmp2))
  543.         {
  544.             SendClientMessage(playerid, COLOR_ORANGE, ">> Kill: {FFFFFF}/kick [ID]");
  545.         }
  546.         else
  547.         {
  548.             id = strval(tmp);
  549.             if(!IsPlayerConnected(id))
  550.             {
  551.                 SendClientMessage(playerid, COLOR_RED, ">> Error: {FFFFFF}The player is not connected.");
  552.             }
  553.             else if(gPlayerInfo[id][PLAYER_LEVEL] > gPlayerInfo[playerid][PLAYER_LEVEL])
  554.             {
  555.                 SendClientMessage(playerid, COLOR_RED, ">> Error: {FFFFFF}You are not authorized to kill an admin with a higher level than you!");
  556.             }
  557.             else
  558.             {
  559.                 new string[256], name[MAX_PLAYER_NAME];
  560.                 GetPlayerName(id, name, sizeof(name));
  561.                 GetPlayerName(playerid, pName, sizeof(pName));
  562.                 if(id >= 0 && id <= 9)
  563.                 {
  564.                     GetPlayerName(playerid, pName, sizeof(pName));
  565.                     format(string, sizeof(string), ">> Server: You have been admin-killed by %s", pName);
  566.                     SendClientMessage(id, COLOR_RED, string);
  567.                     SetPlayerHealth(playerid,0);
  568.                     format(string, sizeof(string), ">> Server: %s has admin-killed %s", pName, name);
  569.                     SendClientMessageToAll(COLOR_RED, string);
  570.                 }
  571.                 else if(id >= 10 && id <= 99)
  572.                 {
  573.                     GetPlayerName(playerid, pName, sizeof(pName));
  574.                     format(string, sizeof(string), ">> Server: You have been admin-killed by %s", pName);
  575.                     SendClientMessage(id, COLOR_RED, string);
  576.                     SetPlayerHealth(playerid,0);
  577.                     format(string, sizeof(string), ">> Server: %s has admin-killed %s", pName, name);
  578.                     SendClientMessageToAll(COLOR_RED, string);
  579.                 }
  580.             }
  581.         }
  582.     }
  583.     return 1;
  584. }
  585.  
  586. dcmd_ann(playerid, params[])
  587. {
  588.     new string[152];
  589.  
  590.     if(gPlayerInfo[playerid][PLAYER_LEVEL] < gCommands[ANN]) return SendClientMessage(playerid, COLOR_RED, ">> Error: {FFFFFF}You are not authorized to do that!");
  591.     if (!strlen(params)) return SendClientMessage(playerid, COLOR_ORANGE,"/ann {FFFFFF}[Message]");
  592.     GetPlayerName(playerid, pName, sizeof(pName));
  593.     format(string, sizeof(string), "%s", params);
  594.     GameTextForAll( string, 5000, 3 );
  595.     return 1;
  596. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement