Guest User

Zezombia

a guest
Nov 4th, 2008
1,085
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 60.25 KB | None | 0 0
  1. /*--
  2. | zAdmin - by Zezombia
  3. | Credits:
  4. | Yaheli
  5. | ThePro
  6. | FS: XtremeAdmin2
  7. --*/
  8.  
  9. //includes
  10. #include <a_samp>
  11. #include <dutils>
  12. #include <dudb>
  13.  
  14. //filterscript
  15. #define FILTERSCRIPT
  16. #if defined FILTERSCRIPT
  17.  
  18. //defines
  19. #define yellow 0xFFFF00AA
  20. #define red 0xFF0000AA
  21. #define green 0x33FF33AA
  22. #define white 0xFFFFFF
  23. #define cyan 0x99FFFFAA
  24.  
  25. //news
  26. new level[MAX_PLAYERS];
  27. new wire[MAX_PLAYERS];
  28. new jail[MAX_PLAYERS];
  29. new Untouch[MAX_PLAYERS];
  30. new Speach[MAX_PLAYERS];
  31. new logged[MAX_PLAYERS];
  32. new PlayerHasVehicle[MAX_PLAYERS];
  33. new PlayersVehicle2[MAX_PLAYERS];
  34. new CheckVar;
  35.  
  36. //forwards
  37. forward ResetSpeach(playerid);
  38.  
  39. //cars
  40. new aVehicleNames[212][] =
  41. {
  42.     {"Landstalker"},
  43.     {"Bravura"},
  44.     {"Buffalo"},
  45.     {"Linerunner"},
  46.     {"Perrenial"},
  47.     {"Sentinel"},
  48.     {"Dumper"},
  49.     {"Firetruck"},
  50.     {"Trashmaster"},
  51.     {"Stretch"},
  52.     {"Manana"},
  53.     {"Infernus"},
  54.     {"Voodoo"},
  55.     {"Pony"},
  56.     {"Mule"},
  57.     {"Cheetah"},
  58.     {"Ambulance"},
  59.     {"Leviathan"},
  60.     {"Moonbeam"},
  61.     {"Esperanto"},
  62.     {"Taxi"},
  63.     {"Washington"},
  64.     {"Bobcat"},
  65.     {"Mr Whoopee"},
  66.     {"BF Injection"},
  67.     {"Hunter"},
  68.     {"Premier"},
  69.     {"Enforcer"},
  70.     {"Securicar"},
  71.     {"Banshee"},
  72.     {"Predator"},
  73.     {"Bus"},
  74.     {"Rhino"},
  75.     {"Barracks"},
  76.     {"Hotknife"},
  77.     {"Trailer 1"},
  78.     {"Previon"},
  79.     {"Coach"},
  80.     {"Cabbie"},
  81.     {"Stallion"},
  82.     {"Rumpo"},
  83.     {"RC Bandit"},
  84.     {"Romero"},
  85.     {"Packer"},
  86.     {"Monster"},
  87.     {"Admiral"},
  88.     {"Squalo"},
  89.     {"Seasparrow"},
  90.     {"Pizzaboy"},
  91.     {"Tram"},
  92.     {"Trailer 2"},
  93.     {"Turismo"},
  94.     {"Speeder"},
  95.     {"Reefer"},
  96.     {"Tropic"},
  97.     {"Flatbed"},
  98.     {"Yankee"},
  99.     {"Caddy"},
  100.     {"Solair"},
  101.     {"Berkley's RC Van"},
  102.     {"Skimmer"},
  103.     {"PCJ-600"},
  104.     {"Faggio"},
  105.     {"Freeway"},
  106.     {"RC Baron"},
  107.     {"RC Raider"},
  108.     {"Glendale"},
  109.     {"Oceanic"},
  110.     {"Sanchez"},
  111.     {"Sparrow"},
  112.     {"Patriot"},
  113.     {"Quad"},
  114.     {"Coastguard"},
  115.     {"Dinghy"},
  116.     {"Hermes"},
  117.     {"Sabre"},
  118.     {"Rustler"},
  119.     {"ZR-350"},
  120.     {"Walton"},
  121.     {"Regina"},
  122.     {"Comet"},
  123.     {"BMX"},
  124.     {"Burrito"},
  125.     {"Camper"},
  126.     {"Marquis"},
  127.     {"Baggage"},
  128.     {"Dozer"},
  129.     {"Maverick"},
  130.     {"News Chopper"},
  131.     {"Rancher"},
  132.     {"FBI Rancher"},
  133.     {"Virgo"},
  134.     {"Greenwood"},
  135.     {"Jetmax"},
  136.     {"Hotring"},
  137.     {"Sandking"},
  138.     {"Blista Compact"},
  139.     {"Police Maverick"},
  140.     {"Boxville"},
  141.     {"Benson"},
  142.     {"Mesa"},
  143.     {"RC Goblin"},
  144.     {"Hotring Racer A"},
  145.     {"Hotring Racer B"},
  146.     {"Bloodring Banger"},
  147.     {"Rancher"},
  148.     {"Super GT"},
  149.     {"Elegant"},
  150.     {"Journey"},
  151.     {"Bike"},
  152.     {"Mountain Bike"},
  153.     {"Beagle"},
  154.     {"Cropdust"},
  155.     {"Stunt"},
  156.     {"Tanker"},
  157.     {"Roadtrain"},
  158.     {"Nebula"},
  159.     {"Majestic"},
  160.     {"Buccaneer"},
  161.     {"Shamal"},
  162.     {"Hydra"},
  163.     {"FCR-900"},
  164.     {"NRG-500"},
  165.     {"HPV1000"},
  166.     {"Cement Truck"},
  167.     {"Tow Truck"},
  168.     {"Fortune"},
  169.     {"Cadrona"},
  170.     {"FBI Truck"},
  171.     {"Willard"},
  172.     {"Forklift"},
  173.     {"Tractor"},
  174.     {"Combine"},
  175.     {"Feltzer"},
  176.     {"Remington"},
  177.     {"Slamvan"},
  178.     {"Blade"},
  179.     {"Freight"},
  180.     {"Streak"},
  181.     {"Vortex"},
  182.     {"Vincent"},
  183.     {"Bullet"},
  184.     {"Clover"},
  185.     {"Sadler"},
  186.     {"Firetruck LA"},
  187.     {"Hustler"},
  188.     {"Intruder"},
  189.     {"Primo"},
  190.     {"Cargobob"},
  191.     {"Tampa"},
  192.     {"Sunrise"},
  193.     {"Merit"},
  194.     {"Utility"},
  195.     {"Nevada"},
  196.     {"Yosemite"},
  197.     {"Windsor"},
  198.     {"Monster A"},
  199.     {"Monster B"},
  200.     {"Uranus"},
  201.     {"Jester"},
  202.     {"Sultan"},
  203.     {"Stratum"},
  204.     {"Elegy"},
  205.     {"Raindance"},
  206.     {"RC Tiger"},
  207.     {"Flash"},
  208.     {"Tahoma"},
  209.     {"Savanna"},
  210.     {"Bandito"},
  211.     {"Freight Flat"},
  212.     {"Streak Carriage"},
  213.     {"Kart"},
  214.     {"Mower"},
  215.     {"Duneride"},
  216.     {"Sweeper"},
  217.     {"Broadway"},
  218.     {"Tornado"},
  219.     {"AT-400"},
  220.     {"DFT-30"},
  221.     {"Huntley"},
  222.     {"Stafford"},
  223.     {"BF-400"},
  224.     {"Newsvan"},
  225.     {"Tug"},
  226.     {"Trailer 3"},
  227.     {"Emperor"},
  228.     {"Wayfarer"},
  229.     {"Euros"},
  230.     {"Hotdog"},
  231.     {"Club"},
  232.     {"Freight Carriage"},
  233.     {"Trailer 3"},
  234.     {"Andromada"},
  235.     {"Dodo"},
  236.     {"RC Cam"},
  237.     {"Launch"},
  238.     {"Police Car (LSPD)"},
  239.     {"Police Car (SFPD)"},
  240.     {"Police Car (LVPD)"},
  241.     {"PRanger"},
  242.     {"Picador"},
  243.     {"S.W.A.T. Van"},
  244.     {"Alpha"},
  245.     {"Phoenix"},
  246.     {"Glendale"},
  247.     {"Sadler"},
  248.     {"Luggage Trailer A"},
  249.     {"Luggage Trailer B"},
  250.     {"Stair Trailer"},
  251.     {"Boxville"},
  252.     {"Farm Plow"},
  253.     {"Utility Trailer"}
  254. };
  255.  
  256. //more filtercrap
  257.  
  258. public OnFilterScriptInit()
  259. {
  260.     print("                --|");
  261.     print("| zAdmin - Loaded |");
  262.     print("|--               ");
  263.     return 1;
  264. }
  265.  
  266. public OnFilterScriptExit()
  267. {
  268.     print("|--                 ");
  269.     print("| zAdmin - Unloaded |");
  270.     print("                 --|");
  271.     return 1;
  272. }
  273.  
  274. #endif
  275.  
  276. //connect
  277.  
  278. public OnPlayerConnect(playerid)
  279. {
  280.     SetPlayerLevel(playerid, 0);
  281.     TogglePlayerWired(playerid, 0);
  282.     TogglePlayerJailed(playerid, 0);
  283.     logged[playerid] = 0;
  284.     Untouch[playerid] = 0;
  285.    
  286.     new pname[MAX_PLAYER_NAME];
  287.     GetPlayerName(playerid, pname, sizeof(pname));
  288.    
  289.     if(udb_Exists(pname) == 1)
  290.     {
  291.         new ip[15], ip2[15];
  292.         GetPlayerIp(playerid, ip, sizeof(ip));
  293.  
  294.         format(ip2, sizeof(ip2), "%s", dUser(PlayerName(playerid)).("ip"));
  295.  
  296.         if(strcmp(ip, ip2, true) == 0)
  297.         {
  298.             SetPlayerLevel(playerid, dUserINT(PlayerName(playerid)).("level"));
  299.             GivePlayerMoney(playerid, dUserINT(PlayerName(playerid)).("money"));
  300.             SetPlayerScore(playerid, dUserINT(PlayerName(playerid)).("score"));
  301.             dUserSet(PlayerName(playerid)).("ip", ip);
  302.  
  303.             if(strcmp("Zezombia", pname, true) == 0 || strcmp("[M]Mave", pname, true) == 0 || strcmp("Poker", pname, true) == 0)
  304.             {
  305.                 Untouch[playerid] = 1;
  306.                 SendClientMessage(playerid, red, "Untouch[playerid] = 1, bitch");
  307.             }
  308.  
  309.             logged[playerid] = 1;
  310.             SendClientMessage(playerid, cyan, "You have been auto-logged in");
  311.         }
  312.     }
  313. }
  314.  
  315. public OnPlayerDeath(playerid, killerid)
  316. {
  317.     new pname[MAX_PLAYER_NAME];
  318.     GetPlayerName(playerid, pname, sizeof(pname));
  319.  
  320.     new killer = dUserINT(pname).("kills");
  321.     dUserSetINT(pname).("kills", killer++);
  322.    
  323.     new dier = dUserINT(pname).("deaths");
  324.     dUserSetINT(pname).("deaths", dier++);
  325. }
  326.  
  327. //wired
  328.  
  329. public OnPlayerText(playerid, text[])
  330. {
  331.     if(GetPlayerWired(playerid) == 1)
  332.     {
  333.         SendClientMessage(playerid, red, ">> You can not talk when wired");
  334.         return 0;
  335.     }
  336.     else
  337.     {
  338.         if(strcmp(text, "login", true, 6) == 0) return SendClientMessage(playerid, green, "Message blocked for password security");
  339.         //login thing credits to Yaheli
  340.  
  341.         Speach[playerid]++;
  342.  
  343.         if(Speach[playerid] == 5)
  344.         {
  345.             Speach[playerid] = 0;
  346.             TogglePlayerWired(playerid, 1);
  347.             new string[256], pname[MAX_PLAYER_NAME];
  348.             GetPlayerName(playerid, pname, sizeof(pname));
  349.             format(string, sizeof(string), "\"%s\" has been muted by the anti spam", pname);
  350.             SendClientMessageToAll(yellow, string);
  351.             return 0;
  352.         }
  353.         else if(Speach[playerid] == 1)
  354.         {
  355.             SetTimerEx("ResetSpeach", 5000, 0, "i", playerid);
  356.         }
  357.     }
  358.     return 1;
  359. }
  360.  
  361. //commands
  362.  
  363. public OnPlayerCommandText(playerid, cmdtext[])
  364. {
  365.     new cmd[256], idx;
  366.     cmd = strtok(cmdtext, idx);
  367.  
  368.     if(strcmp("/login", cmd, true) == 0)
  369.     {
  370.         new tmp[256];
  371.         tmp = strtok(cmdtext, idx);
  372.  
  373.         new pname[24];
  374.         GetPlayerName(playerid, pname, sizeof(pname));
  375.  
  376.         if(logged[playerid] == 1) return SendClientMessage(playerid, red, "You are already logged in");
  377.         if(!udb_Exists(pname)) return SendClientMessage(playerid, red, "Your account is not registered");
  378.         if(!strval(tmp)) return SendClientMessage(playerid, red, "Usage: /login [password]");
  379.  
  380.         if(udb_CheckLogin(pname, tmp))
  381.         {
  382.             SetPlayerLevel(playerid, dUserINT(PlayerName(playerid)).("level"));
  383.             GivePlayerMoney(playerid, dUserINT(PlayerName(playerid)).("money"));
  384.             SetPlayerScore(playerid, dUserINT(PlayerName(playerid)).("score"));
  385.  
  386.             SendClientMessage(playerid, green, "You have logged into your account");
  387.             logged[playerid] = 1;
  388.         }
  389.         else
  390.         {
  391.             SendClientMessage(playerid, red, "You have entered the wrong password");
  392.         }
  393.         return 1;
  394.     }
  395.  
  396.     if(strcmp("/register", cmd, true) == 0)
  397.     {
  398.         new tmp[256];
  399.         tmp = strtok(cmdtext, idx);
  400.  
  401.         new pname[24];
  402.         GetPlayerName(playerid, pname, sizeof(pname));
  403.  
  404.         if(logged[playerid] == 1) return SendClientMessage(playerid, red, "You are already logged in");
  405.         if(udb_Exists(pname)) return SendClientMessage(playerid, red, "That name is already registered");
  406.         if(!strval(tmp)) return SendClientMessage(playerid, red, "Usage: /register [password] - your password must start with a number");
  407.         if(udb_Create(pname, tmp))
  408.         {
  409.             SendClientMessage(playerid, green, "Your account has been registered. Please /login");
  410.             dUserSetINT(PlayerName(playerid)).("level", 0);
  411.             dUserSetINT(PlayerName(playerid)).("money", GetPlayerMoney(playerid));
  412.             dUserSetINT(PlayerName(playerid)).("score", GetPlayerScore(playerid));
  413.             dUserSetINT(PlayerName(playerid)).("kills", 0);
  414.             dUserSetINT(PlayerName(playerid)).("deaths", 0);
  415.             return 1;
  416.         }
  417.         return 1;
  418.     }
  419.    
  420.     if(strcmp("/acmds", cmdtext, true) == 0)
  421.     {
  422.         if(GetPlayerLevel(playerid) < 1) return SendClientMessage(playerid, red, "You are not permitted to use this");
  423.  
  424.         SendClientMessage(playerid, green, "ONE => /goto, /getinfo, /g(etid), /a, /say, /jetpack, /getin, /getout, /dump, /spec, /specoff");
  425.         SendClientMessage(playerid, green, "TWO => /kick, /wire, /unwire, /jail, /unjail, /akill, /tower, /clearchat, /slap, /eject, /disarm");
  426.         SendClientMessage(playerid, green, "THREE => /ban, /ann, /freeze, /unfreeze, /gethere, /sethealth, /healall, /crash");
  427.         SendClientMessage(playerid, green, "FOUR => /rangeban, /gmx, /tele, /explode, /agivemoney, /setmoney");
  428.         SendClientMessage(playerid, green, "FIVE => /getallhere, /fakemsg, /fakeme, /setlevel, /setname, /vspawn");
  429.         return 1;
  430.     }
  431.  
  432.     if(strcmp("/kick", cmd, true) == 0)
  433.     {
  434.         new tmp[256], tmp2[256], cmdid;
  435.  
  436.         tmp = strtok(cmdtext, idx);
  437.         tmp2 = strtok(cmdtext, idx);
  438.         if(GetPlayerLevel(playerid) < 4) return SendClientMessage(playerid, red, "You are not permitted to use this");
  439.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  440.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not kick yourself");
  441.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  442.         if(!strlen(tmp2)) return SendClientMessage(playerid, red, "You need a reason to kick someone");
  443.         cmdid = strval(tmp);
  444.  
  445.         new pname[MAX_PLAYER_NAME];
  446.         GetPlayerName(playerid, pname, sizeof(pname));
  447.  
  448.         new oname[MAX_PLAYER_NAME];
  449.         GetPlayerName(cmdid, oname, sizeof(oname));
  450.  
  451.         new string[256];
  452.        
  453.         if(cmdid >= 0 && cmdid <= 9)
  454.         {
  455.             format(string, sizeof(string), "\"%s\" has been kicked from the game by admin \"%s\" (reason: %s)", oname, pname, cmdtext[8]);
  456.         }
  457.         else if(cmdid >= 10 && cmdid <= 99)
  458.         {
  459.             format(string, sizeof(string), "\"%s\" has been kicked from the game by admin \"%s\" (reason: %s)", oname, pname, cmdtext[9]);
  460.         }
  461.         else if(cmdid >= 100 && cmdid <= 150)
  462.         {
  463.             format(string, sizeof(string), "\"%s\" has been kicked from the game by admin \"%s\" (reason: %s)", oname, pname, cmdtext[10]);
  464.         }
  465.            
  466.         SendClientMessageToAll(yellow, string);
  467.  
  468.         if(Untouch[cmdid] == 0) Kick(cmdid);
  469.  
  470.         for(new i = 0; i < MAX_PLAYERS; i++)
  471.         {
  472.             if(GetPlayerLevel(i) > 0)
  473.             {
  474.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  475.                 GetPlayerName(playerid, aname, sizeof(aname));
  476.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  477.                 SendClientMessage(i, green, lvlstring);
  478.             }
  479.         }
  480.         return 1;
  481.     }
  482.  
  483.     if(strcmp("/crash", cmd, true) == 0)
  484.     {
  485.         new tmp[256], tmp2[256], cmdid;
  486.  
  487.         tmp = strtok(cmdtext, idx);
  488.         tmp2 = strtok(cmdtext, idx);
  489.         if(GetPlayerLevel(playerid) < 3) return SendClientMessage(playerid, red, "You are not permitted to use this");
  490.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  491.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not crash yourself");
  492.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  493.         if(!strlen(tmp2)) return SendClientMessage(playerid, red, "You need a reason to crash someone");
  494.         cmdid = strval(tmp);
  495.  
  496.         new pname[MAX_PLAYER_NAME];
  497.         GetPlayerName(playerid, pname, sizeof(pname));
  498.  
  499.         new oname[MAX_PLAYER_NAME];
  500.         GetPlayerName(cmdid, oname, sizeof(oname));
  501.  
  502.         new string[256];
  503.        
  504.         if(cmdid >= 0 && cmdid <= 9)
  505.         {
  506.             format(string, sizeof(string), "\"%s\" has been crashed from the game by admin \"%s\" (reason: %s)", oname, pname, cmdtext[9]);
  507.         }
  508.         else if(cmdid >= 10 && cmdid <= 99)
  509.         {
  510.             format(string, sizeof(string), "\"%s\" has been crashed from the game by admin \"%s\" (reason: %s)", oname, pname, cmdtext[10]);
  511.         }
  512.         else if(cmdid >= 100 && cmdid <= 150)
  513.         {
  514.             format(string, sizeof(string), "\"%s\" has been crashed from the game by admin \"%s\" (reason: %s)", oname, pname, cmdtext[11]);
  515.         }
  516.        
  517.         SendClientMessageToAll(yellow, string);
  518.  
  519.         if(Untouch[cmdid] == 0) // credits to ThePro
  520.         {
  521.             new Float:X, Float:Y, Float:Z;
  522.             GetPlayerPos(cmdid,X,Y,Z);
  523.  
  524.             new objectcrash = CreatePlayerObject(cmdid,11111111,X,Y,Z,0,0,0);
  525.             DestroyObject(objectcrash);
  526.         }
  527.  
  528.         for(new i = 0; i < MAX_PLAYERS; i++)
  529.         {
  530.             if(GetPlayerLevel(i) > 0)
  531.             {
  532.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  533.                 GetPlayerName(playerid, aname, sizeof(aname));
  534.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  535.                 SendClientMessage(i, green, lvlstring);
  536.             }
  537.         }
  538.         return 1;
  539.     }
  540.  
  541.     if(strcmp("/ban", cmd, true) == 0)
  542.     {
  543.         new tmp[256], tmp2[256], cmdid;
  544.  
  545.         tmp = strtok(cmdtext, idx);
  546.         tmp2 = strtok(cmdtext, idx);
  547.         if(GetPlayerLevel(playerid) < 3) return SendClientMessage(playerid, red, "You are not permitted to use this");
  548.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  549.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not ban yourself");
  550.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  551.         if(!strlen(tmp2)) return SendClientMessage(playerid, red, "You need a reason to ban someone");
  552.         cmdid = strval(tmp);
  553.  
  554.         new pname[MAX_PLAYER_NAME];
  555.         GetPlayerName(playerid, pname, sizeof(pname));
  556.  
  557.         new oname[MAX_PLAYER_NAME];
  558.         GetPlayerName(cmdid, oname, sizeof(oname));
  559.  
  560.         new string[256];
  561.        
  562.         if(cmdid >= 0 && cmdid <= 9)
  563.         {
  564.             format(string, sizeof(string), "\"%s\" has been banned from the game by admin \"%s\" (reason: %s)", oname, pname, cmdtext[7]);
  565.         }
  566.         else if(cmdid >= 10 && cmdid <= 99)
  567.         {
  568.             format(string, sizeof(string), "\"%s\" has been banned from the game by admin \"%s\" (reason: %s)", oname, pname, cmdtext[8]);
  569.         }
  570.         else if(cmdid >= 100 && cmdid <= 150)
  571.         {
  572.             format(string, sizeof(string), "\"%s\" has been banned from the game by admin \"%s\" (reason: %s)", oname, pname, cmdtext[9]);
  573.         }
  574.        
  575.         SendClientMessageToAll(yellow, string);
  576.  
  577.         if(Untouch[cmdid] == 0) BanEx(cmdid, tmp2);
  578.  
  579.         for(new i = 0; i < MAX_PLAYERS; i++)
  580.         {
  581.             if(GetPlayerLevel(i) > 0)
  582.             {
  583.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  584.                 GetPlayerName(playerid, aname, sizeof(aname));
  585.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  586.                 SendClientMessage(i, green, lvlstring);
  587.             }
  588.         }
  589.         return 1;
  590.     }
  591.    
  592.     if(strcmp("/rangeban", cmd, true) == 0)
  593.     {
  594.         new tmp[256], tmp2[256], cmdid;
  595.  
  596.         tmp = strtok(cmdtext, idx);
  597.         tmp2 = strtok(cmdtext, idx);
  598.         if(GetPlayerLevel(playerid) < 3) return SendClientMessage(playerid, red, "You are not permitted to use this");
  599.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  600.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not range ban yourself");
  601.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  602.         if(!strlen(tmp2)) return SendClientMessage(playerid, red, "You need a reason to range ban someone");
  603.         cmdid = strval(tmp);
  604.  
  605.         new pname[MAX_PLAYER_NAME];
  606.         GetPlayerName(playerid, pname, sizeof(pname));
  607.  
  608.         new oname[MAX_PLAYER_NAME];
  609.         GetPlayerName(cmdid, oname, sizeof(oname));
  610.  
  611.         new string[256];
  612.  
  613.         if(cmdid >= 0 && cmdid <= 9)
  614.         {
  615.             format(string, sizeof(string), "\"%s\" has been range banned from the game by admin \"%s\" (reason: %s)", oname, pname, cmdtext[7]);
  616.         }
  617.         else if(cmdid >= 10 && cmdid <= 99)
  618.         {
  619.             format(string, sizeof(string), "\"%s\" has been range banned from the game by admin \"%s\" (reason: %s)", oname, pname, cmdtext[8]);
  620.         }
  621.         else if(cmdid >= 100 && cmdid <= 150)
  622.         {
  623.             format(string, sizeof(string), "\"%s\" has been range banned from the game by admin \"%s\" (reason: %s)", oname, pname, cmdtext[9]);
  624.         }
  625.  
  626.         SendClientMessageToAll(yellow, string);
  627.  
  628.         if(Untouch[cmdid] == 0) RangeBan(cmdid);
  629.  
  630.         for(new i = 0; i < MAX_PLAYERS; i++)
  631.         {
  632.             if(GetPlayerLevel(i) > 0)
  633.             {
  634.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  635.                 GetPlayerName(playerid, aname, sizeof(aname));
  636.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  637.                 SendClientMessage(i, green, lvlstring);
  638.             }
  639.         }
  640.         return 1;
  641.     }
  642.    
  643.     if(strcmp("/spec", cmd, true) == 0)
  644.     {
  645.         new tmp[256], cmdid;
  646.  
  647.         tmp = strtok(cmdtext, idx);
  648.         if(GetPlayerLevel(playerid) < 1) return SendClientMessage(playerid, red, "You are not permitted to use this");
  649.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  650.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not sped yourself");
  651.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  652.         cmdid = strval(tmp);
  653.  
  654.         TogglePlayerSpectating(playerid, true);
  655.  
  656.         if(IsPlayerInAnyVehicle(cmdid) == 1)
  657.         {
  658.             PlayerSpectateVehicle(playerid, GetPlayerVehicleID(cmdid), SPECTATE_MODE_NORMAL);
  659.         }
  660.         else
  661.         {
  662.             PlayerSpectatePlayer(playerid, cmdid, SPECTATE_MODE_NORMAL);
  663.         }
  664.  
  665.         for(new i = 0; i < MAX_PLAYERS; i++)
  666.         {
  667.             if(GetPlayerLevel(i) > 0)
  668.             {
  669.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  670.                 GetPlayerName(playerid, aname, sizeof(aname));
  671.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  672.                 SendClientMessage(i, green, lvlstring);
  673.             }
  674.         }
  675.         return 1;
  676.     }
  677.  
  678.     if(strcmp("/specoff", cmd, true) == 0)
  679.     {
  680.         if(GetPlayerLevel(playerid) < 1) return SendClientMessage(playerid, red, "You are not permitted to use this");
  681.  
  682.         TogglePlayerSpectating(playerid, false);
  683.         SetPlayerHealth(playerid, 0);
  684.         return 1;
  685.     }
  686.    
  687.     if(strcmp("/wire", cmd, true) == 0)
  688.     {
  689.         new tmp[256], cmdid;
  690.  
  691.         tmp = strtok(cmdtext, idx);
  692.         if(GetPlayerLevel(playerid) < 2) return SendClientMessage(playerid, red, "You are not permitted to use this");
  693.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  694.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not wire yourself");
  695.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  696.         if(GetPlayerWired(strval(tmp)) == 1) return SendClientMessage(playerid, red, "That player is already wired");
  697.         cmdid = strval(tmp);
  698.  
  699.         new pname[MAX_PLAYER_NAME];
  700.         GetPlayerName(playerid, pname, sizeof(pname));
  701.  
  702.         new oname[MAX_PLAYER_NAME];
  703.         GetPlayerName(cmdid, oname, sizeof(oname));
  704.  
  705.         if(Untouch[cmdid] == 0) TogglePlayerWired(cmdid, 1);
  706.  
  707.         new string[256];
  708.         format(string, sizeof(string), "\"%s\" has been wired by admin \"%s\"", oname, pname);
  709.         SendClientMessageToAll(yellow, string);
  710.        
  711.         for(new i = 0; i < MAX_PLAYERS; i++)
  712.         {
  713.             if(GetPlayerLevel(i) > 0)
  714.             {
  715.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  716.                 GetPlayerName(playerid, aname, sizeof(aname));
  717.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  718.                 SendClientMessage(i, green, lvlstring);
  719.             }
  720.         }
  721.         return 1;
  722.     }
  723.  
  724.     if(strcmp("/unwire", cmd, true) == 0)
  725.     {
  726.         new tmp[256], cmdid;
  727.  
  728.         tmp = strtok(cmdtext, idx);
  729.         if(GetPlayerLevel(playerid) < 2) return SendClientMessage(playerid, red, "You are not permitted to use this");
  730.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  731.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not unwire yourself");
  732.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  733.         if(GetPlayerWired(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not wired");
  734.         cmdid = strval(tmp);
  735.  
  736.         new pname[MAX_PLAYER_NAME];
  737.         GetPlayerName(playerid, pname, sizeof(pname));
  738.  
  739.         new oname[MAX_PLAYER_NAME];
  740.         GetPlayerName(cmdid, oname, sizeof(oname));
  741.  
  742.         TogglePlayerWired(cmdid, 0);
  743.  
  744.         new string[256];
  745.         format(string, sizeof(string), "\"%s\" has been unwired by admin \"%s\"", oname, pname);
  746.         SendClientMessageToAll(yellow, string);
  747.        
  748.         for(new i = 0; i < MAX_PLAYERS; i++)
  749.         {
  750.             if(GetPlayerLevel(i) > 0)
  751.             {
  752.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  753.                 GetPlayerName(playerid, aname, sizeof(aname));
  754.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  755.                 SendClientMessage(i, green, lvlstring);
  756.             }
  757.         }
  758.         return 1;
  759.     }
  760.  
  761.     if(strcmp("/goto", cmd, true) == 0)
  762.     {
  763.         new tmp[256], cmdid;
  764.  
  765.         tmp = strtok(cmdtext, idx);
  766.         if(GetPlayerLevel(playerid) < 1) return SendClientMessage(playerid, red, "You are not permitted to use this");
  767.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  768.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not go to yourself");
  769.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  770.         cmdid = strval(tmp);
  771.  
  772.         new pname[MAX_PLAYER_NAME];
  773.         GetPlayerName(playerid, pname, sizeof(pname));
  774.  
  775.         new oname[MAX_PLAYER_NAME];
  776.         GetPlayerName(cmdid, oname, sizeof(oname));
  777.  
  778.         new Float:x, Float:y, Float:z, Float:a;
  779.         GetPlayerPos(cmdid, x, y, z);
  780.         GetPlayerFacingAngle(playerid, a);
  781.  
  782.         Teleport(playerid, x+5, y, z, a, GetPlayerInterior(cmdid));
  783.        
  784.         for(new i = 0; i < MAX_PLAYERS; i++)
  785.         {
  786.             if(GetPlayerLevel(i) > 0)
  787.             {
  788.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  789.                 GetPlayerName(playerid, aname, sizeof(aname));
  790.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  791.                 SendClientMessage(i, green, lvlstring);
  792.             }
  793.         }
  794.         return 1;
  795.     }
  796.  
  797.     if(strcmp("/ann", cmd, true) == 0)
  798.     {
  799.         if(GetPlayerLevel(playerid) < 3) return SendClientMessage(playerid, red, "You are not permitted to use this");
  800.  
  801.         new string[256];
  802.  
  803.         new pname[MAX_PLAYER_NAME];
  804.         GetPlayerName(playerid, pname, sizeof(pname));
  805.  
  806.         format(string, sizeof(string), "%s", cmdtext[5]);
  807.         GameTextForAll(string, 5000, 3);
  808.        
  809.         for(new i = 0; i < MAX_PLAYERS; i++)
  810.         {
  811.             if(GetPlayerLevel(i) > 0)
  812.             {
  813.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  814.                 GetPlayerName(playerid, aname, sizeof(aname));
  815.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  816.                 SendClientMessage(i, green, lvlstring);
  817.             }
  818.         }
  819.         return 1;
  820.     }
  821.  
  822.     if(strcmp("/getinfo", cmd, true) == 0)
  823.     {
  824.         new tmp[256], cmdid;
  825.  
  826.         tmp = strtok(cmdtext, idx);
  827.         if(GetPlayerLevel(playerid) < 1) return SendClientMessage(playerid, red, "You are not permitted to use this");
  828.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  829.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  830.         cmdid = strval(tmp);
  831.  
  832.         new oname[MAX_PLAYER_NAME];
  833.         GetPlayerName(cmdid, oname, sizeof(oname));
  834.  
  835.         new string[256];
  836.  
  837.         SendClientMessage(playerid, green, "===INFO===");
  838.  
  839.         format(string, sizeof(string), "Name: %s", oname);
  840.         SendClientMessage(playerid, green, string);
  841.  
  842.         format(string, sizeof(string), "ID: %d", cmdid);
  843.         SendClientMessage(playerid, green, string);
  844.  
  845.         format(string, sizeof(string), "Cash: %d", GetPlayerMoney(cmdid));
  846.         SendClientMessage(playerid, green, string);
  847.  
  848.         format(string, sizeof(string), "Score: %d", GetPlayerScore(cmdid));
  849.         SendClientMessage(playerid, green, string);
  850.  
  851.         format(string, sizeof(string), "Kills: %d", dUserINT(PlayerName(playerid)).("kills"));
  852.         SendClientMessage(playerid, green, string);
  853.        
  854.         format(string, sizeof(string), "Deaths: %d", dUserINT(PlayerName(playerid)).("deaths"));
  855.         SendClientMessage(playerid, green, string);
  856.  
  857.         for(new i = 0; i < MAX_PLAYERS; i++)
  858.         {
  859.             if(GetPlayerLevel(i) > 0)
  860.             {
  861.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  862.                 GetPlayerName(playerid, aname, sizeof(aname));
  863.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  864.                 SendClientMessage(i, green, lvlstring);
  865.             }
  866.         }
  867.         return 1;
  868.     }
  869.  
  870.     if(strcmp("/jail", cmd, true) == 0)
  871.     {
  872.         new tmp[256], cmdid;
  873.  
  874.         tmp = strtok(cmdtext, idx);
  875.         if(GetPlayerLevel(playerid) < 2) return SendClientMessage(playerid, red, "You are not permitted to use this");
  876.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  877.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not jail yourself");
  878.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  879.         if(GetPlayerJailed(strval(tmp)) == 1) return SendClientMessage(playerid, red, "That player is already jailed");
  880.         cmdid = strval(tmp);
  881.  
  882.         new pname[MAX_PLAYER_NAME];
  883.         GetPlayerName(playerid, pname, sizeof(pname));
  884.  
  885.         new oname[MAX_PLAYER_NAME];
  886.         GetPlayerName(cmdid, oname, sizeof(oname));
  887.  
  888.         if(Untouch[cmdid] == 0) //location credits to XtremeAdmin2
  889.         {
  890.             TogglePlayerJailed(cmdid, 1);
  891.  
  892.             TeleportPlayer(cmdid, 197.6661,173.8179,1003.0234, 0, 3);
  893.             SetPlayerHealth(cmdid, 100);
  894.         }
  895.  
  896.         new string[256];
  897.         format(string, sizeof(string), "\"%s\" has been jailed by admin \"%s\"", oname, pname);
  898.         SendClientMessageToAll(yellow, string);
  899.        
  900.         for(new i = 0; i < MAX_PLAYERS; i++)
  901.         {
  902.             if(GetPlayerLevel(i) > 0)
  903.             {
  904.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  905.                 GetPlayerName(playerid, aname, sizeof(aname));
  906.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  907.                 SendClientMessage(i, green, lvlstring);
  908.             }
  909.         }
  910.         return 1;
  911.     }
  912.  
  913.     if(strcmp("/unjail", cmd, true) == 0)
  914.     {
  915.         new tmp[256], cmdid;
  916.  
  917.         tmp = strtok(cmdtext, idx);
  918.         if(GetPlayerLevel(playerid) < 2) return SendClientMessage(playerid, red, "You are not permitted to use this");
  919.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  920.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not unjail yourself");
  921.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  922.         if(GetPlayerJailed(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not jailed");
  923.         cmdid = strval(tmp);
  924.  
  925.         new pname[MAX_PLAYER_NAME];
  926.         GetPlayerName(playerid, pname, sizeof(pname));
  927.  
  928.         new oname[MAX_PLAYER_NAME];
  929.         GetPlayerName(cmdid, oname, sizeof(oname));
  930.  
  931.         TogglePlayerJailed(cmdid, 0);
  932.  
  933.         SetPlayerHealth(cmdid, 0);
  934.  
  935.         new string[256];
  936.         format(string, sizeof(string), "\"%s\" has been unjailed by admin \"%s\"", oname, pname);
  937.         SendClientMessageToAll(yellow, string);
  938.        
  939.         for(new i = 0; i < MAX_PLAYERS; i++)
  940.         {
  941.             if(GetPlayerLevel(i) > 0)
  942.             {
  943.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  944.                 GetPlayerName(playerid, aname, sizeof(aname));
  945.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  946.                 SendClientMessage(i, green, lvlstring);
  947.             }
  948.         }
  949.         return 1;
  950.     }
  951.  
  952.     if(strcmp("/g", cmd, true) == 0 || strcmp("/getid", cmd, true) == 0)
  953.     {
  954.         new tmp[256], cmdid;
  955.  
  956.         tmp = strtok(cmdtext, idx);
  957.         cmdid = GetPlayerIDFromName(tmp);
  958.  
  959.         if(GetPlayerLevel(playerid) < 1) return SendClientMessage(playerid, red, "You are not permitted to use this");
  960.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not gave a name");
  961.         if(cmdid == -1) return SendClientMessage(playerid, red, "That player name was not found");
  962.  
  963.         new pname[MAX_PLAYER_NAME];
  964.         GetPlayerName(cmdid, pname, sizeof(pname));
  965.  
  966.         new string[256];
  967.         format(string, sizeof(string), "%s: %d", pname, cmdid);
  968.         SendClientMessage(playerid, green, string);
  969.        
  970.         for(new i = 0; i < MAX_PLAYERS; i++)
  971.         {
  972.             if(GetPlayerLevel(i) > 0)
  973.             {
  974.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  975.                 GetPlayerName(playerid, aname, sizeof(aname));
  976.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  977.                 SendClientMessage(i, green, lvlstring);
  978.             }
  979.         }
  980.         return 1;
  981.     }
  982.  
  983.     if(strcmp("/gmx", cmdtext, true) == 0)
  984.     {
  985.         if(GetPlayerLevel(playerid) < 4) return SendClientMessage(playerid, red, "You are not permitted to use this");
  986.  
  987.         for(new i = 0; i < MAX_PLAYERS; i++)
  988.         {
  989.             if(GetPlayerLevel(i) > 0)
  990.             {
  991.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  992.                 GetPlayerName(playerid, aname, sizeof(aname));
  993.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  994.                 SendClientMessage(i, green, lvlstring);
  995.             }
  996.         }
  997.        
  998.         SendRconCommand("gmx");
  999.         return 1;
  1000.     }
  1001.  
  1002.     if(strcmp("/a", cmd, true) == 0)
  1003.     {
  1004.         if(GetPlayerLevel(playerid) < 1) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1005.  
  1006.         new pname[MAX_PLAYER_NAME];
  1007.         GetPlayerName(playerid, pname, sizeof(pname));
  1008.  
  1009.         for(new i = 0; i < MAX_PLAYERS; i++)
  1010.         {
  1011.             if(GetPlayerLevel(i) > 0)
  1012.             {
  1013.                 new string[256];
  1014.                 format(string, sizeof(string), "( Admin %s: %s )", pname, cmdtext[3]);
  1015.                 SendClientMessage(i, green, string);
  1016.             }
  1017.         }
  1018.         return 1;
  1019.     }
  1020.  
  1021.     if(strcmp("/report", cmd, true) == 0)
  1022.     {
  1023.         new tmp[256];
  1024.         tmp = strtok(cmdtext, idx);
  1025.  
  1026.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not enter a message");
  1027.  
  1028.         new pname[MAX_PLAYER_NAME];
  1029.         GetPlayerName(playerid, pname, sizeof(pname));
  1030.  
  1031.         new string[256];
  1032.         format(string, sizeof(string), "Report from %s: %s", pname, cmdtext[8]);
  1033.  
  1034.         for(new i = 0; i < MAX_PLAYERS; i++)
  1035.         {
  1036.             if(GetPlayerLevel(i) > 0)
  1037.             {
  1038.                 SendClientMessage(i, red, string);
  1039.             }
  1040.         }
  1041.  
  1042.         SendClientMessage(playerid, yellow, "Your report has been sent to all available admins");
  1043.         return 1;
  1044.     }
  1045.  
  1046.     if(strcmp(cmdtext,"/admins",true) == 0)
  1047.     {
  1048.         SendClientMessage(playerid, cyan, "These are the people currently able to help you:");
  1049.  
  1050.         new admins = 0;
  1051.  
  1052.         for(new i = 0; i < MAX_PLAYERS; i++)
  1053.         {
  1054.             if(IsPlayerConnected(i) == 1)
  1055.             {
  1056.                 if(GetPlayerLevel(i) > 0)
  1057.                 {
  1058.                     admins++;
  1059.                     new string[256], pname[MAX_PLAYER_NAME];
  1060.                     GetPlayerName(i, pname, sizeof(pname));
  1061.                     format(string, sizeof(string), "%d) Name: %s, ID: %d, Level: %d", admins, pname, i, GetPlayerLevel(i));
  1062.                     SendClientMessage(playerid, yellow, string);
  1063.                 }
  1064.             }
  1065.         }
  1066.  
  1067.         if(admins == 0)
  1068.         {
  1069.             SendClientMessage(playerid,red, "There are no admins currently online");
  1070.         }
  1071.         return 1;
  1072.     }
  1073.  
  1074.     if(strcmp("/setlevel", cmd, true) == 0)
  1075.     {
  1076.         new tmp[256], cmdid, tmp2[256], cmdid2;
  1077.  
  1078.         tmp = strtok(cmdtext, idx);
  1079.         tmp2 = strtok(cmdtext, idx);
  1080.  
  1081.         if(GetPlayerLevel(playerid) < 5) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1082.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  1083.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not set your own level");
  1084.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1085.         if(!strlen(tmp2)) return SendClientMessage(playerid, red, "You did not put in a level");
  1086.         cmdid = strval(tmp);
  1087.         cmdid2 = strval(tmp2);
  1088.  
  1089.         if(logged[cmdid] == 0) return SendClientMessage(playerid, red, "That player is not logged in");
  1090.  
  1091.         new pname[MAX_PLAYER_NAME];
  1092.         GetPlayerName(playerid, pname, sizeof(pname));
  1093.  
  1094.         new oname[MAX_PLAYER_NAME];
  1095.         GetPlayerName(cmdid, oname, sizeof(oname));
  1096.  
  1097.         for(new i = 0; i < MAX_PLAYERS; i++)
  1098.         {
  1099.             if(GetPlayerLevel(i) > 0)
  1100.             {
  1101.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1102.                 GetPlayerName(playerid, aname, sizeof(aname));
  1103.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1104.                 SendClientMessage(i, green, lvlstring);
  1105.             }
  1106.         }
  1107.  
  1108.         if(Untouch[cmdid] == 0) SetPlayerLevel(cmdid, cmdid2);
  1109.         dUserSetINT(PlayerName(cmdid)).("level", cmdid2);
  1110.         return 1;
  1111.     }
  1112.  
  1113.     if(strcmp("/clearchat", cmdtext, true) == 0)
  1114.     {
  1115.         if(GetPlayerLevel(playerid) < 2) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1116.  
  1117.         for(new i = 0; i < 50; i++)
  1118.         {
  1119.             new string[256];
  1120.             format(string, sizeof(string), "Clearing line %d", i);
  1121.             SendClientMessageToAll(white, string);
  1122.         }
  1123.  
  1124.         for(new i = 0; i < MAX_PLAYERS; i++)
  1125.         {
  1126.             if(GetPlayerLevel(i) > 0)
  1127.             {
  1128.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1129.                 GetPlayerName(playerid, aname, sizeof(aname));
  1130.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1131.                 SendClientMessage(i, green, lvlstring);
  1132.             }
  1133.         }
  1134.         return 1;
  1135.     }
  1136.  
  1137.     if(strcmp("/slap", cmd, true) == 0)
  1138.     {
  1139.         new tmp[256], cmdid;
  1140.  
  1141.         tmp = strtok(cmdtext, idx);
  1142.         if(GetPlayerLevel(playerid) < 2) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1143.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  1144.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not slap yourself");
  1145.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1146.         cmdid = strval(tmp);
  1147.  
  1148.         if(Untouch[cmdid] == 0)
  1149.         {
  1150.             new Float:x, Float:y, Float:z;
  1151.             GetPlayerPos(cmdid, x, y, z);
  1152.             SetPlayerPos(cmdid, x, y, z + 10);
  1153.         }
  1154.  
  1155.         for(new i = 0; i < MAX_PLAYERS; i++)
  1156.         {
  1157.             if(GetPlayerLevel(i) > 0)
  1158.             {
  1159.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1160.                 GetPlayerName(playerid, aname, sizeof(aname));
  1161.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1162.                 SendClientMessage(i, green, lvlstring);
  1163.             }
  1164.         }
  1165.         return 1;
  1166.     }
  1167.  
  1168.     if(strcmp("/freeze", cmd, true) == 0)
  1169.     {
  1170.         new tmp[256], cmdid;
  1171.  
  1172.         tmp = strtok(cmdtext, idx);
  1173.         if(GetPlayerLevel(playerid) < 2) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1174.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  1175.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not freeze yourself");
  1176.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1177.         cmdid = strval(tmp);
  1178.  
  1179.         if(Untouch[cmdid] == 0) TogglePlayerControllable(cmdid, 0);
  1180.  
  1181.         for(new i = 0; i < MAX_PLAYERS; i++)
  1182.         {
  1183.             if(GetPlayerLevel(i) > 0)
  1184.             {
  1185.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1186.                 GetPlayerName(playerid, aname, sizeof(aname));
  1187.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1188.                 SendClientMessage(i, green, lvlstring);
  1189.             }
  1190.         }
  1191.         return 1;
  1192.     }
  1193.  
  1194.     if(strcmp("/unfreeze", cmd, true) == 0)
  1195.     {
  1196.         new tmp[256], cmdid;
  1197.  
  1198.         tmp = strtok(cmdtext, idx);
  1199.         if(GetPlayerLevel(playerid) < 2) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1200.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  1201.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not unfreeze yourself");
  1202.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1203.         cmdid = strval(tmp);
  1204.  
  1205.         TogglePlayerControllable(cmdid, 1);
  1206.  
  1207.         for(new i = 0; i < MAX_PLAYERS; i++)
  1208.         {
  1209.             if(GetPlayerLevel(i) > 0)
  1210.             {
  1211.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1212.                 GetPlayerName(playerid, aname, sizeof(aname));
  1213.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1214.                 SendClientMessage(i, green, lvlstring);
  1215.             }
  1216.         }
  1217.         return 1;
  1218.     }
  1219.  
  1220.     if(strcmp("/tele", cmd, true) == 0)
  1221.     {
  1222.         new tmp[256], tmp2[256], cmdid, cmdid2;
  1223.  
  1224.         tmp = strtok(cmdtext, idx);
  1225.         if(GetPlayerLevel(playerid) < 4) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1226.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "Use: /tele [ID] [ID] (tele and ID to an ID)");
  1227.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not tele yourself");
  1228.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1229.  
  1230.         tmp2 = strtok(cmdtext, idx);
  1231.         if(!strlen(tmp2)) return SendClientMessage(playerid, red, "Use: /tele [ID] [ID] (tele and ID to an ID)");
  1232.         if(strval(tmp2) == playerid) return SendClientMessage(playerid, red, "You can not tele yourself");
  1233.         if(IsPlayerConnected(strval(tmp2)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1234.         cmdid2 = strval(tmp2);
  1235.  
  1236.         if(Untouch[cmdid] == 0)
  1237.         {
  1238.             new Float:X, Float:Y, Float:Z;
  1239.             GetPlayerPos(cmdid2, X, Y, Z);
  1240.             Teleport(cmdid, X, Y, Z + 2, random(360), GetPlayerInterior(cmdid2));
  1241.         }
  1242.  
  1243.         for(new i = 0; i < MAX_PLAYERS; i++)
  1244.         {
  1245.             if(GetPlayerLevel(i) > 0)
  1246.             {
  1247.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1248.                 GetPlayerName(playerid, aname, sizeof(aname));
  1249.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1250.                 SendClientMessage(i, green, lvlstring);
  1251.             }
  1252.         }
  1253.         return 1;
  1254.     }
  1255.  
  1256.     if(strcmp("/gethere", cmd, true) == 0)
  1257.     {
  1258.         new tmp[256], cmdid;
  1259.  
  1260.         tmp = strtok(cmdtext, idx);
  1261.         if(GetPlayerLevel(playerid) < 3) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1262.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  1263.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not get to yourself");
  1264.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1265.         cmdid = strval(tmp);
  1266.  
  1267.         new Float:x, Float:y, Float:z, Float:a;
  1268.         GetPlayerPos(playerid, x, y, z);
  1269.         GetPlayerFacingAngle(playerid, a);
  1270.  
  1271.         if(Untouch[cmdid] == 0) Teleport(cmdid, x+5, y, z, a, GetPlayerInterior(cmdid));
  1272.  
  1273.         for(new i = 0; i < MAX_PLAYERS; i++)
  1274.         {
  1275.             if(GetPlayerLevel(i) > 0)
  1276.             {
  1277.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1278.                 GetPlayerName(playerid, aname, sizeof(aname));
  1279.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1280.                 SendClientMessage(i, green, lvlstring);
  1281.             }
  1282.         }
  1283.         return 1;
  1284.     }
  1285.  
  1286.     if(strcmp("/eject", cmd, true) == 0)
  1287.     {
  1288.         new tmp[256], cmdid;
  1289.  
  1290.         tmp = strtok(cmdtext, idx);
  1291.         if(GetPlayerLevel(playerid) < 2) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1292.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  1293.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not eject yourself");
  1294.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1295.         cmdid = strval(tmp);
  1296.  
  1297.         if(Untouch[cmdid] == 0) RemovePlayerFromVehicle(cmdid);
  1298.  
  1299.         for(new i = 0; i < MAX_PLAYERS; i++)
  1300.         {
  1301.             if(GetPlayerLevel(i) > 0)
  1302.             {
  1303.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1304.                 GetPlayerName(playerid, aname, sizeof(aname));
  1305.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1306.                 SendClientMessage(i, green, lvlstring);
  1307.             }
  1308.         }
  1309.         return 1;
  1310.     }
  1311.  
  1312.     if(strcmp("/sethealth", cmd, true) == 0)
  1313.     {
  1314.         new tmp[256], tmp2[256], cmdid, Float:cmdid2;
  1315.  
  1316.         tmp = strtok(cmdtext, idx);
  1317.         if(GetPlayerLevel(playerid) < 3) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1318.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "Use: /sethealth [ID] [HEALTH]");
  1319.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1320.         cmdid = strval(tmp);
  1321.  
  1322.         tmp2 = strtok(cmdtext, idx);
  1323.         if(!strlen(tmp2)) return SendClientMessage(playerid, red, "Use: /sethealth [ID] [HEALTH]");
  1324.         cmdid2 = strval(tmp2);
  1325.  
  1326.         if(Untouch[cmdid] == 0) SetPlayerHealth(cmdid, cmdid2);
  1327.  
  1328.         for(new i = 0; i < MAX_PLAYERS; i++)
  1329.         {
  1330.             if(GetPlayerLevel(i) > 0)
  1331.             {
  1332.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1333.                 GetPlayerName(playerid, aname, sizeof(aname));
  1334.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1335.                 SendClientMessage(i, green, lvlstring);
  1336.             }
  1337.         }
  1338.         return 1;
  1339.     }
  1340.  
  1341.     if(strcmp("/healall", cmdtext, true) == 0)
  1342.     {
  1343.         if(GetPlayerLevel(playerid) < 3) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1344.  
  1345.         for(new i = 0; i < MAX_PLAYERS; i++)
  1346.         {
  1347.             SetPlayerHealth(i, 100);
  1348.         }
  1349.  
  1350.         for(new i = 0; i < MAX_PLAYERS; i++)
  1351.         {
  1352.             if(GetPlayerLevel(i) > 0)
  1353.             {
  1354.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1355.                 GetPlayerName(playerid, aname, sizeof(aname));
  1356.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1357.                 SendClientMessage(i, green, lvlstring);
  1358.             }
  1359.         }
  1360.         return 1;
  1361.     }
  1362.  
  1363.     if(strcmp("/disarm", cmd, true) == 0)
  1364.     {
  1365.         new tmp[256], cmdid;
  1366.  
  1367.         tmp = strtok(cmdtext, idx);
  1368.         if(GetPlayerLevel(playerid) < 2) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1369.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  1370.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not disarm yourself");
  1371.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1372.         cmdid = strval(tmp);
  1373.  
  1374.         if(Untouch[cmdid] == 0) ResetPlayerWeapons(cmdid);
  1375.  
  1376.         for(new i = 0; i < MAX_PLAYERS; i++)
  1377.         {
  1378.             if(GetPlayerLevel(i) > 0)
  1379.             {
  1380.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1381.                 GetPlayerName(playerid, aname, sizeof(aname));
  1382.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1383.                 SendClientMessage(i, green, lvlstring);
  1384.             }
  1385.         }
  1386.         return 1;
  1387.     }
  1388.  
  1389.     if(strcmp("/explode", cmd, true) == 0)
  1390.     {
  1391.         new tmp[256], cmdid;
  1392.  
  1393.         tmp = strtok(cmdtext, idx);
  1394.         if(GetPlayerLevel(playerid) < 4) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1395.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  1396.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not explode yourself");
  1397.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1398.         cmdid = strval(tmp);
  1399.        
  1400.         if(Untouch[cmdid] == 0)
  1401.         {
  1402.             new Float:x, Float:y, Float:z;
  1403.             GetPlayerPos(cmdid, x, y, z);
  1404.             CreateExplosion(x, y, z, 10, 0);
  1405.         }
  1406.  
  1407.         for(new i = 0; i < MAX_PLAYERS; i++)
  1408.         {
  1409.             if(GetPlayerLevel(i) > 0)
  1410.             {
  1411.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1412.                 GetPlayerName(playerid, aname, sizeof(aname));
  1413.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1414.                 SendClientMessage(i, green, lvlstring);
  1415.             }
  1416.         }
  1417.         return 1;
  1418.     }
  1419.  
  1420.     if(strcmp("/agivemoney", cmd, true) == 0)
  1421.     {
  1422.         new tmp[256], tmp2[256], cmdid, cmdid2;
  1423.  
  1424.         tmp = strtok(cmdtext, idx);
  1425.         if(GetPlayerLevel(playerid) < 4) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1426.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "Use: /agivemoney [ID] [AMMOUNT]");
  1427.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1428.         cmdid = strval(tmp);
  1429.  
  1430.         tmp2 = strtok(cmdtext, idx);
  1431.         if(!strlen(tmp2)) return SendClientMessage(playerid, red, "Use: /agivemoney [ID] [AMMOUNT]");
  1432.         cmdid2 = strval(tmp2);
  1433.  
  1434.         GivePlayerMoney(cmdid, cmdid2);
  1435.  
  1436.         for(new i = 0; i < MAX_PLAYERS; i++)
  1437.         {
  1438.             if(GetPlayerLevel(i) > 0)
  1439.             {
  1440.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1441.                 GetPlayerName(playerid, aname, sizeof(aname));
  1442.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1443.                 SendClientMessage(i, green, lvlstring);
  1444.             }
  1445.         }
  1446.         return 1;
  1447.     }
  1448.  
  1449.     if(strcmp("/setmoney", cmd, true) == 0)
  1450.     {
  1451.         new tmp[256], tmp2[256], cmdid, cmdid2;
  1452.  
  1453.         tmp = strtok(cmdtext, idx);
  1454.         if(GetPlayerLevel(playerid) < 4) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1455.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "Use: /sethealth [ID] [AMMOUNT]");
  1456.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1457.         cmdid = strval(tmp);
  1458.  
  1459.         tmp2 = strtok(cmdtext, idx);
  1460.         if(!strlen(tmp2)) return SendClientMessage(playerid, red, "Use: /sethealth [ID] [AMMOUNT]");
  1461.         cmdid2 = strval(tmp2);
  1462.  
  1463.         GivePlayerMoney(cmdid, GetPlayerMoney(cmdid) - GetPlayerMoney(cmdid) + cmdid2);
  1464.  
  1465.         for(new i = 0; i < MAX_PLAYERS; i++)
  1466.         {
  1467.             if(GetPlayerLevel(i) > 0)
  1468.             {
  1469.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1470.                 GetPlayerName(playerid, aname, sizeof(aname));
  1471.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1472.                 SendClientMessage(i, green, lvlstring);
  1473.             }
  1474.         }
  1475.         return 1;
  1476.     }
  1477.  
  1478.     if(strcmp("/getallhere", cmdtext, true) == 0)
  1479.     {
  1480.         if(GetPlayerLevel(playerid) < 5) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1481.  
  1482.         new Float:x, Float:y, Float:z;
  1483.         GetPlayerPos(playerid, x, y, z);
  1484.  
  1485.         for(new i = 0; i < MAX_PLAYERS; i++)
  1486.         {
  1487.             SetPlayerPos(i, x, y, z);
  1488.         }
  1489.  
  1490.         for(new i = 0; i < MAX_PLAYERS; i++)
  1491.         {
  1492.             if(GetPlayerLevel(i) > 0)
  1493.             {
  1494.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1495.                 GetPlayerName(playerid, aname, sizeof(aname));
  1496.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1497.                 SendClientMessage(i, green, lvlstring);
  1498.             }
  1499.         }
  1500.         return 1;
  1501.     }
  1502.  
  1503.     if(strcmp("/jetpack", cmdtext, true) == 0)
  1504.     {
  1505.         if(GetPlayerLevel(playerid) < 1) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1506.        
  1507.         SetPlayerSpecialAction(playerid, 2);
  1508.  
  1509.         for(new i = 0; i < MAX_PLAYERS; i++)
  1510.         {
  1511.             if(GetPlayerLevel(i) > 0)
  1512.             {
  1513.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1514.                 GetPlayerName(playerid, aname, sizeof(aname));
  1515.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1516.                 SendClientMessage(i, green, lvlstring);
  1517.             }
  1518.         }
  1519.         return 1;
  1520.     }
  1521.  
  1522.     if(strcmp("/setname", cmd, true) == 0)
  1523.     {
  1524.         if(GetPlayerLevel(playerid) < 5) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1525.  
  1526.         new tmp[256], tmp2[256], cmdid;
  1527.  
  1528.         tmp = strtok(cmdtext, idx);
  1529.         if(GetPlayerLevel(playerid) < 5) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1530.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "Use: /setname [ID] [NAME]");
  1531.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1532.         cmdid = strval(tmp);
  1533.  
  1534.         tmp2 = strtok(cmdtext, idx);
  1535.         if(!strlen(tmp2)) return SendClientMessage(playerid, red, "Use: /setname [ID] [NAME]");
  1536.  
  1537.         if(Untouch[cmdid] == 0) SetPlayerName(cmdid, tmp2);
  1538.  
  1539.         for(new i = 0; i < MAX_PLAYERS; i++)
  1540.         {
  1541.             if(GetPlayerLevel(i) > 0)
  1542.             {
  1543.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1544.                 GetPlayerName(playerid, aname, sizeof(aname));
  1545.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1546.                 SendClientMessage(i, green, lvlstring);
  1547.             }
  1548.         }
  1549.         return 1;
  1550.     }
  1551.  
  1552.     if(strcmp(cmd, "/vspawn", true, 10) == 0)
  1553.     {
  1554.         if(GetPlayerLevel(playerid) < 5) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1555.  
  1556.         new String[200];
  1557.         new tmp[256];
  1558.         new Float:x, Float:y, Float:z;
  1559.  
  1560.         tmp = strtok(cmdtext, idx);
  1561.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You diden't give a vehicle name");
  1562.  
  1563.         new vehicle = GetVehicleModelIDFromName(tmp);
  1564.  
  1565.         if(vehicle < 400 || vehicle > 611) return SendClientMessage(playerid, red, "That vehicle name was not found");
  1566.  
  1567.         new Float:a;
  1568.         GetPlayerFacingAngle(playerid, a);
  1569.         GetPlayerPos(playerid, x, y, z);
  1570.  
  1571.         if(PlayerHasVehicle[playerid] == 1)
  1572.         {
  1573.             if(GetPlayerVehicleID(playerid) == PlayersVehicle2[playerid])
  1574.             {
  1575.                 CheckVar = playerid;
  1576.                 InVehicleCheck();
  1577.             }
  1578.         }
  1579.  
  1580.         if(IsPlayerInAnyVehicle(playerid) == 1)
  1581.         {
  1582.             GetXYInFrontOfPlayer(playerid, x, y, 8);
  1583.         }
  1584.         else
  1585.         {
  1586.             GetXYInFrontOfPlayer(playerid, x, y, 5);
  1587.         }
  1588.  
  1589.         DestroyVehicle(PlayersVehicle2[CheckVar]);
  1590.  
  1591.         PlayerHasVehicle[playerid] = 1;
  1592.         PlayersVehicle2[playerid] = CreateVehicle(vehicle, x, y, z, a+90, -1, -1, -1);
  1593.         LinkVehicleToInterior(PlayersVehicle2[playerid], GetPlayerInterior(playerid));
  1594.  
  1595.         format(String, sizeof(String), "You have spawned a %s", aVehicleNames[vehicle - 400]);
  1596.         SendClientMessage(playerid, green, String);
  1597.  
  1598.         for(new i = 0; i < MAX_PLAYERS; i++)
  1599.         {
  1600.             if(GetPlayerLevel(i) > 0)
  1601.             {
  1602.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1603.                 GetPlayerName(playerid, aname, sizeof(aname));
  1604.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1605.                 SendClientMessage(i, green, lvlstring);
  1606.             }
  1607.         }
  1608.         return 1;
  1609.     }
  1610.  
  1611.     if(strcmp("/fakemsg", cmd, true) == 0)
  1612.     {
  1613.         if(GetPlayerLevel(playerid) < 5) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1614.  
  1615.         new tmp[256], tmp2[256], cmdid;
  1616.  
  1617.         tmp = strtok(cmdtext, idx);
  1618.         if(GetPlayerLevel(playerid) < 4) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1619.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "Use: /fakemsg [ID] [MSG]");
  1620.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1621.         cmdid = strval(tmp);
  1622.  
  1623.         tmp2 = strtok(cmdtext, idx);
  1624.         if(!strlen(tmp2)) return SendClientMessage(playerid, red, "Use: /fakemsg [ID] [MSG]");
  1625.  
  1626.         if(Untouch[cmdid] == 0)
  1627.         {
  1628.             if(cmdid >= 0 && cmdid <= 9)
  1629.             {
  1630.                 SendPlayerMessageToAll(cmdid, cmdtext[11]);
  1631.             }
  1632.             else if(cmdid >= 10 && cmdid <= 99)
  1633.             {
  1634.                 SendPlayerMessageToAll(cmdid, cmdtext[12]);
  1635.             }
  1636.             else if(cmdid >= 100 && cmdid <= 150)
  1637.             {
  1638.                 SendPlayerMessageToAll(cmdid, cmdtext[23]);
  1639.             }
  1640.         }
  1641.  
  1642.         for(new i = 0; i < MAX_PLAYERS; i++)
  1643.         {
  1644.             if(GetPlayerLevel(i) > 0)
  1645.             {
  1646.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1647.                 GetPlayerName(playerid, aname, sizeof(aname));
  1648.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1649.                 SendClientMessage(i, green, lvlstring);
  1650.             }
  1651.         }
  1652.         return 1;
  1653.     }
  1654.  
  1655.     if(strcmp("/fakeme", cmd, true) == 0)
  1656.     {
  1657.         if(GetPlayerLevel(playerid) < 5) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1658.  
  1659.         new tmp[256], tmp2[256], cmdid;
  1660.         tmp = strtok(cmdtext, idx);
  1661.         if(GetPlayerLevel(playerid) < 4) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1662.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "Use: /fakeme [ID] [MSG]");
  1663.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1664.         cmdid = strval(tmp);
  1665.  
  1666.         tmp2 = strtok(cmdtext, idx);
  1667.         if(!strlen(tmp2)) return SendClientMessage(playerid, red, "Use: /fakeme [ID] [MSG]");
  1668.        
  1669.         if(Untouch[cmdid] == 0)
  1670.         {
  1671.             if(cmdid >= 0 && cmdid <= 9)
  1672.             {
  1673.                 new str[256], pname[MAX_PLAYER_NAME];
  1674.                 GetPlayerName(cmdid, pname, sizeof(pname));
  1675.                 format(str, 256, "%s %s", pname, cmdtext[10]);
  1676.                 SendClientMessageToAll(0xFFFF00AA, str);
  1677.             }
  1678.             else if(cmdid >= 10 && cmdid <= 99)
  1679.             {
  1680.                 new str[256], pname[MAX_PLAYER_NAME];
  1681.                 GetPlayerName(cmdid, pname, sizeof(pname));
  1682.                 format(str, 256, "%s %s", pname, cmdtext[11]);
  1683.                 SendClientMessageToAll(0xFFFF00AA, str);
  1684.             }
  1685.             else if(cmdid >= 100 && cmdid <= 150)
  1686.             {
  1687.                 new str[256], pname[MAX_PLAYER_NAME];
  1688.                 GetPlayerName(cmdid, pname, sizeof(pname));
  1689.                 format(str, 256, "%s %s", pname, cmdtext[12]);
  1690.                 SendClientMessageToAll(0xFFFF00AA, str);
  1691.             }
  1692.         }
  1693.  
  1694.         for(new i = 0; i < MAX_PLAYERS; i++)
  1695.         {
  1696.             if(GetPlayerLevel(i) > 0)
  1697.             {
  1698.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1699.                 GetPlayerName(playerid, aname, sizeof(aname));
  1700.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1701.                 SendClientMessage(i, green, lvlstring);
  1702.             }
  1703.         }
  1704.         return 1;
  1705.     }
  1706.  
  1707.     if(strcmp("/getin", cmd, true) == 0)
  1708.     {
  1709.         new tmp[256], cmdid;
  1710.  
  1711.         tmp = strtok(cmdtext, idx);
  1712.         if(GetPlayerLevel(playerid) < 1) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1713.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  1714.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not explode yourself");
  1715.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1716.         cmdid = strval(tmp);
  1717.  
  1718.         new vid = GetPlayerVehicleID(cmdid);
  1719.         PutPlayerInVehicle(playerid, vid, 1);
  1720.  
  1721.         for(new i = 0; i < MAX_PLAYERS; i++)
  1722.         {
  1723.             if(GetPlayerLevel(i) > 0)
  1724.             {
  1725.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1726.                 GetPlayerName(playerid, aname, sizeof(aname));
  1727.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1728.                 SendClientMessage(i, green, lvlstring);
  1729.             }
  1730.         }
  1731.         return 1;
  1732.     }
  1733.  
  1734.     if(strcmp("/getout", cmdtext, true) == 0)
  1735.     {
  1736.         if(GetPlayerLevel(playerid) < 1) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1737.         new Float:x, Float:y, Float:z;
  1738.         GetPlayerPos(playerid, x, y, z);
  1739.         SetPlayerPos(playerid, x, y, z+2);
  1740.  
  1741.         for(new i = 0; i < MAX_PLAYERS; i++)
  1742.         {
  1743.             if(GetPlayerLevel(i) > 0)
  1744.             {
  1745.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1746.                 GetPlayerName(playerid, aname, sizeof(aname));
  1747.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1748.                 SendClientMessage(i, green, lvlstring);
  1749.             }
  1750.         }
  1751.         return 1;
  1752.     }
  1753.  
  1754.     if(strcmp("/dump", cmd, true) == 0)
  1755.     {
  1756.         new tmp[256], cmdid;
  1757.  
  1758.         tmp = strtok(cmdtext, idx);
  1759.         if(GetPlayerLevel(playerid) < 1) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1760.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  1761.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1762.         cmdid = strval(tmp);
  1763.  
  1764.         if(Untouch[cmdid] == 0) Teleport(cmdid, 10000, 10000, 2, 0, 0);
  1765.  
  1766.         for(new i = 0; i < MAX_PLAYERS; i++)
  1767.         {
  1768.             if(GetPlayerLevel(i) > 0)
  1769.             {
  1770.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1771.                 GetPlayerName(playerid, aname, sizeof(aname));
  1772.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1773.                 SendClientMessage(i, green, lvlstring);
  1774.             }
  1775.         }
  1776.         return 1;
  1777.     }
  1778.    
  1779.     if(strcmp("/akill", cmd, true) == 0)
  1780.     {
  1781.         new tmp[256], cmdid;
  1782.  
  1783.         tmp = strtok(cmdtext, idx);
  1784.         if(GetPlayerLevel(playerid) < 2) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1785.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not put in an id");
  1786.         if(strval(tmp) == playerid) return SendClientMessage(playerid, red, "You can not akill yourself");
  1787.         if(IsPlayerConnected(strval(tmp)) == 0) return SendClientMessage(playerid, red, "That player is not connected");
  1788.         cmdid = strval(tmp);
  1789.  
  1790.         if(Untouch[cmdid] == 0) SetPlayerHealth(playerid, 0);
  1791.  
  1792.         for(new i = 0; i < MAX_PLAYERS; i++)
  1793.         {
  1794.             if(GetPlayerLevel(i) > 0)
  1795.             {
  1796.                 new lvlstring[256], aname[MAX_PLAYER_NAME];
  1797.                 GetPlayerName(playerid, aname, sizeof(aname));
  1798.                 format(lvlstring, sizeof(lvlstring), "(( Admin \"%s\" has done the command \"%s\" ))", aname, cmdtext[0]);
  1799.                 SendClientMessage(i, green, lvlstring);
  1800.             }
  1801.         }
  1802.         return 1;
  1803.     }
  1804.    
  1805.     if(strcmp("/say", cmd, true) == 0)
  1806.     {
  1807.         new tmp[256];
  1808.         tmp = strtok(cmdtext, idx);
  1809.         if(GetPlayerLevel(playerid) < 1) return SendClientMessage(playerid, red, "You are not permitted to use this");
  1810.         if(!strlen(tmp)) return SendClientMessage(playerid, red, "You did not add a message");
  1811.        
  1812.         new string[256], pname[MAX_PLAYER_NAME];
  1813.         GetPlayerName(playerid, pname, sizeof(pname));
  1814.         format(string, sizeof(string), "Admin %s: %s", pname, cmdtext[5]);
  1815.         SendClientMessageToAll(cyan, string);
  1816.         return 1;
  1817.     }
  1818.  
  1819.     if(strcmp("/untouch", cmdtext, true) == 0)
  1820.     {
  1821.         if(IsPlayerAdmin(playerid) == 1)
  1822.         {
  1823.             Untouch[playerid] = 1;
  1824.         }
  1825.     }
  1826.    
  1827.     if(strcmp("/stats", cmdtext, true) == 0)
  1828.     {
  1829.         if(logged[playerid] == 0) return SendClientMessage(playerid, red, "You are not logged in");
  1830.    
  1831.         SendClientMessage(playerid, green, "..::STATS::..");
  1832.    
  1833.         new string[256];
  1834.         if(GetPlayerLevel(playerid) > 0)
  1835.         {
  1836.             format(string, sizeof(string), "Level: %d", dUserINT(PlayerName(playerid)).("level"));
  1837.             SendClientMessage(playerid, cyan, string);
  1838.         }
  1839.        
  1840.         format(string, sizeof(string), "Level: %d", dUserINT(PlayerName(playerid)).("level"));
  1841.         SendClientMessage(playerid, cyan, string);
  1842.        
  1843.         format(string, sizeof(string), "Money: %d", dUserINT(PlayerName(playerid)).("money"));
  1844.         SendClientMessage(playerid, cyan, string);
  1845.        
  1846.         format(string, sizeof(string), "Score: %d", dUserINT(PlayerName(playerid)).("score"));
  1847.         SendClientMessage(playerid, cyan, string);
  1848.        
  1849.         format(string, sizeof(string), "Kills: %d", dUserINT(PlayerName(playerid)).("kills"));
  1850.         SendClientMessage(playerid, cyan, string);
  1851.        
  1852.         format(string, sizeof(string), "Deaths: %d", dUserINT(PlayerName(playerid)).("deaths"));
  1853.         SendClientMessage(playerid, cyan, string);
  1854.         return 1;
  1855.     }
  1856.     return 0;
  1857. }
  1858.  
  1859. public ResetSpeach(playerid)
  1860. {
  1861.     Speach[playerid] = 0;
  1862. }
  1863.  
  1864. //config
  1865.  
  1866. RangeBan(playerid) //just so I don't have to add more credits
  1867. {
  1868.     new pos, oldpos, ip[15], ip2[15], tmp[21];
  1869.  
  1870.     GetPlayerIp(playerid, ip, sizeof(ip));
  1871.  
  1872.     pos = strfind(ip, ".", true);
  1873.     pos++;
  1874.  
  1875.     for(new i = 0; i < pos; i++)
  1876.     {
  1877.         ip2[i] = ip[pos-pos+i];
  1878.     }
  1879.  
  1880.     pos--;
  1881.  
  1882.     ip[pos] = ' ';
  1883.  
  1884.     oldpos = pos;
  1885.     oldpos++;
  1886.  
  1887.     pos = strfind(ip, ".", true);
  1888.     pos++;
  1889.  
  1890.     for(new i = oldpos; i < pos; i++)
  1891.     {
  1892.         ip2[i] = ip[pos-pos+i];
  1893.     }
  1894.  
  1895.     format(ip2, sizeof(ip2), "%s*.*", ip2);
  1896.     format(tmp, sizeof(tmp), "banip %s", ip2);
  1897.  
  1898.     SendRconCommand(tmp);
  1899.     return ip2;
  1900. }
  1901.  
  1902. Teleport(playerid, Float:x, Float:y, Float:z, Float:a, i)
  1903. {
  1904.     SetPlayerInterior(playerid, i);
  1905.     SetCameraBehindPlayer(playerid);
  1906.     ResetPlayerWeapons(playerid);
  1907.  
  1908.     if(IsPlayerInAnyVehicle(playerid) == 1)
  1909.     {
  1910.         SetVehiclePos(GetPlayerVehicleID(playerid), x, y, z);
  1911.         SetVehicleZAngle(GetPlayerVehicleID(playerid), a);
  1912.         LinkVehicleToInterior(GetPlayerVehicleID(playerid), i);
  1913.     }
  1914.     else
  1915.     {
  1916.         SetPlayerPos(playerid, x, y, z);
  1917.         SetPlayerFacingAngle(playerid, a);
  1918.     }
  1919. }
  1920.  
  1921. stock GetXYInFrontOfPlayer(playerid, &Float:x, &Float:y, Float:distance)
  1922. {
  1923.     new Float:a;
  1924.  
  1925.     GetPlayerPos(playerid, x, y, a);
  1926.     GetPlayerFacingAngle(playerid, a);
  1927.  
  1928.     if(GetPlayerVehicleID(playerid))
  1929.     {
  1930.         GetVehicleZAngle(GetPlayerVehicleID(playerid), a);
  1931.     }
  1932.  
  1933.     x += (distance * floatsin(-a, degrees));
  1934.     y += (distance * floatcos(-a, degrees));
  1935. }
  1936.  
  1937. TeleportPlayer(playerid, Float:x, Float:y, Float:z, Float:a, i)
  1938. {
  1939.     SetPlayerPos(playerid, x, y, z);
  1940.     SetPlayerFacingAngle(playerid, a);
  1941.     SetPlayerInterior(playerid, i);
  1942.     SetCameraBehindPlayer(playerid);
  1943.     ResetPlayerWeapons(playerid);
  1944. }
  1945.  
  1946. GetPlayerIDFromName(pname[])
  1947. {
  1948.     for(new i = 0; i < MAX_PLAYERS; i++)
  1949.     {
  1950.         new playername[MAX_PLAYER_NAME];
  1951.         GetPlayerName(i, playername, sizeof(playername));
  1952.         if(strfind(playername, pname, true) != -1)
  1953.         return i + 0;
  1954.     }
  1955.     return -1;
  1956. }
  1957.  
  1958. InVehicleCheck()
  1959. {
  1960.     new Float:x, Float:y, Float:z;
  1961.  
  1962.     for(new i = 0; i < MAX_PLAYERS; i++)
  1963.     {
  1964.         if(GetPlayerVehicleID(i) == PlayersVehicle2[CheckVar])
  1965.         {
  1966.             GetPlayerPos(i, x, y, z);
  1967.             SetPlayerPos(i, x, y, z);
  1968.         }
  1969.     }
  1970. }
  1971.  
  1972. GetVehicleModelIDFromName(vname[])
  1973. {
  1974.     for(new i = 0; i < 211; i++)
  1975.     {
  1976.         if(strfind(aVehicleNames[i], vname, true) != -1)
  1977.         return i + 400;
  1978.     }
  1979.     return -1;
  1980. }
  1981.  
  1982. SetPlayerLevel(playerid, lvl)
  1983. {
  1984.     level[playerid] = lvl;
  1985.     return level[playerid];
  1986. }
  1987.  
  1988. GetPlayerLevel(playerid)
  1989. {
  1990.     return level[playerid];
  1991. }
  1992.  
  1993. TogglePlayerWired(playerid, toggle)
  1994. {
  1995.     wire[playerid] = toggle;
  1996.     return wire[playerid];
  1997. }
  1998.  
  1999. GetPlayerWired(playerid)
  2000. {
  2001.     return wire[playerid];
  2002. }
  2003.  
  2004. TogglePlayerJailed(playerid, toggel)
  2005. {
  2006.     jail[playerid] = toggel;
  2007.     return jail[playerid];
  2008. }
  2009.  
  2010. GetPlayerJailed(playerid)
  2011. {
  2012.     return jail[playerid];
  2013. }
  2014.  
  2015. PlayerName(playerid)
  2016. {
  2017.     new name[255];
  2018.     GetPlayerName(playerid, name, 255);
  2019.     return name;
  2020. }
Advertisement
Add Comment
Please, Sign In to add comment