Guest User

Errors in script

a guest
Oct 10th, 2012
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 158.41 KB | None | 0 0
  1. /*///////////////////
  2. MWFFA - New Script
  3.  
  4. Work Started on June 18, 2012
  5.  
  6. *//////////////////
  7.  
  8. #include <a_samp>
  9. #include <streamer>
  10. #include <irc>
  11. #include <YSI/y_ini>
  12.  
  13. //Path
  14. #define PATH "MWFFA/Accounts/%s.ini"
  15.  
  16. //Teams
  17. #define TEAM_DELTA 1
  18. #define TEAM_SPETSNAZ 2
  19. #define TEAM_GIGN 3
  20. #define TEAM_IA 4
  21. #define TEAM_JSDF 5
  22.  
  23. //Dialogs
  24. #define DIALOG_CTEAM   8343
  25. #define DIALOG_SCLASS   10211
  26. #define DIALOG_SSTEAM   3893
  27. #define DIALOG_LOGIN   28385
  28. #define DIALOG_LOGIN_2   16349
  29. #define DIALOG_REGISTER   2656
  30. #define DIALOG_REGISTER_2   22829
  31. #define DIALOG_OPTION   32311
  32. #define DIALOG_ALI   14170
  33. #define DIALOG_BONUS   4477
  34. #define DIALOG_MODS   21471
  35. #define DIALOG_MODS1   27387
  36. #define DIALOG_HELP   20532
  37. #define DIALOG_H_OBJ   18174
  38. #define DIALOG_H_BOMB 45901
  39. #define DIALOG_H_SS   2717
  40. #define DIALOG_H_RB   9222
  41.  
  42. //IRC Stuff
  43. #define IRC_SERVER "irc.mibbit.net"
  44. #define IRC_PORT (6667)
  45. #define IRC_CHANNEL "#MWFFA"
  46.  
  47. #define BOT_1_NICKNAME "Overlord"
  48. #define BOT_1_REALNAME "SA-MP Bot"
  49. #define BOT_1_USERNAME "Overlord_1"
  50.  
  51. #define MAX_BOTS (1)
  52.  
  53. new gBotID[MAX_BOTS], gGroupID;
  54.  
  55. //Takeover Timers
  56. new TT[MAX_PLAYERS];
  57. new T2[MAX_PLAYERS];
  58. new T3[MAX_PLAYERS];
  59. new T4[MAX_PLAYERS];
  60. new T5[MAX_PLAYERS];
  61.  
  62. //UDB Hash
  63. stock udb_hash(buf[])
  64. {
  65.     new length=strlen(buf);
  66.     new s1 = 1;
  67.     new s2 = 0;
  68.     new n;
  69.     for (n=0; n<length; n++)
  70.     {
  71.        s1 = (s1 + buf[n]) % 65521;
  72.        s2 = (s2 + s1)     % 65521;
  73.     }
  74.     return (s2 << 16) + s1;
  75. }
  76.  
  77. //Defines
  78. #define MAX_ZONES 50
  79.  
  80. //Colors
  81. #define COLOR_RED 0xFF0000FF
  82. #define COLOR_RED_2 0xA00000FF
  83. #define COLOR_YELLOW 0xFFFF00FF
  84. #define COLOR_PINK 0xFF00FFFF
  85. #define COLOR_GREEN 0x00FF00FF
  86. #define COLOR_AQUA 0x00FFFFFF
  87. #define COLOR_BLACK 0x000000FF
  88. #define COLOR_BLUE 0x0000FFFF
  89.  
  90. //Skins
  91. #define SKIN_TORENO 295
  92. #define SKIN_WUZIMU 294
  93. #define SKIN_USA 287
  94. #define SKIN_RUSSIA 179
  95. #define SKIN_GIGN 285
  96. #define SKIN_IA 254
  97. #define SKIN_JSDF 57
  98.  
  99. //Zones
  100. #define Z_KACC 0
  101. #define Z_SCHOOL 1
  102. #define Z_PIER 2
  103. #define Z_DOCK 3
  104. #define Z_AT 4
  105. #define Z_EAR 5
  106. #define Z_FTW 6
  107. #define Z_SFARM 7
  108. #define Z_TPARK 8
  109.  
  110. //Checkpoints
  111. new CP_KACC;
  112. new CP_AT;
  113. new CP_EAR;
  114. new CP_FTW;
  115. new CP_SFARM;
  116.  
  117. //Homebases
  118. new Z_USA;
  119. new Z_USA_1;
  120. new Z_RUSSIA;
  121.  
  122. //Forwards
  123. forward ASKOff(playerid);
  124.  
  125. //Enums
  126. enum kInfo
  127. {
  128.     HasStreak,
  129.     HasPackage,
  130.     HasStrike,
  131.     HasGunner,
  132.     HasTank,
  133.     HasJug,
  134.     HasNuke,
  135.     Streak
  136. }
  137. new StreakInfo[MAX_PLAYERS][kInfo];
  138.  
  139. new O_BASE;
  140.  
  141. enum pInfo
  142. {
  143.     Adv,
  144.     Password,
  145.     Cash,
  146.     LoggedIn,
  147.     Score,
  148.     Admin,
  149.     Operator,
  150.     Rank,
  151.     Xp,
  152.     Protected,
  153.     CapturingZone,
  154.     Connects,
  155.     Disconnects,
  156.     LoginAttempts,
  157.     Kills,
  158.     Deaths,
  159.     LastOn,
  160.     RegisterDate,
  161.     RegisterTime,
  162.     Streak,
  163.     InOBase,
  164.     InABase
  165. }
  166. new PlayerInfo[MAX_PLAYERS][pInfo];
  167.  
  168. //Class Variables
  169. new IsSoldier[MAX_PLAYERS];
  170. new IsSniper[MAX_PLAYERS];
  171. new IsMedic[MAX_PLAYERS];
  172. new IsEngineer[MAX_PLAYERS];
  173. new IsPilot[MAX_PLAYERS];
  174. new IsFlamethrower[MAX_PLAYERS];
  175. new IsSpy[MAX_PLAYERS];
  176. new IsScout[MAX_PLAYERS];
  177. new IsPlaneDriver[MAX_PLAYERS];
  178. new IsHeliDriver[MAX_PLAYERS];
  179. new IsGeneral[MAX_PLAYERS];
  180. new IsVIP[MAX_PLAYERS];
  181. new IsAdmin[MAX_PLAYERS];
  182. new IsOwner[MAX_PLAYERS];
  183.  
  184. //Capture var
  185. new UnderAttack[50];
  186. new Zone[50];
  187. new CapturedBy[50]; // 0 ( none ) 1 ( Delta ) 2 ( Russia ) 3 - GIGN | 4 - Italian Army | 5 - JSDF
  188.  
  189. //UserPath
  190. stock UserPath(playerid)
  191. {
  192.     new string[128],playername[MAX_PLAYER_NAME];
  193.     GetPlayerName(playerid,playername,sizeof(playername));
  194.     format(string, sizeof(string),PATH,playername);
  195.     return string;
  196. }
  197.  
  198. #define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
  199.  
  200.  
  201. //VehicleNames
  202. new VehicleNames[212][] = {
  203. {"Landstalker"},{"Bravura"},{"Buffalo"},{"Linerunner"},{"Perrenial"},{"Sentinel"},{"Dumper"},
  204. {"Firetruck"},{"Trashmaster"},{"Stretch"},{"Manana"},{"Infernus"},{"Voodoo"},{"Pony"},{"Mule"},
  205. {"Cheetah"},{"Ambulance"},{"Leviathan"},{"Moonbeam"},{"Esperanto"},{"Taxi"},{"Washington"},
  206. {"Bobcat"},{"Mr Whoopee"},{"BF Injection"},{"Hunter"},{"Premier"},{"Enforcer"},{"Securicar"},
  207. {"Banshee"},{"Predator"},{"Bus"},{"Rhino"},{"Barracks"},{"Hotknife"},{"Trailer 1"},{"Previon"},
  208. {"Coach"},{"Cabbie"},{"Stallion"},{"Rumpo"},{"RC Bandit"},{"Romero"},{"Packer"},{"Monster"},
  209. {"Admiral"},{"Squalo"},{"Seasparrow"},{"Pizzaboy"},{"Tram"},{"Trailer 2"},{"Turismo"},
  210. {"Speeder"},{"Reefer"},{"Tropic"},{"Flatbed"},{"Yankee"},{"Caddy"},{"Solair"},{"Berkley's RC Van"},
  211. {"Skimmer"},{"PCJ-600"},{"Faggio"},{"Freeway"},{"RC Baron"},{"RC Raider"},{"Glendale"},{"Oceanic"},
  212. {"Sanchez"},{"Sparrow"},{"Patriot"},{"Quad"},{"Coastguard"},{"Dinghy"},{"Hermes"},{"Sabre"},
  213. {"Rustler"},{"ZR-350"},{"Walton"},{"Regina"},{"Comet"},{"BMX"},{"Burrito"},{"Camper"},{"Marquis"},
  214. {"Baggage"},{"Dozer"},{"Maverick"},{"News Chopper"},{"Rancher"},{"FBI Rancher"},{"Virgo"},{"Greenwood"},
  215. {"Jetmax"},{"Hotring"},{"Sandking"},{"Blista Compact"},{"Police Maverick"},{"Boxville"},{"Benson"},
  216. {"Mesa"},{"RC Goblin"},{"Hotring Racer A"},{"Hotring Racer B"},{"Bloodring Banger"},{"Rancher"},
  217. {"Super GT"},{"Elegant"},{"Journey"},{"Bike"},{"Mountain Bike"},{"Beagle"},{"Cropdust"},{"Stunt"},
  218. {"Tanker"}, {"Roadtrain"},{"Nebula"},{"Majestic"},{"Buccaneer"},{"Shamal"},{"Hydra"},{"FCR-900"},
  219. {"NRG-500"},{"HPV1000"},{"Cement Truck"},{"Tow Truck"},{"Fortune"},{"Cadrona"},{"FBI Truck"},
  220. {"Willard"},{"Forklift"},{"Tractor"},{"Combine"},{"Feltzer"},{"Remington"},{"Slamvan"},
  221. {"Blade"},{"Freight"},{"Streak"},{"Vortex"},{"Vincent"},{"Bullet"},{"Clover"},{"Sadler"},
  222. {"Firetruck LA"},{"Hustler"},{"Intruder"},{"Primo"},{"Cargobob"},{"Tampa"},{"Sunrise"},{"Merit"},
  223. {"Utility"},{"Nevada"},{"Yosemite"},{"Windsor"},{"Monster A"},{"Monster B"},{"Uranus"},{"Jester"},
  224. {"Sultan"},{"Stratum"},{"Elegy"},{"Raindance"},{"RC Tiger"},{"Flash"},{"Tahoma"},{"Savanna"},
  225. {"Bandito"},{"Freight Flat"},{"Streak Carriage"},{"Kart"},{"Mower"},{"Duneride"},{"Sweeper"},
  226. {"Broadway"},{"Tornado"},{"AT-400"},{"DFT-30"},{"Huntley"},{"Stafford"},{"BF-400"},{"Newsvan"},
  227. {"Tug"},{"Trailer 3"},{"Emperor"},{"Wayfarer"},{"Euros"},{"Hotdog"},{"Club"},{"Freight Carriage"},
  228. {"Trailer 3"},{"Andromada"},{"Dodo"},{"RC Cam"},{"Launch"},{"Police Car (LSPD)"},{"Police Car (SFPD)"},
  229. {"Police Car (LVPD)"},{"Police Ranger"},{"Picador"},{"S.W.A.T. Van"},{"Alpha"},{"Phoenix"},{"Glendale"},
  230. {"Sadler"},{"Luggage Trailer A"},{"Luggage Trailer B"},{"Stair Trailer"},{"Boxville"},{"Farm Plow"},
  231. {"Utility Trailer"}
  232. };
  233.  
  234. main()
  235. {
  236.     print("\n----------------------------------");
  237.     print("------- MWFFA Script Loaded --------");
  238.     print("----------------------------------\n");
  239. }
  240.  
  241.  
  242. public OnGameModeInit()
  243. {
  244.     // Don't use these lines if it's a filterscript
  245.     SetGameModeText("MWFFA - World War lll");
  246.  
  247.     O_BASE = GangZoneCreate(-735.7062, 887.5186, -607.2495, 1015.975);
  248.  
  249.     //Zones
  250.     Zone[Z_KACC] = GangZoneCreate(2438.989, 2560.181, 2782.616, 2885.098);
  251.     Zone[Z_SCHOOL] = GangZoneCreate(-2197.686, -281.7203, -2008.414, -68.69224);
  252.     Zone[Z_PIER] = GangZoneCreate(368.0286, -2116.114, 470.7051, -1666.071);
  253.     Zone[Z_DOCK] = GangZoneCreate(2353.109, -2720.118, 2843.675, -2321.396);
  254.     Zone[Z_AT] = GangZoneCreate(-490.4708, 2160.407, -315.3026, 2277.186);
  255.     Zone[Z_EAR] = GangZoneCreate(-420.4035, 1471.412, -233.5575, 1658.258);
  256.     Zone[Z_FTW] = GangZoneCreate(-665.6389, -595.5717, -420.4035, -432.0814);
  257.     Zone[Z_SFARM] = GangZoneCreate(-93.423, 2323.897, -11.67788, 2382.287);
  258.     Zone[Z_TPARK] = GangZoneCreate(-969.2637, -548.8602, -899.1964, -478.7929);
  259.  
  260.     //Homebases
  261.     Z_USA = GangZoneCreate(-151.8124, 1588.191, 443.7593, 2137.051);
  262.     Z_USA_1 = GangZoneCreate(210.2018, 2393.964, 513.8265, 2615.844);
  263.     Z_RUSSIA = GangZoneCreate(-221.8796, -221.8796, 140.1345, 221.8796);
  264.  
  265.     //Checkpoints
  266.     CP_KACC = CreateDynamicCP(2523.6704, 2816.7717, 10.8203, 4.5);
  267.     CP_AT = CreateDynamicCP(-382.2279, 2236.2002, 42.0938, 4.5);
  268.     CP_EAR = CreateDynamicCP(-358.9403, 1581.3220, 76.3514, 4.5);
  269.     CP_FTW = CreateDynamicCP(-486.4570, -517.3078, 25.5178, 4.5);
  270.     CP_SFARM = CreateDynamicCP(-21.0489, 2343.7419, 24.1406, 4.5);
  271.  
  272.     //IRC
  273.     gBotID[0] = IRC_Connect(IRC_SERVER, IRC_PORT, BOT_1_NICKNAME, BOT_1_REALNAME, BOT_1_USERNAME);
  274.     IRC_SetIntData(gBotID[0], E_IRC_CONNECT_DELAY, 20);
  275.     gGroupID = IRC_CreateGroup();
  276.  
  277.     CapturedBy[Z_KACC] = 0;
  278.     CapturedBy[Z_SCHOOL] = 0;
  279.     CapturedBy[Z_DOCK] = 0;
  280.     CapturedBy[Z_AT] = 0;
  281.     CapturedBy[Z_EAR] = 0;
  282.     CapturedBy[Z_SFARM] = 0;
  283.     CapturedBy[Z_FTW] = 0;
  284.  
  285.     //Random Messages
  286.     SetTimer("RM",90000,true);
  287.  
  288.     //Map
  289.     AddStaticVehicleEx(470,-1544.40002441,407.10000610,7.19999981,92.00000000,-1,-1,15); //Patriot
  290.     AddStaticVehicleEx(595,-1212.80004883,447.20001221,0.00000000,0.00000000,-1,-1,15); //Launch
  291.     AddStaticVehicleEx(595,-1451.90002441,507.89999390,0.00000000,89.75000000,-1,-1,15); //Launch
  292.     AddStaticVehicleEx(473,-1452.59997559,497.20001221,0.00000000,94.00000000,-1,-1,15); //Dinghy
  293.     AddStaticVehicleEx(539,-1824.19995117,547.20001221,234.50000000,0.00000000,-1,-1,15); //Vortex
  294.     AddStaticVehicleEx(494,-1800.50000000,536.40002441,234.89999390,0.00000000,-1,-1,15); //Hotring
  295.     AddStaticVehicleEx(487,1164.09997559,-2050.10009766,69.30000305,0.00000000,-1,-1,15); //Maverick
  296.     AddStaticVehicleEx(487,1145.09997559,-2049.60009766,69.30000305,0.00000000,-1,-1,15); //Maverick
  297.     AddStaticVehicleEx(470,1245.40002441,-2041.80004883,59.90000153,0.00000000,-1,-1,15); //Patriot
  298.     AddStaticVehicleEx(470,1250.90002441,-2041.90002441,59.90000153,0.00000000,-1,-1,15); //Patriot
  299.     AddStaticVehicleEx(470,1255.90002441,-2042.69995117,59.90000153,0.00000000,-1,-1,15); //Patriot
  300.     AddStaticVehicleEx(520,1194.19995117,-2052.19995117,70.30000305,0.00000000,-1,-1,15); //Hydra
  301.     AddStaticVehicleEx(520,1193.29980469,-2023.89941406,70.30000305,0.00000000,-1,-1,15); //Hydra
  302.     AddStaticVehicleEx(425,1144.40002441,-2018.80004883,70.80000305,0.00000000,-1,-1,15); //Hunter
  303.     AddStaticVehicleEx(425,1158.30004883,-2019.40002441,70.80000305,0.00000000,-1,-1,15); //Hunter
  304.     AddStaticVehicleEx(432,1246.09997559,-2014.09997559,59.90000153,179.99993896,-1,-1,15); //Rhino
  305.     AddStaticVehicleEx(432,1252.90002441,-2014.09997559,59.90000153,179.99450684,-1,-1,15); //Rhino
  306.     AddStaticVehicleEx(432,1260.19995117,-2014.09997559,59.90000153,179.99450684,-1,-1,15); //Rhino
  307.     AddStaticVehicleEx(432,1266.69995117,-2014.09997559,59.90000153,179.99450684,-1,-1,15); //Rhino
  308.     AddStaticVehicleEx(432,1272.90002441,-2014.09997559,59.90000153,179.99450684,-1,-1,15); //Rhino
  309.     AddStaticVehicleEx(432,1280.40002441,-2014.09997559,59.90000153,179.99450684,-1,-1,15); //Rhino
  310.     AddStaticVehicleEx(433,1271.30004883,-2040.80004883,59.70000076,0.00000000,-1,-1,15); //Barracks
  311.     AddStaticVehicleEx(433,1276.59997559,-2040.59997559,59.70000076,0.00000000,-1,-1,15); //Barracks
  312.     AddStaticVehicleEx(468,1245.30004883,-2066.69995117,59.79999924,0.00000000,-1,-1,15); //Sanchez
  313.     AddStaticVehicleEx(468,1242.59997559,-2066.50000000,59.79999924,0.00000000,-1,-1,15); //Sanchez
  314.     AddStaticVehicleEx(468,1247.19995117,-2066.80004883,59.79999924,0.00000000,-1,-1,15); //Sanchez
  315.     AddStaticVehicleEx(425,-1378.09997559,401.39999390,31.10000038,0.00000000,-1,-1,15); //Hunter
  316.     AddStaticVehicleEx(425,-1421.19995117,384.79998779,31.29999924,0.00000000,-1,-1,15); //Hunter
  317.     AddStaticVehicleEx(520,-1435.19995117,422.39999390,31.50000000,0.00000000,-1,-1,15); //Hydra
  318.     AddStaticVehicleEx(520,-1527.50000000,234.39999390,58.79999924,270.00000000,-1,-1,15); //Hydra
  319.     AddStaticVehicleEx(548,-1607.69995117,289.50000000,9.00000000,0.00000000,-1,-1,15); //Cargobob
  320.     AddStaticVehicleEx(548,-1640.00000000,288.29998779,9.00000000,86.00000000,-1,-1,15); //Cargobob
  321.     AddStaticVehicleEx(417,-1587.09997559,340.39999390,20.60000038,0.00000000,-1,-1,15); //Leviathan
  322.     AddStaticVehicleEx(445,-1576.00000000,368.00000000,7.19999981,358.00000000,-1,-1,15); //Admiral
  323.     AddStaticVehicleEx(432,-1564.59997559,366.70001221,7.19999981,0.00000000,-1,-1,15); //Rhino
  324.     AddStaticVehicleEx(432,-1556.59997559,366.10000610,7.19999981,0.00000000,-1,-1,15); //Rhino
  325.     AddStaticVehicleEx(432,-1550.09997559,365.79998779,7.19999981,0.00000000,-1,-1,15); //Rhino
  326.     AddStaticVehicleEx(427,-1532.30004883,417.10000610,7.40000010,0.00000000,-1,1,15); //Enforcer
  327.     AddStaticVehicleEx(445,-1596.00000000,363.19921875,7.19999981,357.99499512,-1,-1,15); //Admiral
  328.     AddStaticVehicleEx(470,-1544.30004883,393.00000000,7.19999981,92.00000000,-1,-1,15); //Patriot
  329.     AddStaticVehicleEx(470,-1543.69995117,379.70001221,7.19999981,91.99951172,-1,-1,15); //Patriot
  330.     AddStaticVehicleEx(476,-1185.80004883,413.29998779,8.60000038,346.00000000,-1,-1,15); //Rustler
  331.     AddStaticVehicleEx(476,-1167.69995117,407.89999390,8.60000038,345.99792480,-1,-1,15); //Rustler
  332.     AddStaticVehicleEx(425,356.39999390,1936.09997559,21.10000038,272.00000000,-1,-1,15); //Hunter
  333.     AddStaticVehicleEx(425,350.59960938,1965.59960938,21.10000038,271.99951172,-1,-1,15); //Hunter
  334.     AddStaticVehicleEx(520,335.10000610,1873.40002441,19.00000000,86.00000000,-1,-1,15); //Hydra
  335.     AddStaticVehicleEx(520,294.29998779,1796.69995117,19.00000000,335.99267578,-1,-1,15); //Hydra
  336.     AddStaticVehicleEx(520,318.79998779,1796.09997559,19.00000000,17.98937988,-1,-1,15); //Hydra
  337.     AddStaticVehicleEx(520,324.79998779,2068.50000000,19.00000000,359.98937988,-1,-1,15); //Hydra
  338.     AddStaticVehicleEx(447,198.80000305,1895.09997559,17.70000076,0.00000000,-1,-1,15); //Seasparrow
  339.     AddStaticVehicleEx(447,226.19921875,1894.50000000,17.70000076,0.00000000,-1,-1,15); //Seasparrow
  340.     AddStaticVehicleEx(425,152.89999390,1814.69995117,18.60000038,0.00000000,-1,-1,15); //Hunter
  341.     AddStaticVehicleEx(425,143.30000305,1814.30004883,18.60000038,0.00000000,-1,-1,15); //Hunter
  342.     AddStaticVehicleEx(425,132.10000610,1815.40002441,18.60000038,0.00000000,-1,-1,15); //Hunter
  343.     AddStaticVehicleEx(548,148.89999390,1960.40002441,21.29999924,0.00000000,-1,-1,15); //Cargobob
  344.     AddStaticVehicleEx(476,81.09999847,1925.90002441,18.79999924,88.00000000,-1,-1,15); //Rustler
  345.     AddStaticVehicleEx(476,79.50000000,1873.50000000,18.79999924,87.99499512,-1,-1,15); //Rustler
  346.     AddStaticVehicleEx(432,185.00000000,1951.90002441,17.89999962,0.75000000,-1,-1,15); //Rhino
  347.     AddStaticVehicleEx(432,170.10000610,1951.90002441,18.50000000,0.74707031,-1,-1,15); //Rhino
  348.     AddStaticVehicleEx(432,176.59960938,1951.59960938,18.20000076,0.74707031,-1,-1,15); //Rhino
  349.     AddStaticVehicleEx(432,163.69999695,1950.19995117,18.70000076,0.74707031,-1,-1,15); //Rhino
  350.     AddStaticVehicleEx(470,279.00000000,1949.50000000,17.70000076,277.99993896,-1,-1,15); //Patriot
  351.     AddStaticVehicleEx(470,280.20001221,1955.90002441,17.70000076,273.99804688,-1,-1,15); //Patriot
  352.     AddStaticVehicleEx(470,281.39999390,1962.30004883,17.70000076,249.99353027,-1,-1,15); //Patriot
  353.     AddStaticVehicleEx(432,280.39999390,1984.50000000,17.70000076,272.00000000,-1,-1,15); //Rhino
  354.     AddStaticVehicleEx(432,281.39999390,1990.69995117,17.70000076,271.99951172,-1,-1,15); //Rhino
  355.     AddStaticVehicleEx(432,282.39999390,1997.09997559,17.70000076,247.99951172,-1,-1,15); //Rhino
  356.     AddStaticVehicleEx(476,280.60000610,2023.80004883,18.79999924,266.00000000,-1,-1,15); //Rustler
  357.     AddStaticVehicleEx(425,-2316.69995117,2227.30004883,6.09999990,88.00000000,-1,-1,15); //Hunter
  358.     AddStaticVehicleEx(425,-2361.00000000,2312.39941406,6.09999990,88.00000000,-1,-1,15); //Hunter
  359.     AddStaticVehicleEx(520,-2362.39990234,2211.50000000,4.30000019,178.00000000,-1,-1,15); //Hydra
  360.     AddStaticVehicleEx(520,-2348.50000000,2211.30004883,4.30000019,177.99499512,-1,-1,15); //Hydra
  361.     AddStaticVehicleEx(520,-2334.69995117,2211.60009766,4.30000019,177.99499512,-1,-1,15); //Hydra
  362.     AddStaticVehicleEx(476,-2310.30004883,2162.30004883,4.09999990,262.00000000,-1,-1,15); //Rustler
  363.     AddStaticVehicleEx(476,-2311.89990234,2142.89990234,4.09999990,277.99645996,-1,-1,15); //Rustler
  364.     AddStaticVehicleEx(476,-2308.00000000,2126.30004883,4.09999990,291.99255371,-1,-1,15); //Rustler
  365.     AddStaticVehicleEx(497,-2388.80004883,2235.69995117,2.79999995,0.00000000,-1,1,15); //Police Maverick
  366.     AddStaticVehicleEx(497,-2387.60009766,2248.19995117,2.79999995,270.00000000,-1,-1,15); //Police Maverick
  367.     AddStaticVehicleEx(447,-2420.39990234,2269.19995117,2.59999990,0.00000000,-1,-1,15); //Seasparrow
  368.     AddStaticVehicleEx(447,-2420.80004883,2255.39990234,2.59999990,0.00000000,-1,-1,15); //Seasparrow
  369.     AddStaticVehicleEx(447,-2408.89990234,2260.00000000,2.59999990,0.00000000,-1,-1,15); //Seasparrow
  370.     AddStaticVehicleEx(504,-2323.39990234,2328.80004883,2.40000010,0.00000000,-1,-1,15); //Bloodring Banger
  371.     AddStaticVehicleEx(504,-2319.39990234,2328.80004883,2.40000010,0.00000000,-1,-1,15); //Bloodring Banger
  372.     AddStaticVehicleEx(504,-2315.60009766,2328.80004883,2.40000010,0.00000000,-1,-1,15); //Bloodring Banger
  373.     AddStaticVehicleEx(460,-2228.50000000,2448.80004883,1.60000002,318.75000000,-1,-1,15); //Skimmer
  374.     AddStaticVehicleEx(592,390.00000000,2507.19995117,15.50000000,86.00000000,-1,-1,15); //Andromada
  375.     AddStaticVehicleEx(548,379.10000610,2559.30004883,18.50000000,0.00000000,-1,-1,15); //Cargobob
  376.     AddStaticVehicleEx(417,360.79998779,2567.19995117,15.80000019,0.00000000,-1,-1,15); //Leviathan
  377.     AddStaticVehicleEx(511,335.20001221,2464.39990234,17.39999962,0.00000000,-1,-1,15); //Beagle
  378.     AddStaticVehicleEx(553,264.29998779,2454.19995117,18.70000076,0.00000000,-1,-1,15); //Nevada
  379.     AddStaticVehicleEx(593,324.29998779,2538.30004883,17.60000038,184.00000000,-1,-1,15); //Dodo
  380.     AddStaticVehicleEx(593,291.50000000,2541.30004883,17.60000038,183.99902344,-1,-1,15); //Dodo
  381.     AddStaticVehicleEx(497,427.20001221,2517.39990234,16.70000076,0.00000000,-1,-1,15); //Police Maverick
  382.     AddStaticVehicleEx(497,427.10000610,2499.19995117,16.70000076,0.00000000,-1,-1,15); //Police Maverick
  383.     AddStaticVehicleEx(522,222.80000305,1855.69995117,12.60000038,0.00000000,-1,-1,15); //NRG-500
  384.     AddStaticVehicleEx(522,219.39999390,1856.09997559,12.60000038,0.00000000,-1,-1,15); //NRG-500
  385.     AddStaticVehicleEx(522,216.89999390,1855.59997559,12.60000038,0.00000000,-1,-1,15); //NRG-500
  386.     AddStaticVehicleEx(522,214.00000000,1855.00000000,12.60000038,16.00000000,-1,-1,15); //NRG-500
  387.     AddStaticVehicleEx(511,-129.10000610,86.19999695,5.69999981,160.00000000,-1,-1,15); //Beagle
  388.     AddStaticVehicleEx(511,-154.30000305,96.00000000,5.69999981,159.99938965,-1,-1,15); //Beagle
  389.     AddStaticVehicleEx(511,-179.89999390,107.40000153,5.69999981,159.99938965,-1,-1,15); //Beagle
  390.     AddStaticVehicleEx(593,-209.60000610,114.40000153,4.09999990,158.00000000,-1,-1,15); //Dodo
  391.     AddStaticVehicleEx(425,43.09999847,21.89999962,7.00000000,340.00000000,-1,-1,15); //Hunter
  392.     AddStaticVehicleEx(425,30.50000000,27.79999924,7.00000000,339.99938965,-1,-1,15); //Hunter
  393.     AddStaticVehicleEx(520,3.59999990,-40.29999924,7.30000019,338.00000000,-1,-1,15); //Hydra
  394.     AddStaticVehicleEx(487,-11.00000000,-92.19999695,6.30000019,64.00000000,-1,-1,15); //Maverick
  395.     AddStaticVehicleEx(487,-6.80000019,-79.59999847,6.30000019,63.99536133,-1,-1,15); //Maverick
  396.     AddStaticVehicleEx(520,95.80000305,51.00000000,2.00000000,0.00000000,-1,-1,15); //Hydra
  397.     AddStaticVehicleEx(520,81.59999847,55.29999924,2.00000000,330.00000000,-1,-1,15); //Hydra
  398.     AddStaticVehicleEx(548,-67.09999847,-147.39999390,5.00000000,0.00000000,-1,-1,15); //Cargobob
  399.     AddStaticVehicleEx(548,-42.59999847,-152.00000000,4.59999990,0.00000000,-1,-1,15); //Cargobob
  400.     AddStaticVehicleEx(548,-18.39999962,-153.80000305,3.29999995,0.00000000,-1,-1,15); //Cargobob
  401.     AddStaticVehicleEx(497,43.90000153,-127.69999695,0.89999998,0.00000000,-1,-1,15); //Police Maverick
  402.     AddStaticVehicleEx(497,30.39999962,-130.10000610,0.89999998,20.00000000,-1,-1,15); //Police Maverick
  403.     AddStaticVehicleEx(497,15.39999962,-138.39999390,0.89999998,19.99511719,-1,-1,15); //Police Maverick
  404.     AddStaticVehicleEx(432,-40.00000000,-15.89999962,3.29999995,64.00000000,-1,-1,15); //Rhino
  405.     AddStaticVehicleEx(432,-43.00000000,-22.79999924,3.29999995,63.99536133,-1,-1,15); //Rhino
  406.     AddStaticVehicleEx(432,-36.79999924,-9.89999962,3.29999995,63.99536133,-1,-1,15); //Rhino
  407.     AddStaticVehicleEx(432,-34.59999847,-3.09999990,3.29999995,63.99536133,-1,-1,15); //Rhino
  408.     AddStaticVehicleEx(470,-90.59999847,-46.40000153,3.09999990,340.00000000,-1,-1,15); //Patriot
  409.     AddStaticVehicleEx(470,-97.19999695,-43.90000153,3.09999990,339.99938965,-1,-1,15); //Patriot
  410.     AddStaticVehicleEx(494,27.00000000,94.00000000,3.90000010,160.00000000,-1,-1,15); //Hotring
  411.     AddStaticVehicleEx(494,32.59999847,92.80000305,3.90000010,159.99938965,-1,-1,15); //Hotring
  412.     AddStaticVehicleEx(522,-69.59999847,38.20000076,2.79999995,282.00000000,-1,-1,15); //NRG-500
  413.     AddStaticVehicleEx(522,-69.59999847,39.79999924,2.79999995,281.99707031,-1,-1,15); //NRG-500
  414.     AddStaticVehicleEx(522,-69.40000153,41.59999847,2.79999995,281.99707031,-1,-1,15); //NRG-500
  415.     AddStaticVehicleEx(522,-69.19999695,43.00000000,2.79999995,281.99707031,-1,-1,15); //NRG-500
  416.     AddStaticVehicleEx(523,-60.79999924,38.09999847,2.79999995,0.00000000,-1,-1,15); //HPV1000
  417.     AddStaticVehicleEx(447,-85.00000000,-155.50000000,3.20000005,356.00000000,-1,-1,15); //Seasparrow
  418.     AddStaticVehicleEx(447,-96.69999695,-154.00000000,3.20000005,353.99548340,-1,-1,15); //Seasparrow
  419.     AddStaticVehicleEx(447,-122.30000305,-149.39999390,3.20000005,353.99047852,-1,-1,15); //Seasparrow
  420.     AddStaticVehicleEx(447,-134.89999390,-149.39999390,3.20000005,339.99047852,-1,-1,15); //Seasparrow
  421.     AddStaticVehicleEx(476,67.50000000,40.70000076,1.79999995,168.00000000,-1,-1,15); //Rustler
  422.     AddStaticVehicleEx(476,82.30000305,34.90000153,1.79999995,157.99743652,-1,-1,15); //Rustler
  423.     AddStaticVehicleEx(476,95.69999695,31.29999924,1.79999995,125.99438477,-1,-1,15); //Rustler
  424.     AddStaticVehicleEx(447,1114.59997559,-2019.00000000,74.50000000,0.00000000,-1,-1,15); //Seasparrow
  425.     AddStaticVehicleEx(447,1115.39941406,-2053.09960938,74.50000000,0.00000000,-1,-1,15); //Seasparrow
  426.     AddStaticVehicleEx(530,-495.20001221,-488.10000610,25.29999924,0.00000000,9,1,15); //Forklift
  427.     AddStaticVehicleEx(530,-490.29998779,-488.00000000,25.29999924,0.00000000,9,1,15); //Forklift
  428.     AddStaticVehicleEx(530,-500.29998779,-488.29998779,25.29999924,0.00000000,9,1,15); //Forklift
  429.     AddStaticVehicleEx(499,-509.00000000,-502.60000610,25.60000038,0.00000000,9,9,15); //Benson
  430.     AddStaticVehicleEx(499,-544.90002441,-471.20001221,25.60000038,0.00000000,9,9,15); //Benson
  431.     AddStaticVehicleEx(499,-549.29998779,-471.70001221,25.60000038,0.00000000,9,9,15); //Benson
  432.     AddStaticVehicleEx(499,-564.09997559,-471.89999390,25.60000038,0.00000000,9,9,15); //Benson
  433.     AddStaticVehicleEx(554,-509.60000610,-472.79998779,25.70000076,357.25000000,-1,-1,15); //Yosemite
  434.     AddStaticVehicleEx(554,-504.60000610,-473.10000610,25.70000076,357.24792480,-1,-1,15); //Yosemite
  435.     AddStaticVehicleEx(554,-514.29998779,-472.50000000,25.70000076,357.24792480,-1,-1,15); //Yosemite
  436.     AddStaticVehicleEx(554,-519.29998779,-473.00000000,25.70000076,357.24792480,-1,-1,15); //Yosemite
  437.     AddStaticVehicleEx(554,-524.09997559,-472.70001221,25.70000076,357.24792480,-1,-1,15); //Yosemite
  438.     AddStaticVehicleEx(456,-557.59997559,-545.20001221,25.79999924,0.00000000,-1,-1,15); //Yankee
  439.     AddStaticVehicleEx(456,-529.79980469,-544.00000000,25.79999924,0.00000000,-1,-1,15); //Yankee
  440.     AddStaticVehicleEx(543,-590.09997559,-488.00000000,25.50000000,0.00000000,-1,-1,15); //Sadler
  441.     AddStaticVehicleEx(543,-580.20001221,-487.79998779,25.50000000,0.00000000,-1,-1,15); //Sadler
  442.     AddStaticVehicleEx(543,-584.70001221,-473.10000610,25.50000000,175.99993896,-1,-1,15); //Sadler
  443.     CreateObject(10834,-1193.00000000,411.00000000,1.20000005,0.00000000,0.00000000,179.99450684); //object(navybase_03_sfse) (1)
  444.     CreateObject(4726,-1426.00000000,381.20001221,28.00000000,0.00000000,0.00000000,0.00000000); //object(libtwrhelipd_lan2) (1)
  445.     CreateObject(4726,-1382.09997559,398.10000610,27.79999924,0.00000000,0.00000000,0.00000000); //object(libtwrhelipd_lan2) (2)
  446.     CreateObject(4726,-1434.90002441,420.00000000,27.79999924,0.00000000,0.00000000,0.00000000); //object(libtwrhelipd_lan2) (3)
  447.     CreateObject(7096,-1479.50000000,433.60000610,34.59999847,0.00000000,0.00000000,0.00000000); //object(vrockstairs) (1)
  448.     CreateObject(7096,-1503.40002441,367.39999390,46.90000153,0.00000000,0.00000000,180.00000000); //object(vrockstairs) (2)
  449.     CreateObject(7096,-1482.79980469,425.09960938,41.50000000,0.00000000,0.00000000,179.99450684); //object(vrockstairs) (3)
  450.     CreateObject(7096,-1501.50000000,365.70001221,53.90000153,0.00000000,0.00000000,275.99450684); //object(vrockstairs) (4)
  451.     CreateObject(14409,-1505.30004883,359.89999390,52.59999847,0.00000000,0.00000000,183.25000000); //object(carter-stairs02) (1)
  452.     CreateObject(14409,-1488.50000000,429.10000610,40.20000076,0.00000000,0.00000000,91.24645996); //object(carter-stairs02) (2)
  453.     CreateObject(4874,-1529.90002441,251.30000305,57.00000000,0.00000000,0.00000000,89.50000000); //object(helipad1_las) (1)
  454.     CreateObject(987,-1335.09997559,391.20001221,6.19999981,0.00000000,0.00000000,108.00000000); //object(elecfence_bar) (1)
  455.     CreateObject(987,-1322.90002441,387.79998779,6.19999981,0.00000000,0.00000000,163.99560547); //object(elecfence_bar) (2)
  456.     CreateObject(987,-1311.40002441,387.50000000,6.19999981,0.00000000,0.00000000,179.99291992); //object(elecfence_bar) (3)
  457.     CreateObject(987,-1299.40002441,387.20001221,6.19999981,0.00000000,0.00000000,179.98901367); //object(elecfence_bar) (4)
  458.     CreateObject(987,-1287.40002441,387.39999390,6.19999981,0.00000000,0.00000000,181.23901367); //object(elecfence_bar) (5)
  459.     CreateObject(987,-1275.50000000,387.50000000,6.19999981,0.00000000,0.00000000,181.23596191); //object(elecfence_bar) (6)
  460.     CreateObject(987,-1263.50000000,387.79998779,6.19999981,0.00000000,0.00000000,181.23596191); //object(elecfence_bar) (7)
  461.     CreateObject(987,-1251.50000000,387.89999390,6.19999981,0.00000000,0.00000000,181.23596191); //object(elecfence_bar) (8)
  462.     CreateObject(987,-1232.09997559,387.00000000,6.19999981,0.00000000,0.00000000,180.73596191); //object(elecfence_bar) (9)
  463.     CreateObject(987,-1220.09997559,387.20001221,6.19999981,0.00000000,0.00000000,180.73059082); //object(elecfence_bar) (10)
  464.     CreateObject(987,-1208.30004883,387.20001221,6.19999981,0.00000000,0.00000000,180.73059082); //object(elecfence_bar) (11)
  465.     CreateObject(987,-1196.30004883,387.39999390,6.19999981,0.00000000,0.00000000,180.73059082); //object(elecfence_bar) (12)
  466.     CreateObject(987,-1184.30004883,387.60000610,6.19999981,0.00000000,0.00000000,180.73059082); //object(elecfence_bar) (13)
  467.     CreateObject(987,-1172.30004883,387.50000000,6.19999981,0.00000000,0.00000000,180.73059082); //object(elecfence_bar) (14)
  468.     CreateObject(987,-1160.40002441,387.39999390,6.19999981,0.00000000,0.00000000,180.73059082); //object(elecfence_bar) (15)
  469.     CreateObject(987,-1148.59997559,387.10000610,6.19999981,0.00000000,0.00000000,180.73059082); //object(elecfence_bar) (16)
  470.     CreateObject(987,-1128.80004883,416.89999390,6.19999981,0.00000000,0.00000000,358.72985840); //object(elecfence_bar) (23)
  471.     CreateObject(987,-1212.50000000,417.10000610,6.19999981,0.00000000,0.00000000,359.97253418); //object(elecfence_bar) (30)
  472.     CreateObject(987,-1224.40002441,417.10000610,6.19999981,0.00000000,0.00000000,359.97253418); //object(elecfence_bar) (31)
  473.     CreateObject(987,-1228.19995117,428.79998779,6.19999981,0.00000000,0.00000000,272.47253418); //object(elecfence_bar) (33)
  474.     CreateObject(987,-1227.90002441,417.00000000,6.19999981,0.00000000,0.00000000,0.47192383); //object(elecfence_bar) (34)
  475.     CreateObject(987,-1223.00000000,438.89999390,6.19999981,0.00000000,359.25000000,237.72192383); //object(elecfence_bar) (35)
  476.     CreateObject(987,-1222.50000000,450.79998779,6.19999981,0.00000000,359.24743652,265.71667480); //object(elecfence_bar) (36)
  477.     CreateObject(987,-1221.90002441,462.60000610,6.19999981,0.00000000,359.24194336,265.71533203); //object(elecfence_bar) (37)
  478.     CreateObject(987,-1226.80004883,473.39999390,6.19999981,0.00000000,359.24194336,291.71533203); //object(elecfence_bar) (38)
  479.     CreateObject(987,-1234.80004883,481.89999390,6.19999981,0.00000000,359.24194336,311.46447754); //object(elecfence_bar) (39)
  480.     CreateObject(987,-1246.69995117,481.89999390,6.19999981,0.00000000,359.24194336,358.71240234); //object(elecfence_bar) (40)
  481.     CreateObject(987,-1258.80004883,482.00000000,6.19999981,0.00000000,359.24194336,358.70910645); //object(elecfence_bar) (41)
  482.     CreateObject(987,-1270.90002441,481.79998779,6.19999981,0.00000000,359.24194336,358.70910645); //object(elecfence_bar) (42)
  483.     CreateObject(987,-1282.59997559,481.89999390,6.19999981,0.00000000,359.24194336,358.70910645); //object(elecfence_bar) (43)
  484.     CreateObject(987,-1294.40002441,482.00000000,6.19999981,0.00000000,359.24194336,358.70910645); //object(elecfence_bar) (44)
  485.     CreateObject(987,-1306.30004883,482.00000000,6.19999981,0.00000000,359.24194336,358.70910645); //object(elecfence_bar) (45)
  486.     CreateObject(987,-1315.09997559,481.70001221,6.19999981,0.00000000,359.24194336,358.70910645); //object(elecfence_bar) (46)
  487.     CreateObject(987,-1333.40002441,482.10000610,6.19999981,0.00000000,359.24194336,358.70910645); //object(elecfence_bar) (47)
  488.     CreateObject(987,-1345.59997559,482.20001221,6.19999981,0.00000000,359.24194336,358.70910645); //object(elecfence_bar) (48)
  489.     CreateObject(987,-1357.50000000,482.39999390,6.19999981,0.00000000,359.24194336,358.70910645); //object(elecfence_bar) (49)
  490.     CreateObject(987,-1369.80004883,482.10000610,6.19999981,0.00000000,359.24194336,358.70910645); //object(elecfence_bar) (50)
  491.     CreateObject(987,-1381.69995117,482.10000610,6.19999981,0.00000000,359.24194336,359.45910645); //object(elecfence_bar) (51)
  492.     CreateObject(987,-1393.30004883,481.89999390,6.19999981,0.00000000,359.24194336,359.45617676); //object(elecfence_bar) (52)
  493.     CreateObject(987,-1405.40002441,482.10000610,6.19999981,0.00000000,359.24194336,359.45617676); //object(elecfence_bar) (53)
  494.     CreateObject(987,-1417.50000000,482.10000610,6.19999981,0.00000000,359.24194336,359.45617676); //object(elecfence_bar) (54)
  495.     CreateObject(987,-1429.19995117,482.10000610,6.19999981,0.00000000,359.24194336,359.45617676); //object(elecfence_bar) (55)
  496.     CreateObject(987,-1441.19995117,482.00000000,6.19999981,0.00000000,359.24194336,359.45617676); //object(elecfence_bar) (56)
  497.     CreateObject(987,-1444.69995117,482.00000000,6.19999981,0.00000000,359.24194336,359.45617676); //object(elecfence_bar) (57)
  498.     CreateObject(987,-1462.59997559,481.60000610,6.19999981,0.00000000,359.24194336,359.45617676); //object(elecfence_bar) (58)
  499.     CreateObject(987,-1474.30004883,482.00000000,5.90000010,0.00000000,359.24194336,359.45617676); //object(elecfence_bar) (59)
  500.     CreateObject(987,-1486.19995117,482.10000610,6.00000000,0.00000000,359.24194336,359.45617676); //object(elecfence_bar) (60)
  501.     CreateObject(987,-1498.09997559,482.29998779,6.00000000,0.00000000,359.24194336,359.45617676); //object(elecfence_bar) (61)
  502.     CreateObject(987,-1507.90002441,481.70001221,6.00000000,0.00000000,359.24194336,1.45617676); //object(elecfence_bar) (62)
  503.     CreateObject(981,-1544.80004883,916.40002441,6.80000019,0.00000000,0.00000000,0.00000000); //object(helix_barrier) (1)
  504.     CreateObject(981,-1629.09997559,1226.40002441,6.90000010,0.00000000,0.00000000,225.00000000); //object(helix_barrier) (2)
  505.     CreateObject(981,-1639.00000000,1188.00000000,6.90000010,0.00000000,0.00000000,273.00000000); //object(helix_barrier) (3)
  506.     CreateObject(981,-1583.69995117,924.50000000,7.19999981,0.00000000,0.00000000,272.99926758); //object(helix_barrier) (4)
  507.     CreateObject(3403,-1543.00000000,378.89999390,9.19999981,0.00000000,0.00000000,0.00000000); //object(sw_logcover) (1)
  508.     CreateObject(3403,-1543.50000000,392.29998779,9.19999981,0.00000000,0.00000000,0.00000000); //object(sw_logcover) (2)
  509.     CreateObject(3403,-1543.09997559,407.00000000,9.19999981,0.00000000,0.00000000,0.00000000); //object(sw_logcover) (3)
  510.     CreateObject(3403,-1576.00000000,368.00000000,9.19999981,0.00000000,0.00000000,272.00000000); //object(sw_logcover) (4)
  511.     CreateObject(7096,-1321.69995117,439.39999390,11.69999981,0.00000000,0.00000000,265.99304199); //object(vrockstairs) (5)
  512.     CreateObject(7096,-1331.90002441,433.79998779,18.60000038,0.00000000,0.00000000,177.98449707); //object(vrockstairs) (6)
  513.     CreateObject(3526,-1061.90002441,407.29998779,14.10000038,0.00000000,0.00000000,70.00000000); //object(vegasairportlight) (1)
  514.     CreateObject(3526,-1054.40002441,403.79998779,14.10000038,0.00000000,0.00000000,69.99938965); //object(vegasairportlight) (2)
  515.     CreateObject(3526,-1048.69995117,401.60000610,14.10000038,0.00000000,0.00000000,69.99938965); //object(vegasairportlight) (3)
  516.     CreateObject(3526,-1039.40002441,397.10000610,14.10000038,0.00000000,0.00000000,69.99938965); //object(vegasairportlight) (4)
  517.     CreateObject(10766,-1156.30004883,445.70001221,4.30000019,0.00000000,0.00000000,344.99450684); //object(airport_10_sfse) (2)
  518.     CreateObject(1337,-1143.54101562,524.51269531,7.13650799,0.00000000,0.00000000,0.00000000); //object(binnt07_la) (5)
  519.     CreateObject(9833,-1538.59997559,478.20001221,9.39999962,0.00000000,0.00000000,0.00000000); //object(fountain_sfw) (1)
  520.     CreateObject(9833,-1522.59997559,480.60000610,9.39999962,0.00000000,0.00000000,0.00000000); //object(fountain_sfw) (2)
  521.     CreateObject(9833,-1522.40002441,487.29998779,12.80000019,0.00000000,0.00000000,0.00000000); //object(fountain_sfw) (3)
  522.     CreateObject(6965,-1543.30004883,335.10000610,57.09999847,0.00000000,0.00000000,0.00000000); //object(venefountain02) (1)
  523.     CreateObject(8324,-1593.40002441,318.00000000,12.30000019,0.00000000,0.00000000,0.00000000); //object(vgsbboardsigns10) (1)
  524.     CreateObject(3264,-1536.59997559,483.70001221,6.19999981,0.00000000,0.00000000,180.00000000); //object(privatesign3) (1)
  525.     CreateObject(12986,1132.50000000,-1997.90002441,69.50000000,0.00000000,0.00000000,0.00000000); //object(sw_well1) (1)
  526.     CreateObject(8406,1300.90002441,-2053.50000000,62.79999924,0.00000000,0.00000000,272.00000000); //object(carparksign01_lvs) (1)
  527.     CreateObject(6973,1157.09997559,-2036.59997559,63.90000153,0.00000000,0.00000000,0.00000000); //object(shamheliprt1) (1)
  528.     CreateObject(7096,-1330.90002441,432.20001221,25.29999924,0.00000000,0.00000000,265.98400879); //object(vrockstairs) (6)
  529.     CreateObject(9241,352.89999390,1965.50000000,18.29999924,0.00000000,0.00000000,0.00000000); //object(copbits_sfn) (1)
  530.     CreateObject(9241,353.50000000,1933.19995117,18.29999924,0.00000000,0.00000000,0.00000000); //object(copbits_sfn) (2)
  531.     CreateObject(3268,83.50000000,1926.80004883,16.70000076,0.00000000,0.00000000,0.00000000); //object(mil_hangar1_) (1)
  532.     CreateObject(3268,85.09999847,1872.00000000,16.70000076,0.00000000,0.00000000,0.00000000); //object(mil_hangar1_) (2)
  533.     CreateObject(17016,342.70001221,2025.50000000,73.69999695,0.00000000,0.00000000,0.00000000); //object(cutnwplant09) (1)
  534.     CreateObject(17016,203.10000610,1948.59997559,68.69999695,0.00000000,0.00000000,0.00000000); //object(cutnwplant09) (2)
  535.     CreateObject(17017,92.69999695,1821.90002441,68.69908142,0.00000000,0.00000000,0.00000000); //object(cuntwplant10) (1)
  536.     CreateObject(17040,65.50000000,2093.39990234,16.70000076,0.00000000,0.00000000,0.00000000); //object(cuntw_weefact1_) (1)
  537.     CreateObject(3819,398.39999390,1908.40002441,17.60000038,0.00000000,0.00000000,0.00000000); //object(bleacher_sfsx) (1)
  538.     CreateObject(3819,398.60000610,1918.40002441,17.60000038,0.00000000,0.00000000,0.00000000); //object(bleacher_sfsx) (2)
  539.     CreateObject(3819,398.60000610,1928.69995117,17.60000038,0.00000000,0.00000000,0.00000000); //object(bleacher_sfsx) (3)
  540.     CreateObject(1337,93.07812500,1823.71093750,114.17408752,0.00000000,0.00000000,0.00000000); //object(binnt07_la) (1)
  541.     CreateObject(918,-275.29998779,2609.80004883,62.20000076,0.00000000,0.00000000,0.00000000); //object(cj_flame_drum) (1)
  542.     CreateObject(8550,-2039.69995117,1207.59997559,84.00000000,0.00000000,0.00000000,0.00000000); //object(laconcha_lvs) (1)
  543.     CreateObject(4867,-2388.00000000,2296.50000000,1.50000000,0.00000000,0.00000000,0.00000000); //object(lasrnway3_las) (1)
  544.     CreateObject(9241,-2314.50000000,2224.89990234,3.29999995,0.00000000,0.00000000,0.00000000); //object(copbits_sfn) (5)
  545.     CreateObject(9241,-2358.30004883,2310.69995117,3.29999995,0.00000000,0.00000000,0.00000000); //object(copbits_sfn) (6)
  546.     CreateObject(10766,-2347.39990234,2105.39990234,-0.40000001,0.00000000,0.00000000,358.99450684); //object(airport_10_sfse) (1)
  547.     CreateObject(10766,-2206.30004883,2143.19995117,-0.40000001,0.00000000,0.00000000,88.48925781); //object(airport_10_sfse) (3)
  548.     CreateObject(7388,199.00000000,1832.69995117,22.20000076,0.00000000,0.00000000,0.00000000); //object(vrockpole) (1)
  549.     CreateObject(3864,388.70001221,1903.00000000,22.70000076,0.00000000,0.00000000,0.00000000); //object(ws_floodlight) (1)
  550.     CreateObject(3877,178.60000610,1836.30004883,23.89999962,0.00000000,0.00000000,0.00000000); //object(sf_rooflite) (1)
  551.     CreateObject(3877,278.89999390,1830.19995117,22.10000038,0.00000000,0.00000000,0.00000000); //object(sf_rooflite) (2)
  552.     CreateObject(1231,99.40000153,1919.40002441,19.89999962,0.00000000,0.00000000,0.00000000); //object(streetlamp2) (1)
  553.     CreateObject(1231,107.90000153,1918.59997559,19.89999962,0.00000000,0.00000000,0.00000000); //object(streetlamp2) (2)
  554.     CreateObject(1231,99.00000000,1923.19995117,19.89999962,0.00000000,0.00000000,180.00000000); //object(streetlamp2) (3)
  555.     CreateObject(1231,107.19999695,1923.90002441,19.89999962,0.00000000,0.00000000,179.99450684); //object(streetlamp2) (4)
  556.     CreateObject(1231,111.90000153,1918.40002441,19.89999962,0.00000000,0.00000000,330.00000000); //object(streetlamp2) (5)
  557.     CreateObject(1231,113.09999847,1922.09997559,19.89999962,0.00000000,0.00000000,329.99633789); //object(streetlamp2) (6)
  558.     CreateObject(1226,145.80000305,1927.19995117,22.10000038,0.00000000,0.00000000,0.00000000); //object(lamppost3) (1)
  559.     CreateObject(1226,145.60000610,1936.90002441,22.10000038,0.00000000,0.00000000,0.00000000); //object(lamppost3) (2)
  560.     CreateObject(1226,124.19999695,1926.40002441,22.00000000,0.00000000,0.00000000,180.00000000); //object(lamppost3) (3)
  561.     CreateObject(1226,124.69999695,1934.00000000,20.10000038,0.00000000,0.00000000,179.99450684); //object(lamppost3) (4)
  562.     CreateObject(642,233.69999695,1907.59997559,18.10000038,0.00000000,0.00000000,0.00000000); //object(kb_canopy_test) (1)
  563.     CreateObject(642,233.80000305,1911.80004883,18.10000038,0.00000000,0.00000000,0.00000000); //object(kb_canopy_test) (2)
  564.     CreateObject(642,233.60000610,1903.59997559,18.10000038,0.00000000,0.00000000,0.00000000); //object(kb_canopy_test) (3)
  565.     CreateObject(1663,233.89999390,1904.30004883,17.10000038,0.00000000,0.00000000,0.00000000); //object(swivelchair_b) (1)
  566.     CreateObject(1280,285.29998779,1882.09997559,17.00000000,0.00000000,0.00000000,0.00000000); //object(parkbench1) (1)
  567.     CreateObject(1281,290.29998779,1861.80004883,17.39999962,0.00000000,0.00000000,0.00000000); //object(parktable1) (1)
  568.     CreateObject(3776,65.30000305,2026.40002441,25.70000076,0.00000000,0.00000000,0.00000000); //object(ci_bstage) (1)
  569.     CreateObject(3776,64.90000153,1997.80004883,25.70000076,0.00000000,0.00000000,0.00000000); //object(ci_bstage) (2)
  570.     CreateObject(5154,122.40000153,1961.40002441,23.20000076,0.00000000,0.00000000,0.00000000); //object(dk_cargoshp03d) (1)
  571.     CreateObject(3763,121.59999847,1959.69995117,59.59999847,0.00000000,0.00000000,0.00000000); //object(ce_radarmast3) (1)
  572.     CreateObject(3107,106.00000000,1932.30004883,17.50000000,0.00000000,0.00000000,0.00000000); //object(wongs_erection2) (1)
  573.     CreateObject(5005,234.89999390,2364.69995117,19.00000000,0.00000000,0.00000000,0.00000000); //object(lasrunwall1_las) (2)
  574.     CreateObject(5005,88.30000305,2413.60009766,19.00000000,0.00000000,0.00000000,324.00000000); //object(lasrunwall1_las) (4)
  575.     CreateObject(5005,107.09999847,2528.80004883,18.89999962,0.00000000,0.00000000,179.99780273); //object(lasrunwall1_las) (5)
  576.     CreateObject(5005,262.70001221,2562.50000000,18.89999962,0.00000000,0.00000000,203.99450684); //object(lasrunwall1_las) (6)
  577.     CreateObject(5005,417.60000610,2583.10009766,18.89999962,0.00000000,0.00000000,171.99414062); //object(lasrunwall1_las) (7)
  578.     CreateObject(3749,25.20000076,2494.00000000,21.39999962,0.00000000,0.00000000,90.00000000); //object(clubgate01_lax) (1)
  579.     CreateObject(987,24.10000038,2460.80004883,15.50000000,0.00000000,0.00000000,90.00000000); //object(elecfence_bar) (21)
  580.     CreateObject(987,24.60000038,2516.19995117,15.50000000,0.00000000,0.00000000,90.00000000); //object(elecfence_bar) (22)
  581.     CreateObject(987,24.09960938,2472.50000000,15.50000000,0.00000000,0.00000000,90.00000000); //object(elecfence_bar) (24)
  582.     CreateObject(987,24.60000038,2504.30004883,15.50000000,0.00000000,0.00000000,90.00000000); //object(elecfence_bar) (25)
  583.     CreateObject(16781,7.50000000,2081.10009766,16.79999924,0.00000000,0.00000000,0.00000000); //object(cn2_ringking) (1)
  584.     CreateObject(9525,220.80000305,2010.40002441,21.39999962,0.00000000,0.00000000,0.00000000); //object(boigas_sfw03) (1)
  585.     CreateObject(9525,212.50000000,2005.59997559,21.39999962,0.00000000,0.00000000,0.00000000); //object(boigas_sfw03) (2)
  586.     CreateObject(9525,228.89999390,2003.50000000,21.39999962,0.00000000,0.00000000,0.00000000); //object(boigas_sfw03) (3)
  587.     CreateObject(8851,202.80000305,1984.59997559,16.89999962,0.00000000,0.00000000,0.00000000); //object(vgeplntr01_lvs) (1)
  588.     CreateObject(2195,202.80000305,1976.00000000,17.10000038,0.00000000,0.00000000,0.00000000); //object(plant_pot_3) (1)
  589.     CreateObject(2011,202.89999390,1980.80004883,16.50000000,0.00000000,0.00000000,0.00000000); //object(nu_plant2_ofc) (1)
  590.     CreateObject(647,197.60000610,1987.00000000,18.50000000,0.00000000,0.00000000,0.00000000); //object(new_bushsm) (1)
  591.     CreateObject(651,202.89999390,1984.90002441,16.89999962,0.00000000,0.00000000,0.00000000); //object(sjmcacti1) (1)
  592.     CreateObject(650,203.10000610,1988.69995117,16.89999962,0.00000000,0.00000000,0.00000000); //object(sjmcacti2) (1)
  593.     CreateObject(653,105.69999695,2089.00000000,16.79999924,0.00000000,0.00000000,0.00000000); //object(sjmcacti03) (1)
  594.     CreateObject(650,203.00000000,1992.80004883,16.89999962,0.00000000,0.00000000,0.00000000); //object(sjmcacti2) (2)
  595.     CreateObject(653,122.19921875,2050.29980469,16.20000076,0.00000000,0.00000000,0.00000000); //object(sjmcacti03) (2)
  596.     CreateObject(5005,37.89941406,104.50000000,4.50000000,0.00000000,0.49987793,331.99584961); //object(lasrunwall1_las) (1)
  597.     CreateObject(987,-49.40000153,152.39999390,2.09999990,0.00000000,0.00000000,332.00000000); //object(elecfence_bar) (17)
  598.     CreateObject(987,-59.70000076,158.10000610,2.09999990,0.00000000,0.00000000,331.99584961); //object(elecfence_bar) (18)
  599.     CreateObject(987,-69.80000305,163.69999695,2.09999990,0.00000000,0.00000000,331.99584961); //object(elecfence_bar) (19)
  600.     CreateObject(987,-80.00000000,169.50000000,2.09999990,0.00000000,0.00000000,331.99584961); //object(elecfence_bar) (20)
  601.     CreateObject(987,-90.40000153,175.30000305,2.09999990,0.00000000,0.00000000,331.99584961); //object(elecfence_bar) (26)
  602.     CreateObject(987,-100.80000305,180.89999390,2.09999990,0.00000000,0.00000000,331.99584961); //object(elecfence_bar) (27)
  603.     CreateObject(987,-111.30000305,186.50000000,2.09999990,0.00000000,0.00000000,331.99584961); //object(elecfence_bar) (28)
  604.     CreateObject(987,-122.19999695,192.30000305,3.40000010,0.00000000,6.00000000,331.99584961); //object(elecfence_bar) (29)
  605.     CreateObject(987,-132.69999695,198.00000000,4.59999990,0.00000000,5.99853516,331.99035645); //object(elecfence_bar) (32)
  606.     CreateObject(987,-143.00000000,203.60000610,6.40000010,0.00000000,5.99853516,331.99035645); //object(elecfence_bar) (63)
  607.     CreateObject(987,-154.00000000,208.39999390,6.90000010,0.00000000,5.99853516,337.99035645); //object(elecfence_bar) (64)
  608.     CreateObject(987,-164.39999390,212.60000610,8.89999962,0.00000000,5.99853516,337.98889160); //object(elecfence_bar) (65)
  609.     CreateObject(987,-175.30000305,216.89999390,9.80000019,0.00000000,5.99853516,337.98889160); //object(elecfence_bar) (66)
  610.     CreateObject(987,-186.39999390,221.60000610,10.60000038,0.00000000,5.99853516,337.98889160); //object(elecfence_bar) (67)
  611.     CreateObject(987,-197.19999695,226.00000000,10.60000038,0.00000000,1.99853516,337.98889160); //object(elecfence_bar) (68)
  612.     CreateObject(987,-201.19999695,215.10000610,10.60000038,0.00000000,358.74401855,70.73339844); //object(elecfence_bar) (69)
  613.     CreateObject(987,-201.80000305,207.69999695,10.60000038,0.00000000,359.24206543,80.22998047); //object(elecfence_bar) (70)
  614.     CreateObject(987,-208.80000305,189.80000305,8.50000000,0.00000000,353.24194336,72.22766113); //object(elecfence_bar) (71)
  615.     CreateObject(987,-212.60000610,178.60000610,6.80000019,0.00000000,353.23791504,72.22412109); //object(elecfence_bar) (72)
  616.     CreateObject(987,-216.00000000,167.39941406,4.80000019,0.00000000,350.73303223,72.21862793); //object(elecfence_bar) (73)
  617.     CreateObject(3749,-199.30000305,203.19999695,15.30000019,0.00000000,0.00000000,76.00000000); //object(clubgate01_lax) (2)
  618.     CreateObject(987,-219.69999695,156.60000610,3.40000010,0.00000000,350.73303223,72.21862793); //object(elecfence_bar) (73)
  619.     CreateObject(987,-223.39999390,145.60000610,1.70000005,0.00000000,350.73303223,72.21862793); //object(elecfence_bar) (73)
  620.     CreateObject(987,-227.30000305,134.10000610,0.69999999,0.00000000,354.73303223,72.21862793); //object(elecfence_bar) (73)
  621.     CreateObject(5005,-259.39999390,47.79999924,4.19999981,0.00000000,0.00000000,70.50003052); //object(lasrunwall1_las) (8)
  622.     CreateObject(5005,-234.00000000,-92.19999695,4.19999981,0.00000000,0.00000000,128.49926758); //object(lasrunwall1_las) (9)
  623.     CreateObject(5005,-101.50000000,-165.50000000,4.80000019,0.00000000,0.00000000,172.49609375); //object(lasrunwall1_las) (10)
  624.     CreateObject(5005,50.90000153,-136.39999390,3.09999990,0.00000000,0.00000000,208.49084473); //object(lasrunwall1_las) (11)
  625.     CreateObject(5005,100.50000000,-13.60000038,3.29999995,0.00000000,0.00000000,262.48754883); //object(lasrunwall1_las) (12)
  626.     CreateObject(987,90.09999847,-95.69999695,-0.30000001,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (77)
  627.     CreateObject(987,101.90000153,-95.80000305,-0.30000001,0.00000000,0.00000000,314.50000000); //object(elecfence_bar) (78)
  628.     CreateObject(8172,-190.50000000,-10.39999962,2.09999990,0.00000000,0.00000000,0.00000000); //object(vgssairportland07) (1)
  629.     CreateObject(8172,-154.50000000,20.20000076,2.40000010,0.00000000,0.00000000,340.00000000); //object(vgssairportland07) (2)
  630.     CreateObject(8172,-192.10000610,33.90000153,2.40000010,0.00000000,0.00000000,339.99938965); //object(vgssairportland07) (3)
  631.     CreateObject(8172,-229.00000000,46.90000153,2.40000010,0.00000000,0.00000000,339.99938965); //object(vgssairportland07) (4)
  632.     CreateObject(9241,3.20000005,-43.00000000,4.19999981,0.00000000,0.00000000,338.00000000); //object(copbits_sfn) (3)
  633.     CreateObject(9241,-11.69999981,-85.00000000,4.19999981,0.00000000,0.00000000,337.99987793); //object(copbits_sfn) (4)
  634.     CreateObject(9241,36.50000000,21.70000076,4.19999981,0.00000000,0.00000000,337.99987793); //object(copbits_sfn) (7)
  635.     CreateObject(1280,-88.90000153,-41.00000000,5.90000010,0.00000000,0.00000000,340.00000000); //object(parkbench1) (2)
  636.     CreateObject(1280,-95.40000153,-40.20000076,5.90000010,0.00000000,0.00000000,153.99938965); //object(parkbench1) (3)
  637.     CreateObject(1281,-93.19999695,-45.50000000,6.30000019,0.00000000,0.00000000,0.00000000); //object(parktable1) (2)
  638.     CreateObject(1562,-86.80000305,-36.70000076,6.09999990,0.00000000,0.00000000,244.00000000); //object(ab_jetseat) (1)
  639.     CreateObject(3402,27.50000000,87.59999847,3.00000000,0.00000000,0.00000000,253.76293945); //object(sw_tempbarn01) (1)
  640.     CreateObject(3069,20.00000000,62.59999847,-0.80000001,12.00000000,0.00000000,343.25000000); //object(d9_ramp) (1)
  641.     CreateObject(9958,2928.50000000,-2134.10009766,5.00000000,0.00000000,0.00000000,346.00000000); //object(submarr_sfe) (1)
  642.     CreateObject(3258,2592.60009766,-2339.39990234,12.60000038,0.00000000,0.00000000,0.00000000); //object(refthinchim1) (1)
  643.     CreateObject(1306,2562.50000000,-2514.50000000,17.20000076,31.97824097,2.35797119,358.75073242); //object(tlgraphpolegen) (1)
  644.     CreateObject(1306,2568.10009766,-2523.50000000,0.20000000,75.85836792,8.20770264,352.03387451); //object(tlgraphpolegen) (3)
  645.     CreateObject(10771,2697.69995117,-2637.80004883,-0.30000001,0.00000000,186.50000000,0.00000000); //object(carrier_hull_sfse) (1)
  646.     CreateObject(10230,2451.53710938,-2607.83398438,23.57696152,0.00000000,0.00000000,0.00000000); //object(freighter_sfe) (1)
  647.     CreateObject(3524,1132.30004883,-1998.69995117,72.00000000,0.00000000,0.00000000,0.00000000); //object(skullpillar01_lvs) (1)
  648.     CreateObject(16776,-1313.69995117,2475.69995117,86.19999695,0.00000000,0.00000000,0.00000000); //object(des_cockbody) (1)
  649.     CreateObject(3884,-1279.40002441,2681.30004883,48.59999847,0.00000000,0.00000000,0.00000000); //object(samsite_sfxrf) (1)
  650.     CreateObject(18458,-615.82910156,1922.46679688,35.82063675,0.00000000,0.00000000,0.00000000); //object(cs_detrok06) (1)
  651.     CreateObject(18450,-780.59997559,1898.00000000,22.60000038,0.00000000,0.00000000,4.00000000); //object(cs_roadbridge04) (2)
  652.     CreateObject(18450,-700.79998779,1903.59997559,22.60000038,0.00000000,0.00000000,3.99902344); //object(cs_roadbridge04) (3)
  653.     CreateObject(18450,-621.09997559,1909.40002441,22.60000038,0.00000000,0.00000000,3.99902344); //object(cs_roadbridge04) (4)
  654.     CreateObject(3331,-781.90002441,1906.59997559,32.70000076,0.00000000,0.00000000,274.00000000); //object(cxrf_whitebrig) (1)
  655.     CreateObject(3331,-701.90002441,1912.09997559,32.70000076,0.00000000,0.00000000,273.99902344); //object(cxrf_whitebrig) (2)
  656.     CreateObject(3331,-621.90002441,1917.90002441,32.70000076,0.00000000,0.00000000,273.99902344); //object(cxrf_whitebrig) (3)
  657.     CreateObject(987,-704.37695312,858.29687500,9.51770401,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (74)
  658.     CreateObject(946,-2804.30004883,-1540.90002441,140.80000305,0.00000000,0.00000000,269.99996948); //object(bskball_lax) (1)
  659.     CreateObject(2288,-2816.30004883,-1515.69995117,141.80000305,0.00000000,0.00000000,0.00000000); //object(frame_3) (1)
  660.     CreateObject(5838,-2776.60009766,-1410.59997559,153.80000305,0.00000000,0.00000000,0.00000000); //object(ci_watertank01) (1)
  661.     CreateObject(3763,-2813.30004883,-1502.90002441,171.50000000,0.00000000,0.00000000,0.00000000); //object(ce_radarmast3) (2)
  662.     CreateObject(17007,-2796.60009766,-1506.69995117,138.00000000,0.00000000,0.00000000,0.00000000); //object(wt6supps01) (1)
  663.     CreateObject(16327,-2809.39990234,-1526.00000000,143.10000610,0.00000000,0.00000000,0.00000000); //object(des_bycontowr) (1)
  664.     CreateObject(16000,-2851.60009766,-1572.19995117,140.19999695,0.00000000,0.00000000,104.00000000); //object(drvin_screen) (1)
  665.     CreateObject(1595,-2871.60009766,-1490.40002441,140.50000000,0.00000000,0.00000000,290.00000000); //object(satdishbig) (1)
  666.     CreateObject(3866,-2798.60009766,-1543.50000000,146.69999695,0.00000000,0.00000000,0.00000000); //object(demolish1_sfxrf) (1)
  667.     CreateObject(3887,-2906.80004883,-1319.80004883,18.70000076,0.00000000,0.00000000,174.00000000); //object(demolish4_sfxrf) (1)
  668.     CreateObject(2901,-2813.00000000,-1517.19995117,140.19999695,0.00000000,0.00000000,0.00000000); //object(kmb_marijuana) (1)
  669.     CreateObject(2901,-2813.00000000,-1517.19995117,140.60000610,0.00000000,0.00000000,0.00000000); //object(kmb_marijuana) (2)
  670.     CreateObject(2901,-2812.60009766,-1517.50000000,140.10000610,0.00000000,0.00000000,0.00000000); //object(kmb_marijuana) (3)
  671.     CreateObject(2901,-2812.60009766,-1517.50000000,140.50000000,0.00000000,0.00000000,0.00000000); //object(kmb_marijuana) (4)
  672.     CreateObject(2919,-2813.30004883,-1529.50000000,140.50000000,0.00000000,0.00000000,0.00000000); //object(kmb_holdall) (1)
  673.     CreateObject(2571,-2818.39990234,-1516.69995117,139.80000305,0.00000000,0.00000000,0.00000000); //object(hotel_single_1) (1)
  674.     CreateObject(2289,-2819.89990234,-1515.19995117,142.19999695,0.00000000,0.00000000,0.00000000); //object(frame_2) (1)
  675.     CreateObject(1974,-2818.60009766,-1517.80004883,139.89999390,0.00000000,0.00000000,0.00000000); //object(kb_golfball) (1)
  676.     CreateObject(1893,-2818.10009766,-1519.90002441,143.39999390,0.00000000,0.00000000,0.00000000); //object(shoplight1) (1)
  677.     CreateObject(1766,-2820.10009766,-1525.09997559,139.80000305,0.00000000,0.00000000,88.00000000); //object(med_couch_1) (1)
  678.     CreateObject(1734,-2815.50000000,-1523.19995117,143.30000305,0.00000000,0.00000000,0.00000000); //object(cj_mlight2) (1)
  679.     CreateObject(1255,-2819.60009766,-1528.09997559,140.39999390,0.00000000,0.00000000,0.00000000); //object(lounger) (1)
  680.     CreateObject(1646,-2808.50000000,-1529.69995117,140.19999695,0.00000000,0.00000000,180.00000000); //object(lounge_towel_up) (1)
  681.     CreateObject(1369,-2809.60009766,-1516.09997559,140.50000000,0.00000000,0.00000000,0.00000000); //object(cj_wheelchair1) (1)
  682.     CreateObject(2008,-2820.39990234,-1516.19995117,139.80000305,0.00000000,0.00000000,0.00000000); //object(officedesk1) (1)
  683.     CreateObject(1671,-2819.69995117,-1517.00000000,140.30000305,0.00000000,0.00000000,182.00000000); //object(swivelchair_a) (1)
  684.     CreateObject(2517,-2813.00000000,-1526.40002441,139.80000305,0.00000000,0.00000000,274.75000000); //object(cj_shower1) (1)
  685.     CreateObject(2521,-2814.00000000,-1515.90002441,139.80000305,0.00000000,0.00000000,0.00000000); //object(cj_toilet2) (1)
  686.     CreateObject(2628,-2812.19995117,-1522.00000000,139.80000305,0.00000000,0.00000000,276.00000000); //object(gym_bench2) (1)
  687.     CreateObject(2700,-2811.89990234,-1543.09997559,140.89999390,0.00000000,0.00000000,0.00000000); //object(cj_sex_tv2) (1)
  688.     CreateObject(1612,-2971.10009766,-1622.40002441,3.50000000,0.00000000,0.00000000,0.00000000); //object(submarine) (1)
  689.     CreateObject(18256,-319.60000610,-374.50000000,-4.50000000,0.00000000,0.00000000,44.00000000); //object(w7bark01) (1)
  690.     CreateObject(18256,-280.29998779,-342.70001221,-4.80000019,0.00000000,0.00000000,43.99475098); //object(w7bark01) (2)
  691.     CreateObject(10838,-486.89999390,-555.70001221,42.09999847,0.00000000,0.00000000,269.99996948); //object(airwelcomesign_sfse) (1)
  692.     CreateObject(10757,-488.00000000,-555.79998779,44.59999847,0.00000000,0.00000000,0.00000000); //object(airport_04_sfse) (2)
  693.     CreateObject(12990,2090.69995117,-113.90000153,1.00000000,0.00000000,351.75000000,130.07958984); //object(sw_jetty) (1)
  694.     CreateObject(12990,2067.69995117,-132.89999390,0.50000000,0.00000000,351.74926758,130.07812500); //object(sw_jetty) (2)
  695.     CreateObject(12990,2046.59997559,-153.80000305,0.20000000,0.00000000,351.49926758,138.82815552); //object(sw_jetty) (3)
  696.     CreateObject(12990,2029.19995117,-174.00000000,0.00000000,0.00000000,351.49658203,138.82324219); //object(sw_jetty) (4)
  697.     CreateObject(12990,2012.50000000,-193.50000000,0.00000000,0.00000000,351.49658203,140.07324219); //object(sw_jetty) (5)
  698.     CreateObject(12990,1998.00000000,-215.00000000,0.00000000,0.00000000,353.49108887,151.57019043); //object(sw_jetty) (6)
  699.     CreateObject(12990,1989.50000000,-239.19999695,0.00000000,0.00000000,353.49060059,167.56738281); //object(sw_jetty) (7)
  700.     CreateObject(18450,1833.19995117,-414.10000610,80.59999847,0.00000000,0.00000000,0.00000000); //object(cs_roadbridge04) (1)
  701.     CreateObject(18450,1909.40002441,-413.50000000,74.50000000,0.00000000,10.50000000,0.00000000); //object(cs_roadbridge04) (5)
  702.     CreateObject(18450,1984.90002441,-406.29998779,66.19999695,0.00000000,1.49743652,10.75000000); //object(cs_roadbridge04) (6)
  703.     CreateObject(899,1922.90002441,-343.00000000,18.89999962,0.00000000,358.00000000,348.00000000); //object(searock03) (1)
  704.     CreateObject(18256,261.00000000,140.00000000,-5.90000010,0.00000000,0.00000000,287.99996948); //object(w7bark01) (3)
  705.     CreateObject(18256,249.39999390,189.19999695,-5.90000010,0.00000000,0.00000000,287.99560547); //object(w7bark01) (4)
  706.     CreateObject(18256,237.39999390,237.89999390,-5.90000010,0.00000000,0.00000000,287.99560547); //object(w7bark01) (5)
  707.     CreateObject(18256,226.30000305,287.10000610,-5.50000000,0.00000000,0.00000000,287.99560547); //object(w7bark01) (6)
  708.     CreateObject(18256,213.89999390,336.10000610,-5.50000000,0.00000000,0.00000000,287.99560547); //object(w7bark01) (7)
  709.     CreateObject(18256,202.69999695,385.10000610,-5.30000019,0.00000000,0.00000000,287.99560547); //object(w7bark01) (8)
  710.     CreateObject(18256,190.69999695,434.39999390,-4.80000019,0.00000000,0.00000000,287.99560547); //object(w7bark01) (9)
  711.     CreateObject(18256,179.50000000,483.60000610,-4.50000000,0.00000000,0.00000000,287.99560547); //object(w7bark01) (10)
  712.     CreateObject(18256,168.10000610,532.90002441,-4.09999990,0.00000000,0.00000000,287.99560547); //object(w7bark01) (11)
  713.     CreateObject(18256,157.10000610,582.20001221,-3.79999995,0.00000000,0.00000000,287.99560547); //object(w7bark01) (12)
  714.     CreateObject(18256,146.00000000,630.50000000,-5.69999981,0.00000000,353.50000000,287.99560547); //object(w7bark01) (13)
  715.     CreateObject(18256,-760.29998779,1376.40002441,-1.60000002,0.00000000,0.00000000,94.00000000); //object(w7bark01) (14)
  716.     CreateObject(11447,-1287.50000000,2523.50000000,86.40000153,0.00000000,0.00000000,0.00000000); //object(des_pueblo08) (1)
  717.     CreateObject(16021,-2324.80004883,-1611.09997559,482.39999390,0.00000000,0.00000000,96.00000000); //object(des_geyhotbase_) (1)
  718.     CreateObject(2921,-2323.85253906,-1618.25097656,482.48373413,0.00000000,0.00000000,0.00000000); //object(kmb_cam) (1)
  719.     CreateObject(2886,-2320.30004883,-1612.90002441,484.79998779,0.00000000,0.00000000,12.25000000); //object(sec_keypad) (1)
  720.  
  721.     return 1;
  722. }
  723.  
  724. public OnGameModeExit()
  725. {
  726.     print("\n------------------------------------");
  727.     print("------- MWFFA Script unloaded --------");
  728.     print("--------------------------------------\n");
  729.  
  730.     IRC_Quit(gBotID[0], "Overlord (SA-MP Bot) exiting.");
  731.     IRC_DestroyGroup(gGroupID);
  732.     return 1;
  733. }
  734.  
  735. public OnPlayerRequestClass(playerid, classid)
  736. {
  737.     SetPlayerPos(playerid, -207.1592,1742.3535,99.0923);
  738.     SetPlayerCameraPos(playerid, -200.6355,1747.4926,99.1228);
  739.     SetPlayerCameraLookAt(playerid, -207.1592,1742.3535,99.0923);
  740.  
  741.     GangZoneShowForPlayer(playerid, Zone[Z_KACC], 0xFF000096);
  742.     GangZoneShowForPlayer(playerid, Zone[Z_SCHOOL], 0xFF800096);
  743.     GangZoneShowForPlayer(playerid, Zone[Z_PIER], 0xFFFF0096);
  744.     GangZoneShowForPlayer(playerid, Zone[Z_DOCK], 0x00FFFF81);
  745.     GangZoneShowForPlayer(playerid, Zone[Z_AT], 0x0000FF96);
  746.     GangZoneShowForPlayer(playerid, Zone[Z_EAR], 0xFFFFFF96);
  747.     GangZoneShowForPlayer(playerid, Zone[Z_SFARM], 0xFFFFFF96);
  748.  
  749.     GangZoneShowForPlayer(playerid, Z_USA, 0x0000FF96);
  750.     GangZoneShowForPlayer(playerid, Z_USA_1, 0x0000FF96);
  751.     GangZoneShowForPlayer(playerid, Z_RUSSIA, 0xFF000096);
  752.  
  753.     //Select Team
  754.     ShowPlayerDialog(playerid, DIALOG_CTEAM, DIALOG_STYLE_LIST, "Choose Team", "Delta Force (United States)\nSpetsnaz (Russia)\nGIGN (France)\nItalian Army (Italy)\nJapan Self Defense Forces (Japan)", "Select", "");
  755.     return 1;
  756. }
  757.  
  758. public OnPlayerConnect(playerid)
  759. {
  760.     new string[100];
  761.     new pName[MAX_PLAYER_NAME];
  762.     GetPlayerName(playerid, pName, sizeof(pName));
  763.     format(string, sizeof(string),"*** %s(%d) has joined the server.");
  764.     IRC_GroupSay(gGroupID, IRC_CHANNEL, string);
  765.     PlayerInfo[playerid][Connects]++;
  766.  
  767.     INI_Load(UserPath(playerid));
  768.  
  769.     Streamer_Update(playerid);
  770.  
  771.     if(PlayerInfo[playerid][LoggedIn] == 0)
  772.     {
  773.         if(fexist(UserPath(playerid)))
  774.         {
  775.             ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "Login", "{CFCC92}MWFFA\n\n\t\tWelcome to MWFFA!\n\n\t\tPlease enter your password to start the game!", "Join the Action", "Get Kicked");
  776.         }
  777.         else
  778.         {
  779.             ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Register", "\t\t\n{00FF00}MWFFA\n\n\t{0000FF}Welcome on the server!\n\t{0000FF}Please register to start the game!", "Join the Action", "Get Kicked");
  780.         }
  781.     }
  782.     else
  783.     {
  784.         format(string, sizeof(string),"You have been auto logged in | Operator Level: %d | Admin Level: %d | VIP Rank: %d", PlayerInfo[playerid][Operator], PlayerInfo[playerid][Admin], PlayerInfo[playerid][Rank]);
  785.         SendClientMessage(playerid, COLOR_YELLOW, string);
  786.         GivePlayerMoney(playerid, PlayerInfo[playerid][Cash]);
  787.         SetPlayerScore(playerid, PlayerInfo[playerid][Xp]);
  788.         printf("*** %s has logged in!", pName);
  789.     }
  790.     return 1;
  791. }
  792.  
  793. public OnPlayerDisconnect(playerid, reason)
  794. {
  795.     new reasonMsg[20];
  796.     new pName[MAX_PLAYER_NAME];
  797.     GetPlayerName(playerid, pName, sizeof(pName));
  798.     new year,month,day;
  799.     getdate(year,month,day);
  800.  
  801.     PlayerInfo[playerid][Streak] = 0;
  802.     PlayerInfo[playerid][Protected] = 0;
  803.     PlayerInfo[playerid][CapturingZone] = 0;
  804.     IsVIP[playerid] = 0;
  805.     IsSoldier[playerid] = 0;
  806.     IsSniper[playerid] = 0;
  807.     IsMedic[playerid] = 0;
  808.     IsEngineer[playerid] = 0;
  809.     IsPilot[playerid] = 0;
  810.     IsFlamethrower[playerid] = 0;
  811.     IsScout[playerid] = 0;
  812.     IsSpy[playerid] = 0;
  813.     IsHeliDriver[playerid] = 0;
  814.     IsPlaneDriver[playerid] = 0;
  815.     IsGeneral[playerid] = 0;
  816.     IsOwner[playerid] = 0;
  817.     IsAdmin[playerid] = 0;
  818.  
  819.     new INI:File = INI_Open(UserPath(playerid));
  820.     INI_SetTag(File,"data");
  821.     INI_WriteInt(File,"Money",GetPlayerMoney(playerid));
  822.     INI_WriteInt(File,"Kills",PlayerInfo[playerid][Kills]);
  823.     INI_WriteInt(File,"Deaths",PlayerInfo[playerid][Deaths]);
  824.     INI_WriteInt(File,"Admin",PlayerInfo[playerid][Admin]);
  825.     INI_WriteInt(File,"Operator",PlayerInfo[playerid][Operator]);
  826.     INI_WriteInt(File,"Rank",PlayerInfo[playerid][Rank]);
  827.     INI_WriteInt(File,"Score",PlayerInfo[playerid][Score]);
  828.     INI_WriteInt(File,"XP",PlayerInfo[playerid][Xp]);
  829.     INI_Close(File);
  830.  
  831.     switch(reason)
  832.     {
  833.         case 0: reasonMsg = "Timeout";
  834.         case 1: reasonMsg = "Leaving";
  835.         case 2: reasonMsg = "Kicked/Banned";
  836.     }
  837.  
  838.     new string[70];
  839.     format(string, sizeof(string),"*** %s(%d) has left the server (%s)", pName, playerid, reasonMsg);
  840.     IRC_GroupSay(gGroupID, IRC_CHANNEL, string);
  841.     format(string, sizeof(string),"-| %s(%d) has left the server! (%s) |-", pName, playerid, reasonMsg);
  842.     SendClientMessageToAll(COLOR_PINK, string);
  843.     PlayerInfo[playerid][Disconnects]++;
  844.     return 1;
  845. }
  846.  
  847. public OnPlayerSpawn(playerid)
  848. {
  849.     if(CapturedBy[Z_KACC] == 0)
  850.     {
  851.         GangZoneShowForPlayer(playerid, Zone[Z_KACC], 0xFF000096);
  852.     }
  853.  
  854.     if(CapturedBy[Z_KACC] == 1)
  855.     {
  856.         GangZoneShowForPlayer(playerid, Zone[Z_KACC], 0x0000FF95);
  857.     }
  858.  
  859.     if(CapturedBy[Z_KACC] == 2)
  860.     {
  861.         GangZoneShowForPlayer(playerid, Zone[Z_KACC], 0xFF000095);
  862.     }
  863.  
  864.     if(CapturedBy[Z_KACC] == 3)
  865.     {
  866.         GangZoneShowForPlayer(playerid, Zone[Z_KACC], 0x00FF0095);
  867.     }
  868.  
  869.     if(CapturedBy[Z_KACC] == 4)
  870.     {
  871.         GangZoneShowForPlayer(playerid, Zone[Z_KACC], 0x00FFFF95);
  872.     }
  873.  
  874.     if(CapturedBy[Z_KACC] == 5)
  875.     {
  876.         GangZoneShowForPlayer(playerid, Zone[Z_KACC], 0xFFA6007C);
  877.     }
  878.  
  879.     //Abandoned Town
  880.     if(CapturedBy[Z_AT] == 0)
  881.     {
  882.         GangZoneShowForPlayer(playerid, Zone[Z_AT], 0xFF000096);
  883.     }
  884.  
  885.     if(CapturedBy[Z_AT] == 1)
  886.     {
  887.         GangZoneShowForPlayer(playerid, Zone[Z_AT], 0x0000FF95);
  888.     }
  889.  
  890.     if(CapturedBy[Z_AT] == 2)
  891.     {
  892.         GangZoneShowForPlayer(playerid, Zone[Z_AT], 0xFF000095);
  893.     }
  894.  
  895.     if(CapturedBy[Z_AT] == 3)
  896.     {
  897.         GangZoneShowForPlayer(playerid, Zone[Z_AT], 0x00FF0095);
  898.     }
  899.  
  900.     if(CapturedBy[Z_AT] == 4)
  901.     {
  902.         GangZoneShowForPlayer(playerid, Zone[Z_AT], 0x00FFFF95);
  903.     }
  904.  
  905.     if(CapturedBy[Z_AT] == 5)
  906.     {
  907.         GangZoneShowForPlayer(playerid, Zone[Z_AT], 0xFFA6007C);
  908.     }
  909.  
  910.     //Fallen Tree Warehouse
  911.     if(CapturedBy[Z_FTW] == 0)
  912.     {
  913.         GangZoneShowForPlayer(playerid, Zone[Z_FTW], 0xFF000096);
  914.     }
  915.  
  916.     if(CapturedBy[Z_FTW] == 1)
  917.     {
  918.         GangZoneShowForPlayer(playerid, Zone[Z_FTW], 0x0000FF95);
  919.     }
  920.  
  921.     if(CapturedBy[Z_FTW] == 2)
  922.     {
  923.         GangZoneShowForPlayer(playerid, Zone[Z_FTW], 0xFF000095);
  924.     }
  925.  
  926.     if(CapturedBy[Z_FTW] == 3)
  927.     {
  928.         GangZoneShowForPlayer(playerid, Zone[Z_FTW], 0x00FF0095);
  929.     }
  930.  
  931.     if(CapturedBy[Z_FTW] == 4)
  932.     {
  933.         GangZoneShowForPlayer(playerid, Zone[Z_FTW], 0x00FFFF95);
  934.     }
  935.  
  936.     if(CapturedBy[Z_FTW] == 5)
  937.     {
  938.         GangZoneShowForPlayer(playerid, Zone[Z_FTW], 0xFFA6007C);
  939.     }
  940.  
  941.     //The Big Ear
  942.     if(CapturedBy[Z_EAR] == 0)
  943.     {
  944.         GangZoneShowForPlayer(playerid, Zone[Z_EAR], 0xFF000096);
  945.     }
  946.  
  947.     if(CapturedBy[Z_EAR] == 1)
  948.     {
  949.         GangZoneShowForPlayer(playerid, Zone[Z_EAR], 0x0000FF95);
  950.     }
  951.  
  952.     if(CapturedBy[Z_EAR] == 2)
  953.     {
  954.         GangZoneShowForPlayer(playerid, Zone[Z_EAR], 0xFF000095);
  955.     }
  956.  
  957.     if(CapturedBy[Z_EAR] == 3)
  958.     {
  959.         GangZoneShowForPlayer(playerid, Zone[Z_EAR], 0x00FF0095);
  960.     }
  961.  
  962.     if(CapturedBy[Z_EAR] == 4)
  963.     {
  964.         GangZoneShowForPlayer(playerid, Zone[Z_EAR], 0x00FFFF95);
  965.     }
  966.  
  967.     if(CapturedBy[Z_EAR] == 5)
  968.     {
  969.         GangZoneShowForPlayer(playerid, Zone[Z_EAR], 0xFFA6007C);
  970.     }
  971.  
  972.     //Snake Farm
  973.     if(CapturedBy[Z_SFARM] == 0)
  974.     {
  975.         GangZoneShowForPlayer(playerid, Zone[Z_SFARM], 0xFF000096);
  976.     }
  977.  
  978.     if(CapturedBy[Z_SFARM] == 1)
  979.     {
  980.         GangZoneShowForPlayer(playerid, Zone[Z_SFARM], 0x0000FF95);
  981.     }
  982.  
  983.     if(CapturedBy[Z_SFARM] == 2)
  984.     {
  985.         GangZoneShowForPlayer(playerid, Zone[Z_SFARM], 0xFF000095);
  986.     }
  987.  
  988.     if(CapturedBy[Z_SFARM] == 3)
  989.     {
  990.         GangZoneShowForPlayer(playerid, Zone[Z_SFARM], 0x00FF0095);
  991.     }
  992.  
  993.     if(CapturedBy[Z_SFARM] == 4)
  994.     {
  995.         GangZoneShowForPlayer(playerid, Zone[Z_SFARM], 0x00FFFF95);
  996.     }
  997.  
  998.     if(CapturedBy[Z_SFARM] == 5)
  999.     {
  1000.         GangZoneShowForPlayer(playerid, Zone[Z_SFARM], 0xFFA6007C);
  1001.     }
  1002.  
  1003.     //Trailer Park
  1004.     if(CapturedBy[Z_TPARK] == 0)
  1005.     {
  1006.         GangZoneShowForPlayer(playerid, Zone[Z_TPARK], 0xFF000096);
  1007.     }
  1008.  
  1009.     if(CapturedBy[Z_TPARK] == 1)
  1010.     {
  1011.         GangZoneShowForPlayer(playerid, Zone[Z_TPARK], 0x0000FF95);
  1012.     }
  1013.  
  1014.     if(CapturedBy[Z_TPARK] == 2)
  1015.     {
  1016.         GangZoneShowForPlayer(playerid, Zone[Z_TPARK], 0xFF000095);
  1017.     }
  1018.  
  1019.     if(CapturedBy[Z_TPARK] == 3)
  1020.     {
  1021.         GangZoneShowForPlayer(playerid, Zone[Z_TPARK], 0x00FF0095);
  1022.     }
  1023.  
  1024.     if(CapturedBy[Z_TPARK] == 4)
  1025.     {
  1026.         GangZoneShowForPlayer(playerid, Zone[Z_TPARK], 0x00FFFF95);
  1027.     }
  1028.  
  1029.     if(CapturedBy[Z_TPARK] == 5)
  1030.     {
  1031.         GangZoneShowForPlayer(playerid, Zone[Z_TPARK], 0xFFA6007C);
  1032.     }
  1033.  
  1034.     GangZoneShowForPlayer(playerid, Z_USA, 0x0000FF96);
  1035.     GangZoneShowForPlayer(playerid, Z_USA_1, 0x0000FF96);
  1036.     GangZoneShowForPlayer(playerid, Z_RUSSIA, 0xFF000096);
  1037.  
  1038.     GangZoneShowForPlayer(playerid, O_BASE, 0xFFFF0096);
  1039.  
  1040.     SendClientMessage(playerid, COLOR_YELLOW, "You are anti-spawn kill protected for 10 seconds");
  1041.     PlayerInfo[playerid][Protected] = 1;
  1042.     SetTimerEx("ASKOff", 10000, 0, "i", playerid);
  1043.     SetPlayerHealth(playerid, 999999);
  1044.  
  1045.     new team = GetPlayerTeam(playerid);
  1046.     if(team == TEAM_DELTA)
  1047.     {
  1048.         SetPlayerPos(playerid, 132.8504, 1936.7646, 19.2756);
  1049.         SetPlayerFacingAngle(playerid, 172.3116);
  1050.     }
  1051.  
  1052.     if(team == TEAM_IA)
  1053.     {
  1054.         SetPlayerPos(playerid, 1124.5066, -2037.7314, 69.8836);
  1055.         SetPlayerFacingAngle(playerid, 271.6192);
  1056.     }
  1057.  
  1058.     if(team == TEAM_JSDF)
  1059.     {
  1060.         SetPlayerPos(playerid, -1233.6389, 390.4041, 7.2325);
  1061.         SetPlayerFacingAngle(playerid, 2.6318);
  1062.     }
  1063.  
  1064.     //----------------//
  1065.     //Classes---------//
  1066.     //---------------//
  1067.     if(IsSoldier[playerid] == 1)
  1068.     {
  1069.         GivePlayerWeapon(playerid, 22, 100);
  1070.         GivePlayerWeapon(playerid, 32, 150);
  1071.         GivePlayerWeapon(playerid, 31, 300);
  1072.         GivePlayerWeapon(playerid, 41, 200);
  1073.     }
  1074.  
  1075.     if(IsSniper[playerid] == 1)
  1076.     {
  1077.         GivePlayerWeapon(playerid, 23, 50);
  1078.         GivePlayerWeapon(playerid, 28, 120);
  1079.         GivePlayerWeapon(playerid, 34, 400);
  1080.         GivePlayerWeapon(playerid, 17, 20);
  1081.     }
  1082.  
  1083.     if(IsMedic[playerid] == 1)
  1084.     {
  1085.         GivePlayerWeapon(playerid, 24, 60);
  1086.         GivePlayerWeapon(playerid, 32, 135);
  1087.         GivePlayerWeapon(playerid, 31, 300);
  1088.         GivePlayerWeapon(playerid, 41, 999999);
  1089.     }
  1090.  
  1091.     if(IsEngineer[playerid] == 1)
  1092.     {
  1093.         GivePlayerWeapon(playerid, 22, 100);
  1094.         GivePlayerWeapon(playerid, 26, 200);
  1095.         GivePlayerWeapon(playerid, 31, 300);
  1096.         GivePlayerWeapon(playerid, 16, 5);
  1097.     }
  1098.  
  1099.     if(IsPilot[playerid] == 1)
  1100.     {
  1101.         GivePlayerWeapon(playerid, 22, 200);
  1102.         GivePlayerWeapon(playerid, 29, 250);
  1103.         GivePlayerWeapon(playerid, 31, 400);
  1104.         GivePlayerWeapon(playerid, 46, 1);
  1105.     }
  1106.  
  1107.     if(IsFlamethrower[playerid] == 1)
  1108.     {
  1109.         GivePlayerWeapon(playerid, 24, 300);
  1110.         GivePlayerWeapon(playerid, 27, 200);
  1111.         GivePlayerWeapon(playerid, 30, 400);
  1112.         GivePlayerWeapon(playerid, 37, 200);
  1113.         GivePlayerWeapon(playerid, 18, 15);
  1114.     }
  1115.  
  1116.     if(IsSpy[playerid] == 1)
  1117.     {
  1118.         GivePlayerWeapon(playerid, 22, 100);
  1119.         GivePlayerWeapon(playerid, 26, 200);
  1120.         GivePlayerWeapon(playerid, 31, 300);
  1121.         GivePlayerWeapon(playerid, 16, 5);
  1122.     }
  1123.  
  1124.     if(IsScout[playerid] == 1)
  1125.     {
  1126.         GivePlayerWeapon(playerid, 4, 1);
  1127.         GivePlayerWeapon(playerid, 23, 75);
  1128.         GivePlayerWeapon(playerid, 29, 130);
  1129.         GivePlayerWeapon(playerid, 31, 200);
  1130.     }
  1131.  
  1132.     if(IsPlaneDriver[playerid] == 1)
  1133.     {
  1134.         GivePlayerWeapon(playerid, 26, 80);
  1135.         GivePlayerWeapon(playerid, 29, 75);
  1136.         GivePlayerWeapon(playerid, 33, 130);
  1137.         GivePlayerWeapon(playerid, 31, 200);
  1138.         GivePlayerWeapon(playerid, 46, 1);
  1139.  
  1140.         if(GetPlayerTeam(playerid) == TEAM_DELTA)
  1141.         {
  1142.             SetPlayerPos(playerid, 340.9796, 2556.1655, 16.6970);
  1143.         }
  1144.     }
  1145.  
  1146.     if(IsHeliDriver[playerid] == 1)
  1147.     {
  1148.         GivePlayerWeapon(playerid, 26, 80);
  1149.         GivePlayerWeapon(playerid, 29, 75);
  1150.         GivePlayerWeapon(playerid, 33, 130);
  1151.         GivePlayerWeapon(playerid, 31, 200);
  1152.         GivePlayerWeapon(playerid, 46, 1);
  1153.  
  1154.         if(GetPlayerTeam(playerid) == TEAM_DELTA)
  1155.         {
  1156.             SetPlayerPos(playerid, 340.9796, 2556.1655, 16.6970);
  1157.             SetPlayerFacingAngle(playerid, 177.2852);
  1158.         }
  1159.     }
  1160.  
  1161.     if(IsGeneral[playerid] == 1)
  1162.     {
  1163.         GivePlayerWeapon(playerid, 26, 500);
  1164.         GivePlayerWeapon(playerid, 32, 650);
  1165.         GivePlayerWeapon(playerid, 31, 800);
  1166.         GivePlayerWeapon(playerid, 35, 3);
  1167.         GivePlayerWeapon(playerid, 16, 10);
  1168.     }
  1169.  
  1170.     if(IsVIP[playerid] == 1)
  1171.     {
  1172.         GivePlayerWeapon(playerid, 24, 1000);
  1173.         GivePlayerWeapon(playerid, 28, 1300);
  1174.         GivePlayerWeapon(playerid, 31, 1400);
  1175.         GivePlayerWeapon(playerid, 36, 10);
  1176.         GivePlayerWeapon(playerid, 16, 10);
  1177.     }
  1178.  
  1179.     if(IsOwner[playerid] == 1)
  1180.     {
  1181.         GivePlayerWeapon(playerid, 22, 999999);
  1182.         GivePlayerWeapon(playerid, 32, 999999);
  1183.         GivePlayerWeapon(playerid, 31, 999999);
  1184.         GivePlayerWeapon(playerid, 38, 999999);
  1185.         GivePlayerWeapon(playerid, 16, 999999);
  1186.     }
  1187.     return 1;
  1188. }
  1189.  
  1190. public OnPlayerDeath(playerid, killerid, reason)
  1191. {
  1192.     new string[100];
  1193.     new pName[MAX_PLAYER_NAME];
  1194.     new pNameTwo[MAX_PLAYER_NAME];
  1195.     GetPlayerName(playerid, pName, sizeof(pName));
  1196.     GetPlayerName(killerid, pNameTwo, sizeof(pNameTwo));
  1197.     new reasonMsg[30];
  1198.  
  1199.     if(killerid != INVALID_PLAYER_ID)
  1200.     {
  1201.         if(IsSpy[killerid] == 1)
  1202.         {
  1203.             GameTextForPlayer(playerid, "~r~Killed by a spy!", 4000, 4);
  1204.         }
  1205.         switch (reason)
  1206.         {
  1207.             case 0: reasonMsg = "Unarmed";
  1208.             case 1: reasonMsg = "Brass Knuckles";
  1209.             case 2: reasonMsg = "Golf Club";
  1210.             case 3: reasonMsg = "Night Stick";
  1211.             case 4: reasonMsg = "Knife";
  1212.             case 5: reasonMsg = "Baseball Bat";
  1213.             case 6: reasonMsg = "Shovel";
  1214.             case 7: reasonMsg = "Pool Cue";
  1215.             case 8: reasonMsg = "Katana";
  1216.             case 9: reasonMsg = "Chainsaw";
  1217.             case 10: reasonMsg = "Dildo";
  1218.             case 11: reasonMsg = "Dildo";
  1219.             case 12: reasonMsg = "Vibrator";
  1220.             case 13: reasonMsg = "Vibrator";
  1221.             case 14: reasonMsg = "Flowers";
  1222.             case 15: reasonMsg = "Cane";
  1223.             case 22: reasonMsg = "Pistol";
  1224.             case 23: reasonMsg = "Silenced Pistol";
  1225.             case 24: reasonMsg = "Desert Eagle";
  1226.             case 25: reasonMsg = "Shotgun";
  1227.             case 26: reasonMsg = "Sawn-off Shotgun";
  1228.             case 27: reasonMsg = "Combat Shotgun";
  1229.             case 28: reasonMsg = "MAC-10";
  1230.             case 29: reasonMsg = "MP5";
  1231.             case 30: reasonMsg = "AK-47";
  1232.             case 31: reasonMsg = "M4";
  1233.             case 32: reasonMsg = "TEC-9";
  1234.             case 33: reasonMsg = "Country Rifle";
  1235.             case 34: reasonMsg = "Sniper Rifle";
  1236.             case 37: reasonMsg = "Fire";
  1237.             case 38: reasonMsg = "Minigun";
  1238.             case 41: reasonMsg = "Spray Can";
  1239.             case 42: reasonMsg = "Fire Extinguisher";
  1240.             case 49: reasonMsg = "Vehicle Collision";
  1241.             case 50: reasonMsg = "Vehicle Collision";
  1242.             case 51: reasonMsg = "Explosion";
  1243.             case 52: reasonMsg = "Airstrike";
  1244.             case 53: reasonMsg = "Nuke";
  1245.             default: reasonMsg = "Unknown";
  1246.         }
  1247.  
  1248.         StreakInfo[killerid][Streak]++;
  1249.         StreakInfo[playerid][Streak] = 0;
  1250.         format(string, sizeof(string),"-| You have killed %s(%d) and have earned $250, and 5 XP |-", pName, playerid);
  1251.         SendClientMessage(killerid, COLOR_YELLOW, string);
  1252.         format(string, sizeof(string),"-| You have been killed by %s(%d) and have lost $100 |-", pNameTwo, killerid);
  1253.         SendClientMessage(playerid, COLOR_RED, string);
  1254.         IncreasePlayerXp(playerid, 5);
  1255.         GivePlayerMoney(killerid, 250);
  1256.         GivePlayerMoney(playerid, -100);
  1257.         format(string, sizeof(string),"*** %s(%d) has been killed by %s(%d). (%s)", pName, playerid, pNameTwo, killerid, reasonMsg);
  1258.         IRC_GroupSay(gGroupID, IRC_CHANNEL, string);
  1259.  
  1260.         if(StreakInfo[killerid][Streak] == 3)
  1261.         {
  1262.             format(string, sizeof(string),"*** %s(%d) is on a 3 killing streak!", pNameTwo, killerid);
  1263.             SendClientMessageToAll(COLOR_AQUA, string);
  1264.             SendClientMessage(killerid, COLOR_GREEN, "-| You have earned $250 and 3 XP for the killing streak |-");
  1265.             GivePlayerMoney(killerid, 250);
  1266.             IncreasePlayerXp(killerid, 3);
  1267.         }
  1268.  
  1269.         if(StreakInfo[killerid][Streak] == 5)
  1270.         {
  1271.             format(string, sizeof(string),"*** %s(%d) is on a 5 killing streak!", pNameTwo, killerid);
  1272.             SendClientMessageToAll(COLOR_AQUA, string);
  1273.             SendClientMessage(killerid, COLOR_GREEN, "-| You have earned $1000 and 5 XP for the killing streak |-");
  1274.             GivePlayerMoney(killerid, 1000);
  1275.             IncreasePlayerXp(killerid, 5);
  1276.         }
  1277.  
  1278.         if(StreakInfo[killerid][Streak] == 10)
  1279.         {
  1280.             format(string, sizeof(string),"*** %s(%d) is on a 10 killing streak!", pNameTwo, killerid);
  1281.             SendClientMessageToAll(COLOR_AQUA, string);
  1282.             SendClientMessage(killerid, COLOR_GREEN, "-| You have earned $2500 and 8 XP for the killing streak |-");
  1283.             GivePlayerMoney(killerid, 2500);
  1284.             IncreasePlayerXp(killerid, 8);
  1285.         }
  1286.  
  1287.         if(StreakInfo[killerid][Streak] == 20)
  1288.         {
  1289.             format(string, sizeof(string),"*** %s(%d) is on a 20 killing streak!", pNameTwo, killerid);
  1290.             SendClientMessageToAll(COLOR_AQUA, string);
  1291.             SendClientMessage(killerid, COLOR_GREEN, "-| You have earned $7500 and 15 XP for the killing streak |-");
  1292.             GivePlayerMoney(killerid, 7500);
  1293.             IncreasePlayerXp(killerid, 15);
  1294.         }
  1295.     }
  1296.     SendDeathMessage(killerid, playerid, reason);
  1297.     return 1;
  1298. }
  1299.  
  1300. public OnVehicleSpawn(vehicleid)
  1301. {
  1302.     return 1;
  1303. }
  1304.  
  1305. public OnVehicleDeath(vehicleid, killerid)
  1306. {
  1307.     return 1;
  1308. }
  1309.  
  1310. public OnPlayerText(playerid, text[])
  1311. {
  1312.     new string[100];
  1313.     new pName[MAX_PLAYER_NAME];
  1314.     GetPlayerName(playerid, pName, sizeof(pName));
  1315.     format(string, sizeof(string),"*** %s(%d): %s", pName, playerid, text);
  1316.     IRC_GroupSay(gGroupID, IRC_CHANNEL, string);
  1317.  
  1318.     new year,month,day;
  1319.     new hour,minute,second;
  1320.     getdate(year,month,day);
  1321.     gettime(hour,minute,second);
  1322.  
  1323.     //Bot
  1324.     if(strfind(text,"noob bot",true) != -1)
  1325.     {
  1326.         SendClientMessageToAll(COLOR_GREEN, "[BOT]WarBot: I'm not the noob, you are.");
  1327.     }
  1328.  
  1329.     if(strfind(text,"hi bot",true) != -1)
  1330.     {
  1331.         SendClientMessageToAll(COLOR_GREEN, "[BOT]WarBot: Hey man!");
  1332.     }
  1333.  
  1334.     if(strfind(text,"ban the bot",true) != -1)
  1335.     {
  1336.         SendClientMessageToAll(COLOR_GREEN, "[BOT]WarBot: Why do you want me banned?");
  1337.     }
  1338.  
  1339.     if(strfind(text,"rapter 5",true) != -1)
  1340.     {
  1341.         SendClientMessageToAll(COLOR_GREEN, "[BOT]WarBot: That is [MW]CaptainPrice[DF]'s callsign!");
  1342.     }
  1343.  
  1344.     //Admin Chat
  1345.     if(PlayerInfo[playerid][Admin] >= 1 && text[0] == '#')
  1346.     {
  1347.         format(string, sizeof(string),"(Admin Chat) %s(%d): %s", pName, playerid, text[1]);
  1348.         MessageToAdmins(COLOR_GREEN, string);
  1349.         format(string, sizeof(string),"[Date: %d/%d/%d][Time: %d:%d:%d] %s(%d): %s\n", year, month, day, hour, minute, second, pName, playerid, text[1]);
  1350.         SaveIn("AdminChat", string);
  1351.     }
  1352.  
  1353.     //VIP Chat
  1354.     if(PlayerInfo[playerid][Rank] >= 1 && text[0] == '^')
  1355.     {
  1356.         format(string, sizeof(string),"(VIP Chat) %s(%d): %s", pName, playerid, text[1]);
  1357.         MessageToVIPs(0x465300D7, string);
  1358.         format(string, sizeof(string),"[Date: %d/%d/%d][Time: %d:%d:%d] %s(%d): %s", year, month, day, hour, minute, second, pName, playerid, text[1]);
  1359.         SaveIn("VipChat", string);
  1360.     }
  1361.     return 1;
  1362. }
  1363.  
  1364. public OnPlayerCommandText(playerid, cmdtext[])
  1365. {
  1366.     dcmd(kill,4,cmdtext);
  1367.     dcmd(para,4,cmdtext);
  1368.     dcmd(radio,5,cmdtext);
  1369.     dcmd(report,6,cmdtext);
  1370.     dcmd(options,7,cmdtext);
  1371.     dcmd(rules,5,cmdtext);
  1372.     dcmd(arules,6,cmdtext);
  1373.     dcmd(stats,5,cmdtext);
  1374.     dcmd(help,4,cmdtext);
  1375.  
  1376.     //VEHICLE Mod commands
  1377.     dcmd(carmods,7,cmdtext);
  1378.  
  1379.     /*/===========
  1380.     VIP Commands
  1381.     ===========*/
  1382.     //Rank 1
  1383.     dcmd(vweaps1,7,cmdtext);
  1384.  
  1385.     //Rank 2
  1386.     dcmd(vweaps2,7,cmdtext);
  1387.  
  1388.     //Admin Commands
  1389.     dcmd(setlevel,8,cmdtext);
  1390.     dcmd(setop,5,cmdtext);
  1391.     dcmd(setxp,5,cmdtext);
  1392.     dcmd(goto,4,cmdtext);
  1393.     dcmd(repair,6,cmdtext);
  1394.     dcmd(get,3,cmdtext);
  1395.     dcmd(car,3,cmdtext);
  1396.     dcmd(ban,3,cmdtext);
  1397.     dcmd(kick,4,cmdtext);
  1398.  
  1399.     //"All" commands
  1400.     dcmd(giveallxp,9,cmdtext);
  1401.     //----------------------------------------------------------//
  1402.  
  1403.     //Commands to Admins
  1404.     new name[MAX_PLAYER_NAME];
  1405.     GetPlayerName(playerid, name, sizeof(name));
  1406.     new string[100];
  1407.     format(string, sizeof(string), "*** %s(%d) Command: %s", name,playerid,cmdtext);
  1408.     for(new i = 0; i < MAX_PLAYERS; i++)
  1409.     {
  1410.         if(IsPlayerConnected(i))
  1411.         {
  1412.             if(PlayerInfo[i][Admin] > PlayerInfo[playerid][Admin] && PlayerInfo[i][Admin] > 1 && i != playerid)
  1413.             {
  1414.                 SendClientMessage(i, 0x00000050, string);
  1415.             }
  1416.         }
  1417.     }
  1418.     return 1;
  1419. }
  1420.  
  1421. dcmd_kill(playerid, params[])
  1422. {
  1423.     #pragma unused params
  1424.     new string[100];
  1425.     new cRand = random(10000);
  1426.     SetPlayerHealth(playerid, 0);
  1427.     SetPlayerArmour(playerid, 0.0);
  1428.     format(string, sizeof(string), "You have been charged $%d for using /kill", cRand);
  1429.     SendClientMessage(playerid, COLOR_RED, string);
  1430.     GivePlayerMoney(playerid, -cRand);
  1431.     return 1;
  1432. }
  1433.  
  1434. dcmd_para(playerid, params[])
  1435. {
  1436.     #pragma unused params
  1437.  
  1438.     GivePlayerWeapon(playerid, 46, 1);
  1439.     SendClientMessage(playerid, -1, "Emergency parachute recieved");
  1440.     return 1;
  1441. }
  1442.  
  1443.  
  1444. dcmd_radio(playerid, params[])
  1445. {
  1446.     new name[MAX_PLAYER_NAME];
  1447.     GetPlayerName(playerid, name, sizeof(name));
  1448.     new string[100];
  1449.  
  1450.     for(new i = 0; i < MAX_PLAYERS; i++)
  1451.     {
  1452.         if(IsPlayerConnected(i))
  1453.         {
  1454.             if(GetPlayerTeam(i) == GetPlayerTeam(playerid))
  1455.             {
  1456.                 format(string, sizeof(string), "[RADIO] %s(%d): %s", name, playerid, params);
  1457.                 SendClientMessage(i, COLOR_GREEN, string);
  1458.             }
  1459.         }
  1460.     }
  1461.     return 1;
  1462. }
  1463.  
  1464. dcmd_report(playerid, params[])
  1465. {
  1466.     new Index;
  1467.     new tmp[256];
  1468.     tmp = strtok(params, Index);
  1469.     new id;
  1470.     id = strval(tmp);
  1471.  
  1472.     new year,month,day;
  1473.     new hour,minute,sec;
  1474.  
  1475.     gettime(hour,minute,sec);
  1476.     getdate(year,month,day);
  1477.  
  1478.     new name[MAX_PLAYER_NAME];
  1479.     GetPlayerName(playerid, name, sizeof(name));
  1480.     new name2[MAX_PLAYER_NAME];
  1481.     GetPlayerName(id, name2, sizeof(name2));
  1482.     new string[140];
  1483.  
  1484.     if(!strlen(params))
  1485.     {
  1486.         SendClientMessage(playerid, COLOR_RED, "Usage: /report (ID) (Reason)");
  1487.         SendClientMessage(playerid, COLOR_YELLOW, "Note: Only report someone with a valid reason");
  1488.         return 0;
  1489.     }
  1490.  
  1491.     if(!strlen(params[2]))
  1492.     {
  1493.         SendClientMessage(playerid, COLOR_RED, "ERROR: No reason specified");
  1494.         return 0;
  1495.     }
  1496.  
  1497.     if(!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Invalid player ID");
  1498.     if(id == playerid) return SendClientMessage(playerid, COLOR_RED, "ERROR: You cannot report yourself");
  1499.  
  1500.     format(string, sizeof(string),"[Date: %d/%d/%d] [Time: %d:%d:%d] Player %s reported %s | Reason: %s\n", year, month, day, hour, minute, sec, name, name2, params[strlen(tmp)+1]);
  1501.     SaveIn("Reports",string);
  1502.     format(string, sizeof(string), "REPORT: %s(%d) reported %s(%d) - Reason: %s", name, playerid, name2, id, params[strlen(tmp)+1]);
  1503.     MessageToAdmins(COLOR_YELLOW, string);
  1504.     format(string, sizeof(string), "-| You have successfully reported %s(%d) for reason: %s |-", name2, id, params[strlen(tmp)+1]);
  1505.     SendClientMessage(playerid, COLOR_GREEN, string);
  1506.     return 1;
  1507. }
  1508.  
  1509. dcmd_options(playerid, params[])
  1510. {
  1511.     #pragma unused params
  1512.  
  1513.     ShowPlayerDialog(playerid, DIALOG_OPTION, DIALOG_STYLE_LIST, "Player Options", "Auto Log-In\nStunt Bonus", "Select", "Cancel");
  1514.     return 1;
  1515. }
  1516.  
  1517. dcmd_rules(playerid, params[])
  1518. {
  1519.     #pragma unused params
  1520.  
  1521.     SendClientMessage(playerid, COLOR_YELLOW, "-| Rules |-");
  1522.     SendClientMessage(playerid, COLOR_AQUA, "1. Do not come on the server with hacks or illegal mods");
  1523.     SendClientMessage(playerid, COLOR_AQUA, "2. Do not car park or heli-blade");
  1524.     SendClientMessage(playerid, COLOR_AQUA, "3. Do not spam the chat or spam /report");
  1525.     SendClientMessage(playerid, COLOR_AQUA, "4. Do not flame/insult other players");
  1526.     SendClientMessage(playerid, COLOR_AQUA, "5. Use english only in the main chat");
  1527.     SendClientMessage(playerid, COLOR_AQUA, "6. Do not baserape. (Killing inside a base with tanks, hunters, and hydras.");
  1528.     SendClientMessage(playerid, COLOR_AQUA, "7. Do not advertise other servers");
  1529.     SendClientMessage(playerid, COLOR_AQUA, "8. Do not kill on-duty admins");
  1530.     return 1;
  1531. }
  1532.  
  1533. dcmd_arules(playerid, params[])
  1534. {
  1535.     #pragma unused params
  1536.     if(PlayerInfo[playerid][Admin] >= 1)
  1537.     {
  1538.         SendClientMessage(playerid, COLOR_YELLOW, "-| Admin Rules |-");
  1539.         SendClientMessage(playerid, COLOR_AQUA, "1. Do not spam admin chat");
  1540.         SendClientMessage(playerid, COLOR_AQUA, "2. Do not use /aweapons or /giveweapon and kill someone with the gun");
  1541.         SendClientMessage(playerid, COLOR_AQUA, "3. Do not /goto and kill that person");
  1542.         SendClientMessage(playerid, COLOR_AQUA, "4. Do not /onduty or /god and go kill someone");
  1543.         SendClientMessage(playerid, COLOR_AQUA, "5. Do not ban random people");
  1544.     }
  1545.     else SendClientMessage(playerid, COLOR_RED, "ERROR: You must be level 1+ to use this command");
  1546.     return 1;
  1547. }
  1548.  
  1549. dcmd_stats(playerid, params[])
  1550. {
  1551.     new string[100];
  1552.     new name[MAX_PLAYER_NAME];
  1553.     GetPlayerName(playerid, name, sizeof(name));
  1554.     new Float:health;
  1555.     new Float:armour;
  1556.     GetPlayerHealth(playerid, health);
  1557.     GetPlayerArmour(playerid, armour);
  1558.  
  1559.     new ping = GetPlayerPing(playerid);
  1560.     new score = GetPlayerScore(playerid);
  1561.     new skin = GetPlayerSkin(playerid);
  1562.     new money = GetPlayerMoney(playerid);
  1563.     new ip[128];
  1564.     GetPlayerIp(playerid, ip, sizeof(ip));
  1565.     #pragma unused params
  1566.     SendClientMessage(playerid, COLOR_AQUA, "-| Your Stats |-");
  1567.     format(string, sizeof(string),"Name: %s - ID: %d - Health: %d - Armour: %d - Money: $%d", name, playerid, floatround(health), floatround(armour),money);
  1568.     SendClientMessage(playerid, COLOR_YELLOW, string);
  1569.     format(string, sizeof(string),"Ping: %d - Score: %d - Skin: %d - IP: %s", ping, score, skin, ip);
  1570.     SendClientMessage(playerid, COLOR_YELLOW, string);
  1571.     format(string, sizeof(string),"Kills: %d - Deaths: %d", PlayerInfo[playerid][Kills], PlayerInfo[playerid][Deaths]);
  1572.     SendClientMessage(playerid, COLOR_YELLOW, string);
  1573.  
  1574.     if(IsPlayerInAnyVehicle(playerid))
  1575.     {
  1576.         new Float:VHealth, carid = GetPlayerVehicleID(playerid);
  1577.         GetVehicleHealth(carid,VHealth);
  1578.         format(string, sizeof(string),"Vehicle Name: %s | Vehicle ID: %d | Model: %d | Vehicle Health: %d",VehicleNames[GetVehicleModel(carid)-400],carid,GetVehicleModel(carid),floatround(VHealth));
  1579.         SendClientMessage(playerid,COLOR_YELLOW,string);
  1580.     }
  1581.     return 1;
  1582. }
  1583.  
  1584. dcmd_help(playerid, params[])
  1585. {
  1586.     #pragma unused params
  1587.     ShowPlayerDialog(playerid, DIALOG_HELP, DIALOG_STYLE_LIST, "Help Dialog", "{00FF00}Objective\t\n{009262}Capturing Zones\n{0000DA}Bombs\n{EC9D00}Killstreaks\nSubmit Suggestion\nReport Bug", "Get Help", "Cancel");
  1588.     return 1;
  1589. }
  1590.  
  1591. dcmd_carmods(playerid, params[])
  1592. {
  1593.     #pragma unused params
  1594.     if(PlayerInfo[playerid][Admin] >= 9)
  1595.     {
  1596.         ShowPlayerDialog(playerid, DIALOG_MODS, DIALOG_STYLE_LIST, "Vehicle Mods", "{009282}CaptainPrice's Vehicle Mods", "Select", "Cancel");
  1597.     }
  1598.     else return 0;
  1599.     return 1;
  1600. }
  1601.  
  1602. //--------------//
  1603. //VIP  Commands//
  1604. //--------------//
  1605. dcmd_vweaps1(playerid, params[])
  1606. {
  1607.     #pragma unused params
  1608.     if(PlayerInfo[playerid][Rank] >= 1)
  1609.     {
  1610.         GivePlayerWeapon(playerid, 8, 1);
  1611.         GivePlayerWeapon(playerid, 24, 400);
  1612.         GivePlayerWeapon(playerid, 27, 400);
  1613.         GivePlayerWeapon(playerid, 31, 400);
  1614.         GivePlayerWeapon(playerid, 39, 200);
  1615.         GivePlayerWeapon(playerid, 40, 1);
  1616.         SendClientMessage(playerid, COLOR_GREEN, "-| You have recieved VIP weapons package 1! |-");
  1617.     }
  1618.     else SendClientMessage(playerid, COLOR_RED, "ERROR: You must be VIP Rank 1+ to use this command");
  1619.     return 1;
  1620. }
  1621.  
  1622. //Rank 2
  1623. dcmd_vweaps2(playerid, params[])
  1624. {
  1625.     #pragma unused params
  1626.     if(PlayerInfo[playerid][Rank] >= 2)
  1627.     {
  1628.         GivePlayerWeapon(playerid, 5, 1);
  1629.         GivePlayerWeapon(playerid, 24, 600);
  1630.         GivePlayerWeapon(playerid, 26, 600);
  1631.         GivePlayerWeapon(playerid, 32, 600);
  1632.         GivePlayerWeapon(playerid, 31, 600);
  1633.         GivePlayerWeapon(playerid, 18, 600);
  1634.         GivePlayerWeapon(playerid, 43, 600);
  1635.         SendClientMessage(playerid, COLOR_GREEN, "-| You have recieved VIP weapons package 2! |-");
  1636.     }
  1637.     else SendClientMessage(playerid, COLOR_RED, "ERROR: You must be VIP Rank 2+ to use this command");
  1638.     return 1;
  1639. }
  1640.  
  1641. //--------------//
  1642. //Admin Commands//
  1643. //--------------//
  1644.  
  1645. //===============//
  1646. //   Set Level   //
  1647. //===============//
  1648. dcmd_setlevel(playerid, params[])
  1649. {
  1650.     new id;
  1651.     new level;
  1652.     new pName1[MAX_PLAYER_NAME];
  1653.     new pName2[MAX_PLAYER_NAME];
  1654.     new string[150];
  1655.     new tmp [256];
  1656.     new tmp2[256];
  1657.     new Index;
  1658.     tmp  = strtok(params,Index);
  1659.     tmp2 = strtok(params,Index);
  1660.  
  1661.     if(!strlen(params))
  1662.     {
  1663.         SendClientMessage(playerid, COLOR_RED, "Usage: /setlevel (ID) (Level [1-10])");
  1664.         return 0;
  1665.     }
  1666.  
  1667.     if(PlayerInfo[playerid][Admin] >= 9 || IsPlayerAdmin(playerid))
  1668.     {
  1669.         id = strval(tmp);
  1670.         level = strval(tmp2);
  1671.         GetPlayerName(id, pName1, sizeof(pName1));
  1672.         GetPlayerName(playerid, pName2, sizeof(pName2));
  1673.  
  1674.         new year,month,day;
  1675.         new hour,minute,second;
  1676.         getdate(year,month,day);
  1677.         gettime(hour,minute,second);
  1678.  
  1679.         //Errors
  1680.         if(level > 10 || level < 0) return SendClientMessage(playerid, COLOR_RED, "ERROR: Invalid Level");
  1681.         if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player not found");
  1682.         if(IsPlayerNPC(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: You can not use this command on NPCs");
  1683.  
  1684.         //If Successfull
  1685.         PlayerInfo[id][Admin] = level;
  1686.         new INI:File = INI_Open(UserPath(playerid));
  1687.         INI_WriteInt(File,"Admin",level);
  1688.         INI_Close(File);
  1689.         format(string, sizeof(string),"[Date: %d/%d/%d][Time: %d:%d:%d] Admin %s set player %s's admin level to %d\n", year, month, day, hour, minute, second, pName2, pName1, level);
  1690.         SaveIn("Admin",string);
  1691.         format(string, sizeof(string),"2*** Administrator %s(%d) has set %s(%d)'s admin level to %d", pName2, playerid, pName1, id, level);
  1692.         IRC_GroupSay(gGroupID, IRC_CHANNEL, string);
  1693.         format(string, sizeof(string),"-| You have set %s(%d)'s admin level to %d |-", pName1, id, level);
  1694.         SendClientMessage(playerid, COLOR_AQUA, string);
  1695.         format(string, sizeof(string),"-| Adminstrator %s(%d) has set your adminstration level to %d |-", pName2, playerid, level);
  1696.         SendClientMessage(id, COLOR_AQUA, string);
  1697.         SendCommandToAdmins(playerid, "SetLevel");
  1698.     }
  1699.     else SendClientMessage(playerid, COLOR_RED, "ERROR: You need to be level 9 to use this command");
  1700.     return 1;
  1701. }
  1702.  
  1703. dcmd_setop(playerid, params[])
  1704. {
  1705.     new id;
  1706.     new level;
  1707.     new pName1[MAX_PLAYER_NAME];
  1708.     new pName2[MAX_PLAYER_NAME];
  1709.     new string[150];
  1710.     new tmp [256];
  1711.     new tmp2[256];
  1712.     new Index;
  1713.     tmp  = strtok(params,Index);
  1714.     tmp2 = strtok(params,Index);
  1715.  
  1716.     if(!strlen(params))
  1717.     {
  1718.         SendClientMessage(playerid, COLOR_RED, "Usage: /setop (ID) (Level [0-2])");
  1719.         return 0;
  1720.     }
  1721.  
  1722.     if(PlayerInfo[playerid][Admin] >= 9 || IsPlayerAdmin(playerid))
  1723.     {
  1724.         id = strval(tmp);
  1725.         level = strval(tmp2);
  1726.         GetPlayerName(id, pName1, sizeof(pName1));
  1727.         GetPlayerName(playerid, pName2, sizeof(pName2));
  1728.  
  1729.         new year,month,day;
  1730.         new hour,minute,second;
  1731.         getdate(year,month,day);
  1732.         gettime(hour,minute,second);
  1733.  
  1734.         //Errors
  1735.         if(level > 2 || level < 0) return SendClientMessage(playerid, COLOR_RED, "ERROR: Invalid Level");
  1736.         if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player not found");
  1737.         if(IsPlayerNPC(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: You can not use this command on NPCs");
  1738.  
  1739.         //If Successfull
  1740.         PlayerInfo[id][Operator] = level;
  1741.         new INI:File = INI_Open(UserPath(playerid));
  1742.         INI_WriteInt(File,"Operator",level);
  1743.         INI_Close(File);
  1744.         format(string, sizeof(string),"[Date: %d/%d/%d][Time: %d:%d:%d] Admin %s set player %s's operator level to %d\n", year, month, day, hour, minute, second, pName2, pName1, level);
  1745.         SaveIn("Admin",string);
  1746.         format(string, sizeof(string),"2*** Administrator %s(%d) has set %s(%d)'s operator level to %d", pName2, playerid, pName1, id, level);
  1747.         IRC_GroupSay(gGroupID, IRC_CHANNEL, string);
  1748.         format(string, sizeof(string),"-| You have set %s(%d)'s operator level to %d |-", pName1, id, level);
  1749.         SendClientMessage(playerid, COLOR_AQUA, string);
  1750.         format(string, sizeof(string),"-| Adminstrator %s(%d) has set your operator level to %d |-", pName2, playerid, level);
  1751.         SendClientMessage(id, COLOR_AQUA, string);
  1752.         SendCommandToAdmins(playerid, "SetOp");
  1753.     }
  1754.     else SendClientMessage(playerid, COLOR_RED, "ERROR: You need to be level 9 to use this command");
  1755.     return 1;
  1756. }
  1757.  
  1758. //===============//
  1759. //    Set XP     //
  1760. //===============//
  1761. dcmd_setxp(playerid, params[])
  1762. {
  1763.     new Index;
  1764.     new tmp[256];
  1765.     tmp = strtok(params, Index);
  1766.     new tmp2[256];
  1767.     tmp2 = strtok(params, Index);
  1768.     new id;
  1769.     new amount;
  1770.     id = strval(tmp);
  1771.     amount = strval(tmp2);
  1772.  
  1773.     new year,month,day;
  1774.     new hour,minute,second;
  1775.     getdate(year, month, day);
  1776.     gettime(hour,minute,second);
  1777.  
  1778.     new string[100];
  1779.     new name[MAX_PLAYER_NAME];
  1780.     GetPlayerName(playerid, name, sizeof(name));
  1781.     new name2[MAX_PLAYER_NAME];
  1782.     GetPlayerName(id, name2, sizeof(name2));
  1783.  
  1784.     if(PlayerInfo[playerid][Admin] >= 9 || IsPlayerAdmin(playerid))
  1785.     {
  1786.         if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, "ERROR: Invalid Player ID");
  1787.         if(!strlen(params)) return SendClientMessage(playerid, COLOR_RED, "Usage: /setxp (ID) (Amount)");
  1788.         if(PlayerInfo[id][Xp] == amount) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player already has this XP");
  1789.  
  1790.         IncreasePlayerXp(id, amount);
  1791.         GameTextForPlayer(id, "~g~XP INCREASED", 6000, 4);
  1792.         format(string, sizeof(string),"[Date: %d/%d/%d][Time: %d:%d:%d] Admin %s set player %s's XP to %d\n", year, month, day, hour, minute, second, name, name2, amount);
  1793.         SaveIn("Admin",string);
  1794.         format(string, sizeof(string),"-| You have set %s(%d)'s XP to %d |-", name2, id, amount);
  1795.         SendClientMessage(playerid, COLOR_AQUA, string);
  1796.         format(string, sizeof(string),"-| Administrator %s(%d) has set your XP to %d |-", name, playerid, amount);
  1797.         SendClientMessage(id, COLOR_AQUA, string);
  1798.         format(string, sizeof(string),"2*** Administrator %s(%d) has set %s(%d)'s XP to %d", name, playerid, name2, id, amount);
  1799.         IRC_GroupSay(gGroupID, IRC_CHANNEL, string);
  1800.         SendCommandToAdmins(playerid, "SetXp");
  1801.     }
  1802.     else SendClientMessage(playerid, COLOR_RED, "ERROR: You need to be level 9+ to use this command");
  1803.     return 1;
  1804. }
  1805.  
  1806. //=====================//
  1807. //    Goto Player     //
  1808. //===================//
  1809. dcmd_goto(playerid, params[])
  1810. {
  1811.     new Index;
  1812.     new tmp[256];
  1813.     tmp = strtok(params, Index);
  1814.     new id;
  1815.     id = strval(tmp);
  1816.     new name[MAX_PLAYER_NAME];
  1817.     GetPlayerName(playerid, name, sizeof(name));
  1818.     new name2[MAX_PLAYER_NAME];
  1819.     GetPlayerName(id, name2, sizeof(name2));
  1820.     new string[100];
  1821.  
  1822.     if(PlayerInfo[playerid][Admin] < 2) return SendClientMessage(playerid, COLOR_RED, "ERROR: You need to be level 2+ to use this command");
  1823.     if(!strlen(params)) return SendClientMessage(playerid, COLOR_RED, "Usage: /goto (ID)");
  1824.     if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, "ERROR: Invalid player ID");
  1825.     if(id == playerid) return SendClientMessage(playerid, COLOR_RED, "ERROR: You cannot teleport to yourself");
  1826.  
  1827.     new Float:X, Float:Y, Float:Z;
  1828.     GetPlayerPos(id, X, Y, Z);
  1829.     SetPlayerPos(playerid, X, Y, Z);
  1830.     format(string, sizeof(string),"-| You have teleported to %s(%d) |-", name2, id);
  1831.     SendClientMessage(playerid, COLOR_AQUA, string);
  1832.     format(string, sizeof(string),"-| Administrator %s(%d) has teleported to you |-", name, playerid);
  1833.     SendClientMessage(id, COLOR_AQUA, string);
  1834.     SendCommandToAdmins(playerid, "Goto");
  1835.     return 1;
  1836. }
  1837.  
  1838. dcmd_repair(playerid, params[])
  1839. {
  1840.     #pragma unused params
  1841.     new vehicleid = GetPlayerVehicleID(playerid);
  1842.     if(PlayerInfo[playerid][Admin] >= 2)
  1843.     {
  1844.         SendClientMessage(playerid, COLOR_GREEN, "Car Fixed!");
  1845.         RepairVehicle(vehicleid);
  1846.     }
  1847.     else SendClientMessage(playerid, COLOR_RED, "ERROR: You need to be level 2+ to use this command");
  1848.     return 1;
  1849. }
  1850.  
  1851. dcmd_get(playerid, params[])
  1852. {
  1853.     new Index;
  1854.     new tmp[256];
  1855.     tmp = strtok(params, Index);
  1856.     new id;
  1857.     id = strval(tmp);
  1858.     new name[MAX_PLAYER_NAME];
  1859.     GetPlayerName(playerid, name, sizeof(name));
  1860.     new name2[MAX_PLAYER_NAME];
  1861.     GetPlayerName(id, name2, sizeof(name2));
  1862.     new string[100];
  1863.  
  1864.     if(PlayerInfo[playerid][Admin] < 2) return SendClientMessage(playerid, COLOR_RED, "ERROR: You need to be level 2+ to use this command");
  1865.     if(!strlen(params)) return SendClientMessage(playerid, COLOR_RED, "Usage: /get (ID)");
  1866.     if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, "ERROR: Invalid player ID");
  1867.     if(id == playerid) return SendClientMessage(playerid, COLOR_RED, "ERROR: You cannot teleport to yourself");
  1868.  
  1869.     new Float:X, Float:Y, Float:Z;
  1870.     GetPlayerPos(id, X, Y, Z);
  1871.     SetPlayerPos(playerid, X, Y, Z);
  1872.     format(string, sizeof(string),"-| You have teleported %s(%d) to your position |-", name2, id);
  1873.     SendClientMessage(playerid, COLOR_AQUA, string);
  1874.     format(string, sizeof(string),"-| Administrator %s(%d) has teleported you to them |-", name, playerid);
  1875.     SendClientMessage(id, COLOR_AQUA, string);
  1876.     SendCommandToAdmins(playerid, "Goto");
  1877.     return 1;
  1878. }
  1879.  
  1880. dcmd_car(playerid,params[])
  1881. {
  1882.     if(PlayerInfo[playerid][Admin] >= 3 || IsPlayerAdmin(playerid))
  1883.     {
  1884.         new Index;
  1885.         new tmp[256];  tmp  = strtok(params,Index);
  1886.         new tmp2[256]; tmp2 = strtok(params,Index);
  1887.         new tmp3[256]; tmp3 = strtok(params,Index);
  1888.         if(!strlen(tmp))
  1889.         {
  1890.             SendClientMessage(playerid, COLOR_RED, "Usage: /car (Model ID/Name) (Colour1) (Colour2)");
  1891.             return 0;
  1892.         }
  1893.  
  1894.         new car;
  1895.         new string[128];
  1896.         new colour1, colour2;
  1897.         if(!IsNumeric(tmp))
  1898.         car = GetVehicleModelIDFromName(tmp);
  1899.         else car = strval(tmp);
  1900.         if(car < 400 || car > 611) return  SendClientMessage(playerid, COLOR_RED, "ERROR: Invalid Vehicle ID!");
  1901.         if(!strlen(tmp2)) colour1 = random(126); else colour1 = strval(tmp2);
  1902.         if(!strlen(tmp3)) colour2 = random(126); else colour2 = strval(tmp3);
  1903.  
  1904.         new Veh;
  1905.         new Float:X,Float:Y,Float:Z;
  1906.         new Float:Angle,int1;
  1907.         GetPlayerPos(playerid, X,Y,Z);
  1908.         GetPlayerFacingAngle(playerid,Angle);
  1909.         int1 = GetPlayerInterior(playerid);
  1910.         Veh = CreateVehicle(car, X+3,Y,Z, Angle, colour1, colour2, -1);
  1911.         LinkVehicleToInterior(Veh,int1);
  1912.         SendCommandToAdmins(playerid, "Car");
  1913.         format(string, sizeof(string), "-| You have spawned a %s (ID: %d) | Colours: %d,%d |-", VehicleNames[car-400], car, colour1, colour2);
  1914.         return SendClientMessage(playerid,COLOR_AQUA, string);
  1915.     }
  1916.     else return SendClientMessage(playerid, COLOR_RED, "ERROR: You need to be level 3 to use this command");
  1917. }
  1918.  
  1919. dcmd_ban(playerid, params[])
  1920. {
  1921.     new Index;
  1922.     new tmp[256];
  1923.     tmp = strtok(params, Index);
  1924.     new id;
  1925.     id = strval(tmp);
  1926.     new name[MAX_PLAYER_NAME];
  1927.     GetPlayerName(playerid, name, sizeof(name));
  1928.     new name2[MAX_PLAYER_NAME];
  1929.     GetPlayerName(id, name2, sizeof(name2));
  1930.     new string[100];
  1931.  
  1932.     if(PlayerInfo[playerid][Admin] < 5) return SendClientMessage(playerid, COLOR_RED, "ERROR: You need to be level 5+ to use this command");
  1933.     if(!strlen(params)) return SendClientMessage(playerid, COLOR_RED, "Usage: /ban (ID) (Reason)");
  1934.     if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, "ERROR: Invalid player ID");
  1935.     if(id == playerid) return SendClientMessage(playerid, COLOR_RED, "ERROR: You cannot ban yourself");
  1936.     if(PlayerInfo[id][Admin] == 10) return SendClientMessage(playerid, COLOR_RED, "ERROR: You cannot ban an owner");
  1937.  
  1938.     format(string, sizeof(string),"-| %s(%d) has been banned by administrator %s(%d) |-", name2, id, name, playerid);
  1939.     SendClientMessageToAll(COLOR_RED, string);
  1940.     format(string, sizeof(string),"[Reason: %s]", params[strlen(tmp)+1]);
  1941.     SendClientMessageToAll(COLOR_RED, string);
  1942.     format(string, sizeof(string),"-| You have successfully banned %s |-", name2);
  1943.     SendClientMessage(playerid, COLOR_YELLOW, string);
  1944.     format(string, sizeof(string),"-| You have been banned by Administrator %s(%d) | Reason: %s", name, playerid, params[strlen(tmp)+1]);
  1945.     SendClientMessage(id, COLOR_RED, string);
  1946.     BanEx(playerid, params[strlen(tmp)+1]);
  1947.     return 1;
  1948. }
  1949.  
  1950. dcmd_kick(playerid, params[])
  1951. {
  1952.     new Index;
  1953.     new tmp[256];
  1954.     tmp = strtok(params, Index);
  1955.     new id;
  1956.     id = strval(tmp);
  1957.     new name[MAX_PLAYER_NAME];
  1958.     GetPlayerName(playerid, name, sizeof(name));
  1959.     new name2[MAX_PLAYER_NAME];
  1960.     GetPlayerName(id, name2, sizeof(name2));
  1961.     new string[100];
  1962.  
  1963.     if(PlayerInfo[playerid][Admin] < 3) return SendClientMessage(playerid, COLOR_RED, "ERROR: You need to be level 3+ to use this command");
  1964.     if(!strlen(params)) return SendClientMessage(playerid, COLOR_RED, "Usage: /kick (ID) (Reason)");
  1965.     if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, "ERROR: Invalid player ID");
  1966.     if(id == playerid) return SendClientMessage(playerid, COLOR_RED, "ERROR: You cannot kick yourself");
  1967.     if(PlayerInfo[id][Admin] == 10) return SendClientMessage(playerid, COLOR_RED, "ERROR: You cannot kick an owner");
  1968.  
  1969.     format(string, sizeof(string),"-| %s(%d) has been kicked by administrator %s(%d) |-", name2, id, name, playerid);
  1970.     SendClientMessageToAll(COLOR_RED, string);
  1971.     format(string, sizeof(string),"[Reason: %s]", params[strlen(tmp)+1]);
  1972.     SendClientMessageToAll(COLOR_RED, string);
  1973.     format(string, sizeof(string),"-| You have successfully kicked %s |-", name2);
  1974.     SendClientMessage(playerid, COLOR_YELLOW, string);
  1975.     format(string, sizeof(string),"-| You have been kicked by Administrator %s(%d) | Reason: %s", name, playerid, params[strlen(tmp)+1]);
  1976.     SendClientMessage(id, COLOR_RED, string);
  1977.     Kick(playerid);
  1978.     return 1;
  1979. }
  1980.  
  1981. dcmd_giveallxp(playerid, params[])
  1982. {
  1983.     new Index;
  1984.     new tmp[256];
  1985.     tmp = strtok(params, Index);
  1986.     new amount;
  1987.     amount = strval(tmp);
  1988.     new name[MAX_PLAYER_NAME];
  1989.     GetPlayerName(playerid, name, sizeof(name));
  1990.     new string[100];
  1991.  
  1992.     if(PlayerInfo[playerid][Admin] >= 3)
  1993.     {
  1994.         for(new i = 0; i < MAX_PLAYERS; i++)
  1995.         {
  1996.             PlayerInfo[i][Xp] += amount;
  1997.             format(string, sizeof(string),"-| Administrator %s(%d) has given all players %d XP |-", name, playerid, amount);
  1998.             SendClientMessageToAll(COLOR_AQUA, string);
  1999.         }
  2000.     }
  2001.     else SendClientMessage(playerid, COLOR_RED, "ERROR: You must be level 3+ to use this command");
  2002.     return 1;
  2003. }
  2004.  
  2005.  
  2006. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  2007. {
  2008.     return 1;
  2009. }
  2010.  
  2011. public OnPlayerExitVehicle(playerid, vehicleid)
  2012. {
  2013.     return 1;
  2014. }
  2015.  
  2016. public OnPlayerStateChange(playerid, newstate, oldstate)
  2017. {
  2018.     if(newstate == PLAYER_STATE_DRIVER)
  2019.     {
  2020.         new vehicleid = GetPlayerVehicleID(playerid);
  2021.         if(GetVehicleModel(vehicleid) == 432 && IsEngineer[playerid] != 1 && IsVIP[playerid] != 1 && IsOwner[playerid] != 1 && IsGeneral[playerid] != 1)
  2022.         {
  2023.             SendClientMessage(playerid, COLOR_RED_2, "ERROR: You must be an engineer, owner, or general to drive this.");
  2024.             RemovePlayerFromVehicle(playerid);
  2025.         }
  2026.  
  2027.         if(GetVehicleModel(vehicleid) == 425 && IsPilot[playerid] != 1 && IsVIP[playerid] != 1 && IsOwner[playerid] != 1 && IsGeneral[playerid] != 1)
  2028.         {
  2029.             SendClientMessage(playerid, COLOR_RED_2, "ERROR: You must be a pilot, owner, or general to pilot this.");
  2030.             RemovePlayerFromVehicle(playerid);
  2031.         }
  2032.  
  2033.         if(GetVehicleModel(vehicleid) == 447 && IsPilot[playerid] != 1 && IsOwner[playerid] != 1 && IsGeneral[playerid] != 1)
  2034.         {
  2035.             SendClientMessage(playerid, COLOR_RED_2, "ERROR: You must be a pilot, owner, or general to pilot this.");
  2036.             RemovePlayerFromVehicle(playerid);
  2037.         }
  2038.  
  2039.         if(GetVehicleModel(vehicleid) == 520 && IsPilot[playerid] != 1 && IsOwner[playerid] != 1 && IsGeneral[playerid] != 1)
  2040.         {
  2041.             SendClientMessage(playerid, COLOR_RED_2, "ERROR: You must be a pilot, owner, or general to pilot this.");
  2042.             RemovePlayerFromVehicle(playerid);
  2043.         }
  2044.     }
  2045.     return 1;
  2046. }
  2047.  
  2048. public OnPlayerEnterDynamicCP(playerid, checkpointid)
  2049. {
  2050.     new gTeam;
  2051.     gTeam = GetPlayerTeam(playerid);
  2052.     if(checkpointid == CP_KACC)
  2053.     {
  2054.         if(UnderAttack[Z_KACC] == 1) return SendClientMessage(playerid, COLOR_RED, "ERROR: This zone is already under attack.");
  2055.         if(gTeam == TEAM_DELTA && CapturedBy[Z_KACC] == 1 || gTeam == TEAM_SPETSNAZ && CapturedBy[Z_KACC] == 2 || gTeam == TEAM_GIGN && CapturedBy[Z_KACC] == 3 || gTeam == TEAM_IA && CapturedBy[Z_KACC] == 4 || gTeam == TEAM_JSDF && CapturedBy[Z_KACC] == 5)
  2056.         {
  2057.             SendClientMessage(playerid, COLOR_RED, "This area has already been captured by your team!");
  2058.             return 0;
  2059.         }
  2060.         else
  2061.         {
  2062.             SendClientMessage(playerid, COLOR_GREEN, "Stay in the checkpoint for 20 seconds to capture it.");
  2063.             GangZoneFlashForAll(Zone[Z_KACC], TeamColor(playerid));
  2064.             SendClientMessageToAll(COLOR_RED_2, "KACC Military fuels is being taken over!");
  2065.             TT[playerid] = SetTimerEx("TakeOver", 20000, 0, "i", playerid);
  2066.             UnderAttack[Z_KACC] = 1;
  2067.             return 0;
  2068.         }
  2069.     }
  2070.  
  2071.     if(checkpointid == CP_AT)
  2072.     {
  2073.         if(UnderAttack[Z_AT] == 1) return SendClientMessage(playerid, COLOR_RED, "ERROR: This zone is already under attack.");
  2074.         if(gTeam == TEAM_DELTA && CapturedBy[Z_AT] == 1 || gTeam == TEAM_SPETSNAZ && CapturedBy[Z_AT] == 2 || gTeam == TEAM_GIGN && CapturedBy[Z_AT] == 3 || gTeam == TEAM_IA && CapturedBy[Z_AT] == 4 || gTeam == TEAM_JSDF && CapturedBy[Z_AT] == 5)
  2075.         {
  2076.             SendClientMessage(playerid, COLOR_RED, "This area has already been captured by your team!");
  2077.             return 0;
  2078.         }
  2079.         else
  2080.         {
  2081.             SendClientMessage(playerid, COLOR_GREEN, "Stay in the checkpoint for 20 seconds to capture it.");
  2082.             GangZoneFlashForAll(Zone[Z_AT], TeamColor(playerid));
  2083.             SendClientMessageToAll(COLOR_RED_2, "The Abandoned Town is being taken over!");
  2084.             T2[playerid] = SetTimerEx("TakeOver", 20000, 0, "i", playerid);
  2085.             UnderAttack[Z_AT] = 1;
  2086.             return 0;
  2087.         }
  2088.     }
  2089.  
  2090.     if(checkpointid == CP_EAR)
  2091.     {
  2092.         if(UnderAttack[Z_EAR] == 1) return SendClientMessage(playerid, COLOR_RED, "ERROR: This zone is already under attack.");
  2093.         if(gTeam == TEAM_DELTA && CapturedBy[Z_EAR] == 1 || gTeam == TEAM_SPETSNAZ && CapturedBy[Z_EAR] == 2 || gTeam == TEAM_GIGN && CapturedBy[Z_EAR] == 3 || gTeam == TEAM_IA && CapturedBy[Z_EAR] == 4 || gTeam == TEAM_JSDF && CapturedBy[Z_EAR] == 5)
  2094.         {
  2095.             SendClientMessage(playerid, COLOR_RED, "This area has already been captured by your team!");
  2096.             return 0;
  2097.         }
  2098.         else
  2099.         {
  2100.             SendClientMessage(playerid, COLOR_GREEN, "Stay in the checkpoint for 20 seconds to capture it.");
  2101.             GangZoneFlashForAll(Zone[Z_EAR], TeamColor(playerid));
  2102.             SendClientMessageToAll(COLOR_RED_2, "The Big Ear is being taken over!");
  2103.             T3[playerid] = SetTimerEx("TakeOver", 20000, 0, "i", playerid);
  2104.             UnderAttack[Z_EAR] = 1;
  2105.             return 0;
  2106.         }
  2107.     }
  2108.  
  2109.     if(checkpointid == CP_FTW)
  2110.     {
  2111.         if(UnderAttack[Z_FTW] == 1) return SendClientMessage(playerid, COLOR_RED, "ERROR: This zone is already under attack.");
  2112.         if(gTeam == TEAM_DELTA && CapturedBy[Z_FTW] == 1 || gTeam == TEAM_SPETSNAZ && CapturedBy[Z_FTW] == 2 || gTeam == TEAM_GIGN && CapturedBy[Z_FTW] == 3 || gTeam == TEAM_IA && CapturedBy[Z_FTW] == 4 || gTeam == TEAM_JSDF && CapturedBy[Z_FTW] == 5)
  2113.         {
  2114.             SendClientMessage(playerid, COLOR_RED, "This area has already been captured by your team!");
  2115.             return 0;
  2116.         }
  2117.         else
  2118.         {
  2119.             SendClientMessage(playerid, COLOR_GREEN, "Stay in the checkpoint for 20 seconds to capture it.");
  2120.             GangZoneFlashForAll(Zone[Z_FTW], TeamColor(playerid));
  2121.             SendClientMessageToAll(COLOR_RED_2, "Fallen tree warehouse is being taken over!");
  2122.             T4[playerid] = SetTimerEx("TakeOver", 20000, 0, "i", playerid);
  2123.             UnderAttack[Z_FTW] = 1;
  2124.             return 0;
  2125.         }
  2126.     }
  2127.  
  2128.     if(checkpointid == CP_SFARM)
  2129.     {
  2130.         if(UnderAttack[Z_SFARM] == 1) return SendClientMessage(playerid, COLOR_RED, "ERROR: This zone is already under attack.");
  2131.         if(gTeam == TEAM_DELTA && CapturedBy[Z_SFARM] == 1 || gTeam == TEAM_SPETSNAZ && CapturedBy[Z_SFARM] == 2 || gTeam == TEAM_GIGN && CapturedBy[Z_SFARM] == 3 || gTeam == TEAM_IA && CapturedBy[Z_SFARM] == 4 || gTeam == TEAM_JSDF && CapturedBy[Z_SFARM] == 5)
  2132.         {
  2133.             SendClientMessage(playerid, COLOR_RED, "This area has already been captured by your team!");
  2134.             return 0;
  2135.         }
  2136.         else
  2137.         {
  2138.             SendClientMessage(playerid, COLOR_GREEN, "Stay in the checkpoint for 20 seconds to capture it.");
  2139.             GangZoneFlashForAll(Zone[Z_SFARM], TeamColor(playerid));
  2140.             SendClientMessageToAll(COLOR_RED_2, "The Snake Farm is being taken over!");
  2141.             T4[playerid] = SetTimerEx("TakeOver", 20000, 0, "i", playerid);
  2142.             UnderAttack[Z_SFARM] = 1;
  2143.             return 0;
  2144.         }
  2145.     }
  2146.     return 1;
  2147. }
  2148.  
  2149. public OnPlayerLeaveDynamicCP(playerid, checkpointid)
  2150. {
  2151.     if(checkpointid == CP_KACC)
  2152.     {
  2153.         GameTextForPlayer(playerid, "Left CP", 5000, 6);
  2154.         GangZoneStopFlashForAll(Zone[Z_KACC]);
  2155.         UnderAttack[Z_KACC] = 0;
  2156.         KillTimer(TT[playerid]);
  2157.     }
  2158.  
  2159.     if(checkpointid == CP_AT)
  2160.     {
  2161.         GameTextForPlayer(playerid, "Left CP", 5000, 6);
  2162.         GangZoneStopFlashForAll(Zone[Z_AT]);
  2163.         UnderAttack[Z_AT] = 0;
  2164.         KillTimer(T2[playerid]);
  2165.     }
  2166.  
  2167.     if(checkpointid == CP_EAR)
  2168.     {
  2169.         GameTextForPlayer(playerid, "Left CP", 5000, 6);
  2170.         GangZoneStopFlashForAll(Zone[Z_EAR]);
  2171.         UnderAttack[Z_EAR] = 0;
  2172.         KillTimer(T3[playerid]);
  2173.     }
  2174.  
  2175.     if(checkpointid == CP_FTW)
  2176.     {
  2177.         GameTextForPlayer(playerid, "Left CP", 5000, 6);
  2178.         GangZoneStopFlashForAll(Zone[Z_FTW]);
  2179.         UnderAttack[Z_FTW] = 0;
  2180.         KillTimer(T4[playerid]);
  2181.     }
  2182.  
  2183.     if(checkpointid == CP_SFARM)
  2184.     {
  2185.         GameTextForPlayer(playerid, "Left CP", 5000, 6);
  2186.         GangZoneStopFlashForAll(Zone[Z_SFARM]);
  2187.         UnderAttack[Z_SFARM] = 0;
  2188.         KillTimer(T5[playerid]);
  2189.     }
  2190.     return 1;
  2191. }
  2192.  
  2193. public OnPlayerEnterRaceCheckpoint(playerid)
  2194. {
  2195.     return 1;
  2196. }
  2197.  
  2198. public OnPlayerLeaveRaceCheckpoint(playerid)
  2199. {
  2200.     return 1;
  2201. }
  2202.  
  2203. public OnRconCommand(cmd[])
  2204. {
  2205.     return 1;
  2206. }
  2207.  
  2208. public OnPlayerRequestSpawn(playerid)
  2209. {
  2210.     return 1;
  2211. }
  2212.  
  2213. public OnObjectMoved(objectid)
  2214. {
  2215.     return 1;
  2216. }
  2217.  
  2218. public OnPlayerObjectMoved(playerid, objectid)
  2219. {
  2220.     return 1;
  2221. }
  2222.  
  2223. public OnPlayerPickUpPickup(playerid, pickupid)
  2224. {
  2225.     return 1;
  2226. }
  2227.  
  2228. public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid)
  2229. {
  2230.     return 1;
  2231. }
  2232.  
  2233. public OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid)
  2234. {
  2235.     new Float:health;
  2236.     GetPlayerHealth(playerid, health);
  2237.     if(PlayerInfo[damagedid][Protected] == 1)
  2238.     {
  2239.         GameTextForPlayer(playerid, "~r~This person is Anti-Spawn kill protected", 5000, 6);
  2240.         SetPlayerHealth(damagedid, 100);
  2241.         SetPlayerArmour(damagedid, 100.0);
  2242.     }
  2243.  
  2244.     if(GetPlayerTeam(damagedid) == GetPlayerTeam(playerid) && GetPlayerWeapon(playerid) != 46)
  2245.     {
  2246.         GameTextForPlayer(playerid, "~r~TEAM SHOOT | -5 HEALTH", 5000, 4);
  2247.         SetPlayerHealth(playerid, health - 5);
  2248.     }
  2249.  
  2250.     if(IsMedic[playerid] == 1 && GetPlayerWeapon(playerid) == 41 && GetPlayerTeam(playerid) == GetPlayerTeam(damagedid))
  2251.     {
  2252.         GameTextForPlayer(damagedid, "~g~+5 Health", 4000, 4);
  2253.         SetPlayerHealth(damagedid, health += 5);
  2254.         GameTextForPlayer(playerid, "~g~HEALING PLAYER...", 5000, 4);
  2255.     }
  2256.     return 1;
  2257. }
  2258.  
  2259. public OnVehicleMod(playerid, vehicleid, componentid)
  2260. {
  2261.     return 1;
  2262. }
  2263.  
  2264. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  2265. {
  2266.     return 1;
  2267. }
  2268.  
  2269. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  2270. {
  2271.     return 1;
  2272. }
  2273.  
  2274. public OnPlayerSelectedMenuRow(playerid, row)
  2275. {
  2276.     return 1;
  2277. }
  2278.  
  2279. public OnPlayerExitedMenu(playerid)
  2280. {
  2281.     return 1;
  2282. }
  2283.  
  2284. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  2285. {
  2286.     return 1;
  2287. }
  2288.  
  2289. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  2290. {
  2291.     return 1;
  2292. }
  2293.  
  2294. public OnRconLoginAttempt(ip[], password[], success)
  2295. {
  2296.     if(success)
  2297.     {
  2298.         printf("RCON login success by IP %s using password %s", ip, password);
  2299.     }
  2300.     else
  2301.     {
  2302.         printf("Failed RCON login by IP %s using password %s", ip, password);
  2303.     }
  2304.     return 1;
  2305. }
  2306.  
  2307. public OnPlayerUpdate(playerid)
  2308. {
  2309.     new name[MAX_PLAYER_NAME];
  2310.     GetPlayerName(playerid, name, sizeof(name));
  2311.  
  2312.     if(GetPlayerPing(playerid) >= 1000)
  2313.     {
  2314.         new string[100];
  2315.         format(string, sizeof(string),"-| %s(%d) has been kicked for having %d ping |-", name, playerid, GetPlayerPing(playerid));
  2316.         SendClientMessageToAll(COLOR_YELLOW, string);
  2317.         SendClientMessageToAll(COLOR_YELLOW, "[Max Ping: 1000]");
  2318.         Kick(playerid);
  2319.     }
  2320.     return 1;
  2321. }
  2322.  
  2323. public OnPlayerStreamIn(playerid, forplayerid)
  2324. {
  2325.     return 1;
  2326. }
  2327.  
  2328. public OnPlayerStreamOut(playerid, forplayerid)
  2329. {
  2330.     return 1;
  2331. }
  2332.  
  2333. public OnVehicleStreamIn(vehicleid, forplayerid)
  2334. {
  2335.     return 1;
  2336. }
  2337.  
  2338. public OnVehicleStreamOut(vehicleid, forplayerid)
  2339. {
  2340.     return 1;
  2341. }
  2342.  
  2343. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  2344. {
  2345.     if(dialogid == DIALOG_CTEAM)
  2346.     {
  2347.         ShowPlayerDialog(playerid, DIALOG_SCLASS, DIALOG_STYLE_LIST, "Select Class", "Soldier (0 XP)\nSniper (0 XP)\nMedic (30 XP)\nEngineer (75 XP)\nPilot (120 XP)\nFlamethrower (200 XP)\nSpy (310 XP)\nScout (350 XP)\nCargo plane Driver (500 XP)\nSupply Helicopter Driver (630 XP)\nGeneral (800 XP)\nVIP\nAdmin (Admin level 1+)\nOwner (Level 10)", "Go!", "");
  2348.         switch(listitem)
  2349.         {
  2350.             case 0:
  2351.             {
  2352.                 SetPlayerTeam(playerid, TEAM_DELTA);
  2353.                 SetPlayerColor(playerid, COLOR_BLUE);
  2354.                 GameTextForPlayer(playerid, "~b~DELTA FORCE", 7500, 6);
  2355.                 SetPlayerSkin(playerid, SKIN_USA);
  2356.             }
  2357.             case 1:
  2358.             {
  2359.                 SetPlayerTeam(playerid, TEAM_SPETSNAZ);
  2360.                 SetPlayerColor(playerid, COLOR_RED);
  2361.                 GameTextForPlayer(playerid, "~r~SPETSNAZ", 7500, 6);
  2362.                 SetPlayerSkin(playerid, SKIN_RUSSIA);
  2363.             }
  2364.             case 2:
  2365.             {
  2366.                 SetPlayerTeam(playerid, TEAM_GIGN);
  2367.                 SetPlayerColor(playerid, COLOR_GREEN);
  2368.                 GameTextForPlayer(playerid, "~g~GIGN", 7500, 6);
  2369.                 SetPlayerSkin(playerid, SKIN_GIGN);
  2370.             }
  2371.             case 3:
  2372.             {
  2373.                 SetPlayerTeam(playerid, TEAM_IA);
  2374.                 SetPlayerColor(playerid, COLOR_AQUA);
  2375.                 GameTextForPlayer(playerid, "ITALIAN ARMY", 7500, 6);
  2376.                 SetPlayerSkin(playerid, SKIN_IA);
  2377.             }
  2378.             case 4:
  2379.             {
  2380.                 SetPlayerTeam(playerid, TEAM_JSDF);
  2381.                 SetPlayerColor(playerid, 0xFF800096);
  2382.                 GameTextForPlayer(playerid, "Japan Self Defense Forces", 7500, 6);
  2383.                 SetPlayerSkin(playerid, SKIN_JSDF);
  2384.             }
  2385.         }
  2386.     }
  2387.  
  2388.     if(dialogid == DIALOG_SCLASS)
  2389.     {
  2390.         switch(listitem)
  2391.         {
  2392.             case 0:
  2393.             {
  2394.                 IsSoldier[playerid] = 1;
  2395.                 GameTextForPlayer(playerid, "Soldier", 5000, 6);
  2396.                 GivePlayerWeapon(playerid, 4, 1);
  2397.                 GivePlayerWeapon(playerid, 24, 30);
  2398.                 GivePlayerWeapon(playerid, 31, 200);
  2399.                 SpawnPlayer(playerid);
  2400.             }
  2401.             case 1:
  2402.             {
  2403.                 IsSniper[playerid] = 1;
  2404.                 GameTextForPlayer(playerid, "Sniper", 5000, 6);
  2405.                 GivePlayerWeapon(playerid, 3, 1);
  2406.                 GivePlayerWeapon(playerid, 23, 40);
  2407.                 GivePlayerWeapon(playerid, 34, 250);
  2408.                 GivePlayerWeapon(playerid, 17, 20);
  2409.                 SpawnPlayer(playerid);
  2410.             }
  2411.             case 2:
  2412.             {
  2413.                 if(PlayerInfo[playerid][Xp] >= 30)
  2414.                 {
  2415.                     IsMedic[playerid] = 1;
  2416.                     GameTextForPlayer(playerid, "Medic", 5000, 6);
  2417.                     GivePlayerWeapon(playerid, 15, 1);
  2418.                     GivePlayerWeapon(playerid, 22, 75);
  2419.                     GivePlayerWeapon(playerid, 30, 200);
  2420.                     SpawnPlayer(playerid);
  2421.                 }
  2422.                 else
  2423.                 {
  2424.                     SendClientMessage(playerid, COLOR_RED, "ERROR: You must have 30+ XP to use this class.");
  2425.                     ShowPlayerDialog(playerid, DIALOG_SCLASS, DIALOG_STYLE_LIST, "Select Class", "Soldier (0 XP)\nSniper (0 XP)\nMedic (30 XP)\nEngineer (75 XP)\nPilot (120 XP)\nFlamethrower (200 XP)\nSpy (310 XP)\nScout (350 XP)\nCargo plane Driver (500 XP)\nSupply Helicopter Driver (630 XP)\nGeneral (800 XP)\nVIP (1+ VIP Points)\nAdmin (Admin level 1+)\nOwner (Level 10)", "Go!", "");
  2426.                 }
  2427.             }
  2428.             case 3:
  2429.             {
  2430.                 if(PlayerInfo[playerid][Xp] >= 145)
  2431.                 {
  2432.                     IsEngineer[playerid] = 1;
  2433.                     GameTextForPlayer(playerid, "Engineer", 5000, 6);
  2434.                     GivePlayerWeapon(playerid, 5, 1);
  2435.                     GivePlayerWeapon(playerid, 27, 50);
  2436.                     GivePlayerWeapon(playerid, 31, 200);
  2437.                     GivePlayerWeapon(playerid, 43, 40);
  2438.                     SpawnPlayer(playerid);
  2439.                 }
  2440.                 else
  2441.                 {
  2442.                     SendClientMessage(playerid, COLOR_RED, "ERROR: You must have 75+ XP to use this class.");
  2443.                     ShowPlayerDialog(playerid, DIALOG_SCLASS, DIALOG_STYLE_LIST, "Select Class", "Soldier (0 XP)\nSniper (0 XP)\nMedic (30 XP)\nEngineer (75 XP)\nPilot (120 XP)\nFlamethrower (200 XP)\nSpy (310 XP)\nScout (350 XP)\nCargo plane Driver (500 XP)\nSupply Helicopter Driver (630 XP)\nGeneral (800 XP)\nVIP (1+ VIP Points)\nAdmin (Admin level 1+)\nOwner (Level 10)", "Go!", "");
  2444.                 }
  2445.             }
  2446.             case 4:
  2447.             {
  2448.                 if(PlayerInfo[playerid][Xp] >= 170)
  2449.                 {
  2450.                     IsPilot[playerid] = 1;
  2451.                     GameTextForPlayer(playerid, "Pilot", 5000, 6);
  2452.                     GivePlayerWeapon(playerid, 22, 60);
  2453.                     GivePlayerWeapon(playerid, 30, 200);
  2454.                     GivePlayerWeapon(playerid, 46, 1);
  2455.                     SpawnPlayer(playerid);
  2456.                 }
  2457.                 else
  2458.                 {
  2459.                     SendClientMessage(playerid, COLOR_RED, "ERROR: You must have 170+ XP to use this class.");
  2460.                     ShowPlayerDialog(playerid, DIALOG_SCLASS, DIALOG_STYLE_LIST, "Select Class", "Soldier (0 XP)\nSniper (0 XP)\nMedic (30 XP)\nEngineer (75 XP)\nPilot (120 XP)\nFlamethrower (200 XP)\nSpy (310 XP)\nScout (350 XP)\nCargo plane Driver (500 XP)\nSupply Helicopter Driver (630 XP)\nGeneral (800 XP)\nVIP (1+ VIP Points)\nAdmin (Admin level 1+)\nOwner (Level 10)", "Go!", "");
  2461.                 }
  2462.             }
  2463.             case 5:
  2464.             {
  2465.                 if(PlayerInfo[playerid][Xp] >= 200)
  2466.                 {
  2467.                     IsFlamethrower[playerid] = 1;
  2468.                     GameTextForPlayer(playerid, "Flamethrower", 5000, 6);
  2469.                     GivePlayerWeapon(playerid, 18, 20);
  2470.                     GivePlayerWeapon(playerid, 24, 75);
  2471.                     GivePlayerWeapon(playerid, 31, 200);
  2472.                     GivePlayerWeapon(playerid, 37, 350);
  2473.                     SpawnPlayer(playerid);
  2474.                 }
  2475.                 else
  2476.                 {
  2477.                     SendClientMessage(playerid, COLOR_RED, "ERROR: You must have 200+ XP to use this class.");
  2478.                     ShowPlayerDialog(playerid, DIALOG_SCLASS, DIALOG_STYLE_LIST, "Select Class", "Soldier (0 XP)\nSniper (0 XP)\nMedic (30 XP)\nEngineer (75 XP)\nPilot (120 XP)\nFlamethrower (200 XP)\nSpy (310 XP)\nScout (350 XP)\nCargo plane Driver (500 XP)\nSupply Helicopter Driver (630 XP)\nGeneral (800 XP)\nVIP (1+ VIP Points)\nAdmin (Admin level 1+)\nOwner (Level 10)", "Go!", "");
  2479.                 }
  2480.             }
  2481.             case 6:
  2482.             {
  2483.                 if(PlayerInfo[playerid][Xp] >= 310)
  2484.                 {
  2485.                     IsSpy[playerid] = 1;
  2486.                     GameTextForPlayer(playerid, "Spy", 5000, 6);
  2487.                     GivePlayerWeapon(playerid, 15, 1);
  2488.                     GivePlayerWeapon(playerid, 23, 50);
  2489.                     GivePlayerWeapon(playerid, 31, 200);
  2490.                     ShowPlayerDialog(playerid, DIALOG_SSTEAM, DIALOG_STYLE_LIST, "Select Disguise Team", "Delta Force (USA)\nSpetsnaz (Russia)\nGIGN (France)\nItalian Army (Italy)\nJapan Self Defense Forces (Japan)", "Select", "Back");
  2491.                 }
  2492.                 else
  2493.                 {
  2494.                     SendClientMessage(playerid, COLOR_RED, "ERROR: You must have 310+ XP to use this class.");
  2495.                     ShowPlayerDialog(playerid, DIALOG_SCLASS, DIALOG_STYLE_LIST, "Select Class", "Soldier (0 XP)\nSniper (0 XP)\nMedic (30 XP)\nEngineer (75 XP)\nPilot (120 XP)\nFlamethrower (200 XP)\nSpy (310 XP)\nScout (350 XP)\nCargo plane Driver (500 XP)\nSupply Helicopter Driver (630 XP)\nGeneral (800 XP)\nVIP (1+ VIP Points)\nAdmin (Admin level 1+)\nOwner (Level 10)", "Go!", "");
  2496.                 }
  2497.             }
  2498.             case 7:
  2499.             {
  2500.                 if(PlayerInfo[playerid][Xp] >= 350)
  2501.                 {
  2502.                     IsScout[playerid] = 1;
  2503.                     GameTextForPlayer(playerid, "Scout", 5000, 6);
  2504.                     GivePlayerWeapon(playerid, 4, 1);
  2505.                     GivePlayerWeapon(playerid, 23, 75);
  2506.                     GivePlayerWeapon(playerid, 29, 130);
  2507.                     GivePlayerWeapon(playerid, 31, 200);
  2508.                     SpawnPlayer(playerid);
  2509.                 }
  2510.                 else
  2511.                 {
  2512.                     SendClientMessage(playerid, COLOR_RED, "ERROR: You must have 350+ XP to use this class.");
  2513.                     ShowPlayerDialog(playerid, DIALOG_SCLASS, DIALOG_STYLE_LIST, "Select Class", "Soldier (0 XP)\nSniper (0 XP)\nMedic (30 XP)\nEngineer (75 XP)\nPilot (120 XP)\nFlamethrower (200 XP)\nSpy (310 XP)\nScout (350 XP)\nCargo plane Driver (500 XP)\nSupply Helicopter Driver (630 XP)\nGeneral (800 XP)\nVIP (1+ VIP Points)\nAdmin (Admin level 1+)\nOwner (Level 10)", "Go!", "");
  2514.                 }
  2515.             }
  2516.             case 8:
  2517.             {
  2518.                 if(PlayerInfo[playerid][Xp] >= 500)
  2519.                 {
  2520.                     IsPlaneDriver[playerid] = 1;
  2521.                     GameTextForPlayer(playerid, "Cargo Plane Driver", 5000, 6);
  2522.                     GivePlayerWeapon(playerid, 26, 80);
  2523.                     GivePlayerWeapon(playerid, 29, 75);
  2524.                     GivePlayerWeapon(playerid, 33, 130);
  2525.                     GivePlayerWeapon(playerid, 31, 200);
  2526.                     GivePlayerWeapon(playerid, 46, 1);
  2527.                     SpawnPlayer(playerid);
  2528.                 }
  2529.                 else
  2530.                 {
  2531.                     SendClientMessage(playerid, COLOR_RED, "ERROR: You must have 500+ XP to use this class.");
  2532.                     ShowPlayerDialog(playerid, DIALOG_SCLASS, DIALOG_STYLE_LIST, "Select Class", "Soldier (0 XP)\nSniper (0 XP)\nMedic (30 XP)\nEngineer (75 XP)\nPilot (120 XP)\nFlamethrower (200 XP)\nSpy (310 XP)\nScout (350 XP)\nCargo plane Driver (500 XP)\nSupply Helicopter Driver (630 XP)\nGeneral (800 XP)\nVIP (1+ VIP Points)\nAdmin (Admin level 1+)\nOwner (Level 10)", "Go!", "");
  2533.                 }
  2534.             }
  2535.             case 9:
  2536.             {
  2537.                 if(PlayerInfo[playerid][Xp] >= 630)
  2538.                 {
  2539.                     IsHeliDriver[playerid] = 1;
  2540.                     GameTextForPlayer(playerid, "Helicopter Plane Driver", 5000, 6);
  2541.                     GivePlayerWeapon(playerid, 26, 80);
  2542.                     GivePlayerWeapon(playerid, 29, 75);
  2543.                     GivePlayerWeapon(playerid, 33, 130);
  2544.                     GivePlayerWeapon(playerid, 31, 200);
  2545.                     GivePlayerWeapon(playerid, 46, 1);
  2546.                     SpawnPlayer(playerid);
  2547.                 }
  2548.                 else
  2549.                 {
  2550.                     SendClientMessage(playerid, COLOR_RED, "ERROR: You must have 630+ XP to use this class.");
  2551.                     ShowPlayerDialog(playerid, DIALOG_SCLASS, DIALOG_STYLE_LIST, "Select Class", "Soldier (0 XP)\nSniper (0 XP)\nMedic (30 XP)\nEngineer (75 XP)\nPilot (120 XP)\nFlamethrower (200 XP)\nSpy (310 XP)\nScout (350 XP)\nCargo plane Driver (500 XP)\nSupply Helicopter Driver (630 XP)\nGeneral (800 XP)\nVIP (1+ VIP Points)\nAdmin (Admin level 1+)\nOwner (Level 10)", "Go!", "");
  2552.                 }
  2553.             }
  2554.             case 10:
  2555.             {
  2556.                 if(PlayerInfo[playerid][Xp] >= 800)
  2557.                 {
  2558.                     IsGeneral[playerid] = 1;
  2559.                     GameTextForPlayer(playerid, "General", 5000, 6);
  2560.                     GivePlayerWeapon(playerid, 26, 80);
  2561.                     GivePlayerWeapon(playerid, 29, 75);
  2562.                     GivePlayerWeapon(playerid, 33, 130);
  2563.                     GivePlayerWeapon(playerid, 31, 200);
  2564.                     GivePlayerWeapon(playerid, 46, 1);
  2565.                     SpawnPlayer(playerid);
  2566.                 }
  2567.                 else
  2568.                 {
  2569.                     SendClientMessage(playerid, COLOR_RED, "ERROR: You must have 800+ XP to use this class.");
  2570.                     ShowPlayerDialog(playerid, DIALOG_SCLASS, DIALOG_STYLE_LIST, "Select Class", "Soldier (0 XP)\nSniper (0 XP)\nMedic (30 XP)\nEngineer (75 XP)\nPilot (120 XP)\nFlamethrower (200 XP)\nSpy (310 XP)\nScout (350 XP)\nCargo plane Driver (500 XP)\nSupply Helicopter Driver (630 XP)\nGeneral (800 XP)\nVIP (1+ VIP Points)\nAdmin (Admin level 1+)\nOwner (Level 10)", "Go!", "");
  2571.                 }
  2572.             }
  2573.             case 11:
  2574.             {
  2575.                 if(PlayerInfo[playerid][Rank] >= 1)
  2576.                 {
  2577.                     IsVIP[playerid] = 1;
  2578.                     GameTextForPlayer(playerid, "~y~VIP", 5000, 6);
  2579.                     GivePlayerWeapon(playerid, 24, 80);
  2580.                     GivePlayerWeapon(playerid, 32, 75);
  2581.                     GivePlayerWeapon(playerid, 31, 150);
  2582.                     GivePlayerWeapon(playerid, 39, 200);
  2583.                     GivePlayerWeapon(playerid, 40, 1);
  2584.                     SpawnPlayer(playerid);
  2585.                 }
  2586.                 else
  2587.                 {
  2588.                     SendClientMessage(playerid, COLOR_RED, "ERROR: You must have 1+ VIP Points to use this class.");
  2589.                     ShowPlayerDialog(playerid, DIALOG_SCLASS, DIALOG_STYLE_LIST, "Select Class", "Soldier (0 XP)\nSniper (0 XP)\nMedic (30 XP)\nEngineer (75 XP)\nPilot (120 XP)\nFlamethrower (200 XP)\nSpy (310 XP)\nScout (350 XP)\nCargo plane Driver (500 XP)\nSupply Helicopter Driver (630 XP)\nGeneral (800 XP)\nVIP (1+ VIP Points)\nAdmin (Admin level 1+)\nOwner (Level 10)", "Go!", "");
  2590.                 }
  2591.             }
  2592.             case 12:
  2593.             {
  2594.                 if(PlayerInfo[playerid][Admin] >= 1)
  2595.                 {
  2596.                     IsAdmin[playerid] = 1;
  2597.                     GameTextForPlayer(playerid, "~r~Administrator", 5000, 6);
  2598.                     GivePlayerWeapon(playerid, 24, 80);
  2599.                     GivePlayerWeapon(playerid, 28, 110);
  2600.                     GivePlayerWeapon(playerid, 30, 130);
  2601.                     GivePlayerWeapon(playerid, 37, 200);
  2602.                     GivePlayerWeapon(playerid, 16, 5);
  2603.                     SpawnPlayer(playerid);
  2604.                 }
  2605.                 else
  2606.                 {
  2607.                     SendClientMessage(playerid, COLOR_RED, "ERROR: You must have Admin level 1+ to use this class.");
  2608.                     ShowPlayerDialog(playerid, DIALOG_SCLASS, DIALOG_STYLE_LIST, "Select Class", "Soldier (0 XP)\nSniper (0 XP)\nMedic (30 XP)\nEngineer (75 XP)\nPilot (120 XP)\nFlamethrower (200 XP)\nSpy (310 XP)\nScout (350 XP)\nCargo plane Driver (500 XP)\nSupply Helicopter Driver (630 XP)\nGeneral (800 XP)\nVIP (1+ VIP Points)\nAdmin (Admin level 1+)\nOwner (Level 10)", "Go!", "");
  2609.                 }
  2610.             }
  2611.             case 13:
  2612.             {
  2613.                 if(PlayerInfo[playerid][Admin] == 10)
  2614.                 {
  2615.                     IsOwner[playerid] = 1;
  2616.                     GameTextForPlayer(playerid, "~r~Owner", 5000, 6);
  2617.                     GivePlayerWeapon(playerid, 22, 999999);
  2618.                     GivePlayerWeapon(playerid, 32, 999999);
  2619.                     GivePlayerWeapon(playerid, 31, 999999);
  2620.                     GivePlayerWeapon(playerid, 38, 999999);
  2621.                     GivePlayerWeapon(playerid, 16, 999999);
  2622.                     SpawnPlayer(playerid);
  2623.                 }
  2624.                 else
  2625.                 {
  2626.                     SendClientMessage(playerid, COLOR_RED, "ERROR: You must be owner to use this class.");
  2627.                     ShowPlayerDialog(playerid, DIALOG_SCLASS, DIALOG_STYLE_LIST, "Select Class", "Soldier (0 XP)\nSniper (0 XP)\nMedic (30 XP)\nEngineer (75 XP)\nPilot (120 XP)\nFlamethrower (200 XP)\nSpy (310 XP)\nScout (350 XP)\nCargo plane Driver (500 XP)\nSupply Helicopter Driver (630 XP)\nGeneral (800 XP)\nVIP (1+ VIP Points)\nAdmin (Admin level 1+)\nOwner (Level 10)", "Go!", "");
  2628.                 }
  2629.             }
  2630.         }
  2631.     }
  2632.  
  2633.     //SPY - Select Team
  2634.     if(dialogid == DIALOG_SSTEAM)
  2635.     {
  2636.         if(response)
  2637.         {
  2638.             switch(listitem)
  2639.             {
  2640.                 case 0:
  2641.                 {
  2642.                     SetPlayerColor(playerid, COLOR_BLUE);
  2643.                     GameTextForPlayer(playerid, "~b~DELTA FORCE", 7500, 6);
  2644.                     SetPlayerSkin(playerid, SKIN_USA);
  2645.                     SpawnPlayer(playerid);
  2646.                     SetPlayerPos(playerid, 132.8504, 1936.7646, 19.2756);
  2647.                     SetPlayerFacingAngle(playerid, 172.3116);
  2648.                 }
  2649.                 case 1:
  2650.                 {
  2651.                     SetPlayerColor(playerid, COLOR_RED);
  2652.                     GameTextForPlayer(playerid, "~r~SPETSNAZ", 7500, 6);
  2653.                     SetPlayerSkin(playerid, SKIN_RUSSIA);
  2654.                     SpawnPlayer(playerid);
  2655.                     SetPlayerPos(playerid, -64.4707, -114.5573, 3.1172);
  2656.                     SetPlayerFacingAngle(playerid,
  2657.                 }
  2658.                 case 2:
  2659.                 {
  2660.                     SetPlayerColor(playerid, COLOR_GREEN);
  2661.                     GameTextForPlayer(playerid, "~g~GIGN", 7500, 6);
  2662.                     SetPlayerSkin(playerid, SKIN_GIGN);
  2663.                 }
  2664.                 case 3:
  2665.                 {
  2666.                     SetPlayerColor(playerid, COLOR_AQUA);
  2667.                     GameTextForPlayer(playerid, "ITALIAN ARMY", 7500, 6);
  2668.                     SetPlayerSkin(playerid, SKIN_IA);
  2669.                 }
  2670.                 case 4:
  2671.                 {
  2672.                     SetPlayerColor(playerid, 0xFF800096);
  2673.                     GameTextForPlayer(playerid, "Japan Self Defense Forces", 7500, 6);
  2674.                     SetPlayerSkin(playerid, SKIN_JSDF);
  2675.                 }
  2676.             }
  2677.         }
  2678.         else
  2679.         {
  2680.             //The player has pressed "Select".
  2681.             switch(listitem)
  2682.             {
  2683.                 case 0:
  2684.                 {
  2685.                     //Selected Item: "Delta Force (USA)"
  2686.                 }
  2687.                 case 1:
  2688.                 {
  2689.                     //Selected Item: "Spetsnaz (Russia)"
  2690.                 }
  2691.                 case 2:
  2692.                 {
  2693.                     //Selected Item: "GIGN (France)"
  2694.                 }
  2695.                 case 3:
  2696.                 {
  2697.                     //Selected Item: "Italian Army (Italy)"
  2698.                 }
  2699.                 case 4:
  2700.                 {
  2701.                     //Selected Item: "Japan Self Defense Forces (Japan)"
  2702.                 }
  2703.             }
  2704.         }
  2705.     }
  2706.  
  2707.     if(dialogid == DIALOG_LOGIN)
  2708.     {
  2709.         new name[MAX_PLAYER_NAME];
  2710.         GetPlayerName(playerid, name, sizeof(name));
  2711.         if(response)
  2712.         {
  2713.             if(udb_hash(inputtext) == PlayerInfo[playerid][Password])
  2714.             {
  2715.                 GivePlayerMoney(playerid, PlayerInfo[playerid][Cash]);
  2716.                 SetPlayerScore(playerid, PlayerInfo[playerid][Score]);
  2717.                 printf("*** %s has logged in!", name);
  2718.                 SendClientMessage(playerid, -1, "-| You have successfully logged in! |-");
  2719.             }
  2720.             else
  2721.             {
  2722.                 ShowPlayerDialog(playerid, DIALOG_LOGIN_2, DIALOG_STYLE_INPUT, "Invalid Password", "\n\n\t\t{FF0000}Invalid Password\n\n\t\t{CFCC92}MWFFA\n\n\t\tWelcome to MWFFA!\n\n{FFFF00}Please enter your password to start the game!\n\n", "Join the Action", "Get Kicked");
  2723.                 PlayerInfo[playerid][LoginAttempts]++;
  2724.             }
  2725.         }
  2726.         else
  2727.         {
  2728.             SendClientMessage(playerid, COLOR_RED, "You are now being kicked for not logging in!");
  2729.             printf("*** %s has been kicked for not logging in!", name);
  2730.             Kick(playerid);
  2731.         }
  2732.     }
  2733.  
  2734.     if(dialogid == DIALOG_LOGIN_2)
  2735.     {
  2736.         new name[MAX_PLAYER_NAME];
  2737.         GetPlayerName(playerid, name, sizeof(name));
  2738.         if(response)
  2739.         {
  2740.             if(udb_hash(inputtext) == PlayerInfo[playerid][Password])
  2741.             {
  2742.                 GivePlayerMoney(playerid, PlayerInfo[playerid][Cash]);
  2743.                 SetPlayerScore(playerid, PlayerInfo[playerid][Score]);
  2744.                 PlayerInfo[playerid][Xp] = PlayerInfo[playerid][Xp];
  2745.                 printf("*** %s has logged in!", name);
  2746.                 SendClientMessage(playerid, -1, "-| You have successfully logged in! |-");
  2747.             }
  2748.             else
  2749.             {
  2750.                 ShowPlayerDialog(playerid, DIALOG_LOGIN_2, DIALOG_STYLE_INPUT, "Invalid Password", "\n\n\t\t{FF0000}Invalid Password\n\n\t\t{CFCC92}MWFFA\n\n\t\tWelcome to MWFFA!\n\n{FFFF00}Please enter your password to start the game!\n\n", "Join the Action", "Get Kicked");
  2751.                 PlayerInfo[playerid][LoginAttempts]++;
  2752.             }
  2753.         }
  2754.         else
  2755.         {
  2756.             SendClientMessage(playerid, COLOR_RED, "You are now being kicked for not logging in!");
  2757.             printf("*** %s has been kicked for not logging in!", name);
  2758.             Kick(playerid);
  2759.         }
  2760.     }
  2761.  
  2762.     if(dialogid == DIALOG_REGISTER)
  2763.     {
  2764.         if(response)
  2765.         {
  2766.             if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER_2, DIALOG_STYLE_INPUT, "No Password Entered", "{FF0000}You have entered no password.\n\n\t\t\t{00FF00}MWFFA\n\n\t{0000FF}Welcome on the server!\n\t{0000FF}Please register to start the game!", "Join the Action", "Get Kicked");
  2767.             new INI:File = INI_Open(UserPath(playerid));
  2768.             INI_WriteInt(File,"Password",udb_hash(inputtext));
  2769.             INI_WriteInt(File,"LoggedIn",0);
  2770.             INI_WriteInt(File,"Admin",0);
  2771.             INI_WriteInt(File,"Operator",0);
  2772.             INI_WriteInt(File,"VipRank",0);
  2773.             INI_WriteInt(File,"XP",0);
  2774.             INI_WriteInt(File,"Score",0);
  2775.             INI_WriteInt(File,"Money",0);
  2776.             INI_WriteInt(File,"Kills",0);
  2777.             INI_WriteInt(File,"Deaths",0);
  2778.             INI_Close(File);
  2779.         }
  2780.         else
  2781.         {
  2782.             Kick(playerid);
  2783.         }
  2784.     }
  2785.  
  2786.     if(dialogid == DIALOG_REGISTER_2)
  2787.     {
  2788.         if(response)
  2789.         {
  2790.             if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER_2, DIALOG_STYLE_INPUT, "No Password Entered", "{FF0000}You have entered no password.\n\n\t\t\t{00FF00}MWFFA\n\n\t{0000FF}Welcome on the server!\n\t{0000FF}Please register to start the game!", "Join the Action", "Get Kicked");
  2791.             new INI:File = INI_Open(UserPath(playerid));
  2792.             INI_SetTag(File,"info");
  2793.             INI_WriteInt(File,"Password",udb_hash(inputtext));
  2794.             INI_WriteInt(File,"LoggedIn",0);
  2795.             INI_WriteInt(File,"Admin",0);
  2796.             INI_WriteInt(File,"Operator",0);
  2797.             INI_WriteInt(File,"VipRank",0);
  2798.             INI_WriteInt(File,"XP",0);
  2799.             INI_WriteInt(File,"Score",0);
  2800.             INI_WriteInt(File,"Money",0);
  2801.             INI_WriteInt(File,"Kills",0);
  2802.             INI_WriteInt(File,"Deaths",0);
  2803.         }
  2804.         else
  2805.         {
  2806.             Kick(playerid);
  2807.         }
  2808.     }
  2809.  
  2810.     if(dialogid == DIALOG_OPTION)
  2811.     {
  2812.         if(response)
  2813.         {
  2814.             switch(listitem)
  2815.             {
  2816.                 case 0:
  2817.                 {
  2818.                     ShowPlayerDialog(playerid, DIALOG_ALI, DIALOG_STYLE_LIST, "Auto Log-In Options", "Enable\nDisable", "Select", "Back");
  2819.                 }
  2820.                 case 1:
  2821.                 {
  2822.                     ShowPlayerDialog(playerid, DIALOG_BONUS, DIALOG_STYLE_LIST, "Stunt Bonus Options", "Enable\nDisable", "Select", "Back");
  2823.                 }
  2824.             }
  2825.         }
  2826.         else
  2827.         {
  2828.             //The player has pressed "Select".
  2829.             switch(listitem)
  2830.             {
  2831.                 case 0:
  2832.                 {
  2833.                     //Selected Item: "Auto Log-In"
  2834.                 }
  2835.                 case 1:
  2836.                 {
  2837.                     //Selected Item: "Stunt Bonus"
  2838.                 }
  2839.             }
  2840.         }
  2841.     }
  2842.  
  2843.     if(dialogid == DIALOG_ALI)
  2844.     {
  2845.         if(!response) return ShowPlayerDialog(playerid, DIALOG_OPTION, DIALOG_STYLE_LIST, "Player Options", "Auto Log-In\nStunt Bonus", "Select", "Cancel");
  2846.         if(response)
  2847.         {
  2848.             switch(listitem)
  2849.             {
  2850.                 case 0:
  2851.                 {
  2852.                     PlayerInfo[playerid][LoggedIn] = 1;
  2853.                     SendClientMessage(playerid, -1, "You have enabled auto log-in");
  2854.                 }
  2855.                 case 1:
  2856.                 {
  2857.                     PlayerInfo[playerid][LoggedIn] = 0;
  2858.                     SendClientMessage(playerid, -1, "You have disabled auto log-in");
  2859.                 }
  2860.             }
  2861.         }
  2862.     }
  2863.  
  2864.     if(dialogid == DIALOG_BONUS)
  2865.     {
  2866.         if(!response) return ShowPlayerDialog(playerid, DIALOG_OPTION, DIALOG_STYLE_LIST, "Player Options", "Auto Log-In\nStunt Bonus", "Select", "Cancel");
  2867.         if(response)
  2868.         {
  2869.             switch(listitem)
  2870.             {
  2871.                 case 0:
  2872.                 {
  2873.                     EnableStuntBonusForPlayer(playerid, 1);
  2874.                     SendClientMessage(playerid, -1, "You have enabled stunt bonus");
  2875.                 }
  2876.                 case 1:
  2877.                 {
  2878.                     EnableStuntBonusForPlayer(playerid, 0);
  2879.                     SendClientMessage(playerid, -1, "You have disabled stunt bonus");
  2880.                 }
  2881.             }
  2882.         }
  2883.     }
  2884.  
  2885.     if(dialogid == DIALOG_MODS)
  2886.     {
  2887.         if(response)
  2888.         {
  2889.             switch(listitem)
  2890.             {
  2891.                 case 0:
  2892.                 {
  2893.                     ShowPlayerDialog(playerid, DIALOG_MODS1, DIALOG_STYLE_LIST, "CaptainPrice's Vehicle Mods", "Admiral (NOT A MOD)\nBuffalo\nTurismo\nSuper GT\nLandstalker\nRhino\nS.W.A.T.\nHunter\nHydra\nCargobob\nLeviathan\nMaverick\nRaindance\nDodo Plane\nBeagle\nAndromada", "Select", "Cancel");
  2894.                 }
  2895.             }
  2896.         }
  2897.         else
  2898.         {
  2899.             //The player has pressed "Select".
  2900.             switch(listitem)
  2901.             {
  2902.                 case 0:
  2903.                 {
  2904.                     //Selected Item: "{009282}CaptainPrice's Vehicle Mods"
  2905.                 }
  2906.             }
  2907.         }
  2908.     }
  2909.  
  2910.     if(dialogid == DIALOG_MODS1)
  2911.     {
  2912.         if(response)
  2913.         {
  2914.             switch(listitem)
  2915.             {
  2916.                 case 0:
  2917.                 {
  2918.                     CreateVehicleForPlayer(playerid, 445);
  2919.                 }
  2920.                 case 1:
  2921.                 {
  2922.                     CreateVehicleForPlayer(playerid, 402);
  2923.                 }
  2924.                 case 2:
  2925.                 {
  2926.                     CreateVehicleForPlayer(playerid, 451);
  2927.                 }
  2928.                 case 3:
  2929.                 {
  2930.                     CreateVehicleForPlayer(playerid, 506);
  2931.                 }
  2932.                 case 4:
  2933.                 {
  2934.                     CreateVehicleForPlayer(playerid, 400);
  2935.                 }
  2936.                 case 5:
  2937.                 {
  2938.                     CreateVehicleForPlayer(playerid, 432);
  2939.                 }
  2940.                 case 6:
  2941.                 {
  2942.                     CreateVehicleForPlayer(playerid, 601);
  2943.                 }
  2944.                 case 7:
  2945.                 {
  2946.                     CreateVehicleForPlayer(playerid, 425);
  2947.                 }
  2948.                 case 8:
  2949.                 {
  2950.                     CreateVehicleForPlayer(playerid, 520);
  2951.                 }
  2952.                 case 9:
  2953.                 {
  2954.                     CreateVehicleForPlayer(playerid, 548);
  2955.                 }
  2956.                 case 10:
  2957.                 {
  2958.                     CreateVehicleForPlayer(playerid, 417);
  2959.                 }
  2960.                 case 11:
  2961.                 {
  2962.                     CreateVehicleForPlayer(playerid, 487);
  2963.                 }
  2964.                 case 12:
  2965.                 {
  2966.                     CreateVehicleForPlayer(playerid, 563);
  2967.                 }
  2968.                 case 13:
  2969.                 {
  2970.                     CreateVehicleForPlayer(playerid, 593);
  2971.                 }
  2972.                 case 14:
  2973.                 {
  2974.                     CreateVehicleForPlayer(playerid, 511);
  2975.                 }
  2976.                 case 15:
  2977.                 {
  2978.                     CreateVehicleForPlayer(playerid, 592);
  2979.                 }
  2980.             }
  2981.         }
  2982.         else
  2983.         {
  2984.             //The player has pressed "Select".
  2985.             switch(listitem)
  2986.             {
  2987.                 case 0:
  2988.                 {
  2989.                     //Selected Item: "Admiral (NOT A MOD)"
  2990.                 }
  2991.                 case 1:
  2992.                 {
  2993.                     //Selected Item: "Buffalo"
  2994.                 }
  2995.                 case 2:
  2996.                 {
  2997.                     //Selected Item: "Turismo"
  2998.                 }
  2999.                 case 3:
  3000.                 {
  3001.                     //Selected Item: "Super GT"
  3002.                 }
  3003.                 case 4:
  3004.                 {
  3005.                     //Selected Item: "Landstalker"
  3006.                 }
  3007.                 case 5:
  3008.                 {
  3009.                     //Selected Item: "Rhino"
  3010.                 }
  3011.                 case 6:
  3012.                 {
  3013.                     //Selected Item: "S.W.A.T."
  3014.                 }
  3015.                 case 7:
  3016.                 {
  3017.                     //Selected Item: "Hunter"
  3018.                 }
  3019.                 case 8:
  3020.                 {
  3021.                     //Selected Item: "Hydra"
  3022.                 }
  3023.                 case 9:
  3024.                 {
  3025.                     //Selected Item: "Cargobob"
  3026.                 }
  3027.                 case 10:
  3028.                 {
  3029.                     //Selected Item: "Leviathan"
  3030.                 }
  3031.                 case 11:
  3032.                 {
  3033.                     //Selected Item: "Maverick"
  3034.                 }
  3035.                 case 12:
  3036.                 {
  3037.                     //Selected Item: "Raindance"
  3038.                 }
  3039.                 case 13:
  3040.                 {
  3041.                     //Selected Item: "Dodo Plane"
  3042.                 }
  3043.                 case 14:
  3044.                 {
  3045.                     //Selected Item: "Beagle"
  3046.                 }
  3047.                 case 15:
  3048.                 {
  3049.                     //Selected Item: "Andromada"
  3050.                 }
  3051.             }
  3052.         }
  3053.     }
  3054.  
  3055.     if(dialogid == DIALOG_HELP)
  3056.     {
  3057.         if(response)
  3058.         {
  3059.             switch(listitem)
  3060.             {
  3061.                 case 0:
  3062.                 {
  3063.                     ShowPlayerDialog(playerid, DIALOG_H_OBJ, DIALOG_STYLE_MSGBOX, "Objective", "{005E00}-| Objective |-\n{00FF1E}Your objective is to capture zones and kill enemies.\n{00FF00}There are also other features to.", "OK", "Back");
  3064.                 }
  3065.                 case 1:
  3066.                 {
  3067.                     //Selected Item: "{009262}Capturing Zones"
  3068.                 }
  3069.                 case 2:
  3070.                 {
  3071.                     ShowPlayerDialog(playerid, DIALOG_H_BOMB, DIALOG_STYLE_MSGBOX, "Bomb Help", "{FF8E00}-| Bombs |-\n{0088FF}You can drop bombs from planes or helicopters. {0088FF}Press END to go down the list, press DELETE to go up the list, and press SPACEBAR to drop it.\n{FF0000}Note: Do NOT use normal bomb, as it is bugged, and will cause your screen to shake until you die.", "OK", "Back");
  3072.                 }
  3073.                 case 3:
  3074.                 {
  3075.                     //Selected Item: "{EC9D00}Killstreaks"
  3076.                 }
  3077.                 case 4:
  3078.                 {
  3079.                     ShowPlayerDialog(playerid, DIALOG_H_SS, DIALOG_STYLE_INPUT, "Submit Suggestion", "Submit your suggestion here and it will  be saved to file for [MW]CaptainPrice[DF] (the owner) to read.", "Submit", "Back");
  3080.                 }
  3081.                 case 5:
  3082.                 {
  3083.                     ShowPlayerDialog(playerid, DIALOG_H_RB, DIALOG_STYLE_INPUT, "Report Bug", "Submit the bug you found here and it will  be saved to file for [MW]CaptainPrice[DF] (the owner) to read.", "Submit", "Back");
  3084.                 }
  3085.             }
  3086.         }
  3087.         else
  3088.         {
  3089.             //The player has pressed "Get Help".
  3090.             switch(listitem)
  3091.             {
  3092.                 case 0:
  3093.                 {
  3094.                     //Selected Item: "{00FF00}Objective\t"
  3095.                 }
  3096.                 case 1:
  3097.                 {
  3098.                     //Selected Item: "{009262}Capturing Zones"
  3099.                 }
  3100.                 case 2:
  3101.                 {
  3102.                     //Selected Item: "{0000DA}Bombs"
  3103.                 }
  3104.                 case 3:
  3105.                 {
  3106.                     //Selected Item: "{EC9D00}Killstreaks"
  3107.                 }
  3108.                 case 4:
  3109.                 {
  3110.                     //Selected Item: "Submit Suggestion"
  3111.                 }
  3112.                 case 5:
  3113.                 {
  3114.                     //Selected Item: "Report Bug"
  3115.                 }
  3116.             }
  3117.         }
  3118.     }
  3119.  
  3120.     if(dialogid == DIALOG_H_OBJ)
  3121.     {
  3122.         if(response)
  3123.         {
  3124.             //The player has pressed "OK".
  3125.         }
  3126.         else
  3127.         {
  3128.             ShowPlayerDialog(playerid, DIALOG_HELP, DIALOG_STYLE_LIST, "Help Dialog", "{00FF00}Objective\t\n{009262}Capturing Zones\n{0000DA}Bombs\n{EC9D00}Killstreaks\nSubmit Suggestion\nReport Bug", "Get Help", "Cancel");
  3129.         }
  3130.     }
  3131.  
  3132.     if(dialogid == DIALOG_H_BOMB)
  3133.     {
  3134.         if(response)
  3135.         {
  3136.             //The player has pressed "OK".
  3137.         }
  3138.         else
  3139.         {
  3140.             ShowPlayerDialog(playerid, DIALOG_HELP, DIALOG_STYLE_LIST, "Help Dialog", "{00FF00}Objective\t\n{009262}Capturing Zones\n{0000DA}Bombs\n{EC9D00}Killstreaks\nSubmit Suggestion\nReport Bug", "Get Help", "Cancel");
  3141.         }
  3142.     }
  3143.  
  3144.     if(dialogid == DIALOG_H_SS)
  3145.     {
  3146.         if(response)
  3147.         {
  3148.             SaveIn("Suggestions", inputtext);
  3149.             SendClientMessage(playerid, COLOR_GREEN, "-| Suggestion Submitted! |-");
  3150.         }
  3151.         else
  3152.         {
  3153.             ShowPlayerDialog(playerid, DIALOG_HELP, DIALOG_STYLE_LIST, "Help Dialog", "{00FF00}Objective\t\n{009262}Capturing Zones\n{0000DA}Bombs\n{EC9D00}Killstreaks\nSubmit Suggestion\nReport Bug", "Get Help", "Cancel");
  3154.         }
  3155.     }
  3156.  
  3157.     if(dialogid == DIALOG_H_RB)
  3158.     {
  3159.         if(response)
  3160.         {
  3161.             SaveIn("Bugs", inputtext);
  3162.             SendClientMessage(playerid, COLOR_GREEN, "-| Bug Reported! |-");
  3163.         }
  3164.         else
  3165.         {
  3166.             ShowPlayerDialog(playerid, DIALOG_HELP, DIALOG_STYLE_LIST, "Help Dialog", "{00FF00}Objective\t\n{009262}Capturing Zones\n{0000DA}Bombs\n{EC9D00}Killstreaks\nSubmit Suggestion\nReport Bug", "Get Help", "Cancel");
  3167.         }
  3168.     }
  3169.     return 0;
  3170. }
  3171.  
  3172. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  3173. {
  3174.     return 1;
  3175. }
  3176.  
  3177. //================= STOCKS ================//
  3178. stock GetVehicleSpeed(const vehicleid, bool:mph = false)
  3179. {
  3180.     new Float:x, Float:y, Float:z;
  3181.     GetVehicleVelocity(vehicleid, x, y, z);
  3182.  
  3183.     if(mph) return floatround(((floatpower(x, 2)) + (floatpower(y, 2)) + (floatpower(z, 2))) * 100);
  3184.     else return floatround((((floatpower(x, 2)) + (floatpower(y, 2)) + (floatpower(z, 2))) * 100) * 1.6);
  3185. }
  3186.  
  3187. stock GivePlayerScore(playerid, amount, bool:plus = true)
  3188. {
  3189.     new score = GetPlayerScore(playerid);
  3190.  
  3191.     if(plus) return SetPlayerScore(playerid, score+amount);
  3192.     else return SetPlayerScore(playerid, score-amount);
  3193. }
  3194.  
  3195. stock TeamColor(playerid)
  3196. {
  3197.     new color;
  3198.     new team;
  3199.     team = GetPlayerTeam(playerid);
  3200.     if(team == TEAM_DELTA)
  3201.     {
  3202.         color = 0x0000FF95;
  3203.     }
  3204.  
  3205.     if(team == TEAM_SPETSNAZ)
  3206.     {
  3207.         color = 0xFF000095;
  3208.     }
  3209.  
  3210.     if(team == TEAM_GIGN)
  3211.     {
  3212.         color = 0x00FF0095;
  3213.     }
  3214.  
  3215.     if(team == TEAM_IA)
  3216.     {
  3217.         color = 0x00FFFF7C;
  3218.     }
  3219.  
  3220.     if(team == TEAM_JSDF)
  3221.     {
  3222.         color = 0xFFA6007C;
  3223.     }
  3224.     return color;
  3225. }
  3226. //============== PUBLICS =================//
  3227. public ASKOff(playerid)
  3228. {
  3229.     PlayerInfo[playerid][Protected] = 0;
  3230.     SendClientMessage(playerid, COLOR_RED, "Anti-spawn kill off.");
  3231.     SetPlayerHealth(playerid, 100);
  3232.     SetPlayerArmour(playerid, 100.0);
  3233.     return 1;
  3234. }
  3235.  
  3236. //================ IRC PUBLICS ====================//
  3237. public IRC_OnConnect(botid)
  3238. {
  3239.     printf("*** IRC_OnConnect: Bot ID %d connected!", botid);
  3240.     // Join the channel
  3241.     if(botid == 1)
  3242.     {
  3243.         IRC_JoinChannel(botid, IRC_CHANNEL);
  3244.         IRC_AddToGroup(gGroupID, botid);
  3245.     }
  3246.     // Add the bot to the group
  3247.     return 1;
  3248. }
  3249.  
  3250. /*
  3251.     Note that this callback is executed whenever a current connection is closed
  3252.     OR whenever a connection attempt fails. Reconnecting too fast can flood the
  3253.     IRC server and possibly result in a ban. It is recommended to set up
  3254.     connection reattempts on a timer, as demonstrated here.
  3255. */
  3256.  
  3257. public IRC_OnDisconnect(botid)
  3258. {
  3259.     printf("*** IRC_OnDisconnect: Bot ID %d disconnected!", botid);
  3260.     printf("*** IRC_OnDisconnect: Bot ID %d attempting to reconnect...", botid);
  3261.     // Remove the bot from the group
  3262.     IRC_RemoveFromGroup(gGroupID, botid);
  3263.     return 1;
  3264. }
  3265.  
  3266. public IRC_OnJoinChannel(botid, channel[])
  3267. {
  3268.     printf("*** IRC_OnJoinChannel: Bot ID %d joined channel %s!", botid, channel);
  3269.     return 1;
  3270. }
  3271.  
  3272. /*
  3273.     If the bot cannot immediately rejoin the channel (in the event, for example,
  3274.     that the bot is kicked and then banned), you might want to set up a timer
  3275.     here as well for rejoin attempts.
  3276. */
  3277.  
  3278. public IRC_OnLeaveChannel(botid, channel[], message[])
  3279. {
  3280.     printf("*** IRC_OnLeaveChannel: Bot ID %d left channel %s (%s)!", botid, channel, message);
  3281.     IRC_JoinChannel(botid, channel);
  3282.     return 1;
  3283. }
  3284.  
  3285. public IRC_OnUserDisconnect(botid, user[], host[], message[])
  3286. {
  3287.     printf("*** IRC_OnUserDisconnect (Bot ID %d): User %s (%s) disconnected! (%s)", botid, user, host, message);
  3288.     return 1;
  3289. }
  3290.  
  3291. public IRC_OnUserJoinChannel(botid, channel[], user[], host[])
  3292. {
  3293.     printf("*** IRC_OnUserJoinChannel (Bot ID %d): User %s (%s) joined channel %s!", botid, user, host, channel);
  3294.     return 1;
  3295. }
  3296.  
  3297. public IRC_OnUserLeaveChannel(botid, channel[], user[], host[], message[])
  3298. {
  3299.     printf("*** IRC_OnUserLeaveChannel (Bot ID %d): User %s (%s) left channel %s (%s)!", botid, user, host, channel, message);
  3300.     return 1;
  3301. }
  3302.  
  3303. public IRC_OnUserNickChange(botid, oldnick[], newnick[], host[])
  3304. {
  3305.     printf("*** IRC_OnUserNickChange (Bot ID %d): User %s (%s) changed his nick to %s!", botid, oldnick, host, newnick);
  3306.     return 1;
  3307. }
  3308.  
  3309. public IRC_OnUserSetChannelMode(botid, channel[], user[], host[], mode[])
  3310. {
  3311.     printf("*** IRC_OnUserSetChannelMode (Bot ID %d): User %s (%s) on %s set mode: %s!", botid, user, host, channel, mode);
  3312.     return 1;
  3313. }
  3314.  
  3315. public IRC_OnUserSetChannelTopic(botid, channel[], user[], host[], topic[])
  3316. {
  3317.     printf("*** IRC_OnUserSetChannelTopic (Bot ID %d): User %s (%s) on %s set topic: %s!", botid, user, host, channel, topic);
  3318.     return 1;
  3319. }
  3320.  
  3321. public IRC_OnUserNotice(botid, recipient[], user[], host[], message[])
  3322. {
  3323.     printf("*** IRC_OnUserNotice (Bot ID %d): User %s (%s) sent notice to %s: %s", botid, user, host, recipient, message);
  3324.     return 1;
  3325. }
  3326.  
  3327. //=================== IRC Commands ===============//
  3328. IRCCMD:freeze(botid, channel[], user[], host[], params[])
  3329. {
  3330.     if(IRC_IsAdmin(botid, channel, user))
  3331.     {
  3332.         if(!strlen(params)) return IRC_Notice(botid, user, "*** Usage: !freeze (ID) (Reason)");
  3333.         new id;
  3334.         new Index;
  3335.         new tmp[256];
  3336.         tmp = strtok(params, Index);
  3337.         new reason;
  3338.         new string[100];
  3339.         new name[MAX_PLAYER_NAME];
  3340.         id = strval(tmp);
  3341.         reason = params[2];
  3342.         if(id == INVALID_PLAYER_ID) return IRC_Notice(botid, user, "*** Invalid player ID");
  3343.         else
  3344.         {
  3345.             GetPlayerName(id, name, sizeof(name));
  3346.             TogglePlayerControllable(id, 0);
  3347.             format(string, sizeof(string),"*** You have successfully frozen %s(%d)", name, id);
  3348.             IRC_Notice(botid, user, string);
  3349.             format(string, sizeof(string), "*** IRC Admin %s has frozen %s(%d) for reason %s", user, name, id, reason);
  3350.             IRC_GroupSay(gGroupID, IRC_CHANNEL, string);
  3351.             format(string, sizeof(string), "-| You have been frozen by IRC Admin %s for reason %s |-", user, reason);
  3352.             SendClientMessage(id, COLOR_RED, string);
  3353.             format(string, sizeof(string),"-| IRC Admin %s has frozen %s(%d) for reason %s |-", user, name, id, reason);
  3354.             SendClientMessageToAll(COLOR_GREEN, string);
  3355.         }
  3356.     }
  3357.     return 1;
  3358. }
  3359.  
  3360. //================== STRTOK ==================//
  3361. strtok(const string[], &index)
  3362. {
  3363.     new length = strlen(string);
  3364.     while ((index < length) && (string[index] <= ' '))
  3365.     {
  3366.         index++;
  3367.     }
  3368.  
  3369.     new offset = index;
  3370.     new result[20];
  3371.     while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  3372.     {
  3373.         result[index - offset] = string[index];
  3374.         index++;
  3375.     }
  3376.     result[index - offset] = EOS;
  3377.     return result;
  3378. }
  3379.  
  3380. //Take over
  3381. forward TakeOver(playerid);
  3382. public TakeOver(playerid)
  3383. {
  3384.     new gTeam;
  3385.     gTeam = GetPlayerTeam(playerid);
  3386.     if(IsPlayerInDynamicCP(playerid, CP_KACC))
  3387.     {
  3388.         GangZoneStopFlashForAll(Zone[Z_KACC]);
  3389.         UnderAttack[Z_KACC] = 0;
  3390.         GangZoneHideForAll(Zone[Z_KACC]);
  3391.         SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
  3392.         PlayerInfo[playerid][Xp] += 5;
  3393.         GivePlayerMoney(playerid, 3500);
  3394.         SendClientMessage(playerid, COLOR_GREEN, "You have recieved 5 XP and $3500 from the captured zone.");
  3395.         GangZoneShowForAll(Zone[Z_KACC], TeamColor(playerid));
  3396.  
  3397.         if(gTeam == TEAM_DELTA)
  3398.         {
  3399.             SendClientMessageToAll(-1, "Delta Force has captured KACC Military Fuels!");
  3400.             CapturedBy[Z_KACC] = 1;
  3401.         }
  3402.         else if(gTeam == TEAM_SPETSNAZ)
  3403.         {
  3404.             SendClientMessageToAll(-1, "Spetsnaz has captured KACC Military Fuels!");
  3405.             CapturedBy[Z_KACC] = 2;
  3406.         }
  3407.         else if(gTeam == TEAM_GIGN)
  3408.         {
  3409.             SendClientMessageToAll(-1, "GIGN has captured KACC Military Fuels!");
  3410.             CapturedBy[Z_KACC] = 3;
  3411.         }
  3412.         else if(gTeam == TEAM_IA)
  3413.         {
  3414.             SendClientMessageToAll(-1, "Italian Army has captured KACC Military Fuels!");
  3415.             CapturedBy[Z_KACC] = 4;
  3416.         }
  3417.         else if(gTeam == TEAM_JSDF)
  3418.         {
  3419.             SendClientMessageToAll(-1, "Japan Self Defense Forces has captured KACC Military Fuels!");
  3420.             CapturedBy[Z_KACC] = 5;
  3421.         }
  3422.         return 0;
  3423.     }
  3424.  
  3425.     if(IsPlayerInDynamicCP(playerid, CP_AT))
  3426.     {
  3427.         GangZoneStopFlashForAll(Zone[Z_AT]);
  3428.         UnderAttack[Z_AT] = 0;
  3429.         GangZoneHideForAll(Zone[Z_AT]);
  3430.         SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
  3431.         PlayerInfo[playerid][Xp] += 5;
  3432.         GivePlayerMoney(playerid, 3500);
  3433.         SendClientMessage(playerid, COLOR_GREEN, "You have recieved 5 XP and $3500 from the captured zone.");
  3434.         GangZoneShowForAll(Zone[Z_AT], TeamColor(playerid));
  3435.  
  3436.         if(gTeam == TEAM_DELTA)
  3437.         {
  3438.             SendClientMessageToAll(-1, "Delta Force has captured The Abandoned Town!");
  3439.         }
  3440.         else if(gTeam == TEAM_SPETSNAZ)
  3441.         {
  3442.             SendClientMessageToAll(-1, "Spetsnaz has captured The Abandoned Town!");
  3443.         }
  3444.         else if(gTeam == TEAM_GIGN)
  3445.         {
  3446.             SendClientMessageToAll(-1, "GIGN has captured The Abandoned Town!");
  3447.         }
  3448.         else if(gTeam == TEAM_IA)
  3449.         {
  3450.             SendClientMessageToAll(-1, "Italian Army has captured The Abandoned Town!");
  3451.         }
  3452.         else if(gTeam == TEAM_JSDF)
  3453.         {
  3454.             SendClientMessageToAll(-1, "Japan Self Defense Forces has captured The Abandoned Town!");
  3455.         }
  3456.         return 0;
  3457.     }
  3458.  
  3459.     if(IsPlayerInDynamicCP(playerid, CP_EAR))
  3460.     {
  3461.         GangZoneStopFlashForAll(Zone[Z_EAR]);
  3462.         UnderAttack[Z_EAR] = 0;
  3463.         GangZoneHideForAll(Zone[Z_EAR]);
  3464.         SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
  3465.         PlayerInfo[playerid][Xp] += 5;
  3466.         GivePlayerMoney(playerid, 3500);
  3467.         SendClientMessage(playerid, COLOR_GREEN, "You have recieved 5 XP and $3500 from the captured zone.");
  3468.         GangZoneShowForAll(Zone[Z_EAR], TeamColor(playerid));
  3469.  
  3470.         if(gTeam == TEAM_DELTA)
  3471.         {
  3472.             SendClientMessageToAll(-1, "Delta Force has captured The Big Ear!");
  3473.             CapturedBy[Z_EAR] = 1;
  3474.         }
  3475.         else if(gTeam == TEAM_SPETSNAZ)
  3476.         {
  3477.             SendClientMessageToAll(-1, "Spetsnaz has captured The Big Ear!");
  3478.             CapturedBy[Z_EAR] = 2;
  3479.         }
  3480.         else if(gTeam == TEAM_GIGN)
  3481.         {
  3482.             SendClientMessageToAll(-1, "GIGN has captured The Big Ear!");
  3483.             CapturedBy[Z_EAR] = 3;
  3484.         }
  3485.         else if(gTeam == TEAM_IA)
  3486.         {
  3487.             SendClientMessageToAll(-1, "Italian Army has captured The Big Ear!");
  3488.             CapturedBy[Z_EAR] = 4;
  3489.         }
  3490.         else if(gTeam == TEAM_JSDF)
  3491.         {
  3492.             SendClientMessageToAll(-1, "Japan Self Defense Forces has captured The Big Ear!");
  3493.             CapturedBy[Z_EAR] = 5;
  3494.         }
  3495.         return 0;
  3496.     }
  3497.  
  3498.     //FTW
  3499.     if(IsPlayerInDynamicCP(playerid, CP_FTW))
  3500.     {
  3501.         GangZoneStopFlashForAll(Zone[Z_FTW]);
  3502.         UnderAttack[Z_FTW] = 0;
  3503.         GangZoneHideForAll(Zone[Z_FTW]);
  3504.         SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
  3505.         PlayerInfo[playerid][Xp] += 5;
  3506.         GivePlayerMoney(playerid, 3500);
  3507.         SendClientMessage(playerid, COLOR_GREEN, "You have recieved 5 XP and $3500 from the captured zone.");
  3508.         GangZoneShowForAll(Zone[Z_FTW], TeamColor(playerid));
  3509.  
  3510.         if(gTeam == TEAM_DELTA)
  3511.         {
  3512.             SendClientMessageToAll(-1, "Delta Force has captured Fallen Tree Warehouse!");
  3513.             CapturedBy[Z_FTW] = 1;
  3514.         }
  3515.         else if(gTeam == TEAM_SPETSNAZ)
  3516.         {
  3517.             SendClientMessageToAll(-1, "Spetsnaz has captured Fallen Tree Warehouse!");
  3518.             CapturedBy[Z_FTW] = 2;
  3519.         }
  3520.         else if(gTeam == TEAM_GIGN)
  3521.         {
  3522.             SendClientMessageToAll(-1, "GIGN has captured Fallen Tree Warehouse!");
  3523.             CapturedBy[Z_FTW] = 3;
  3524.         }
  3525.         else if(gTeam == TEAM_IA)
  3526.         {
  3527.             SendClientMessageToAll(-1, "Italian Army has captured Fallen Tree Warehouse!");
  3528.             CapturedBy[Z_FTW] = 4;
  3529.         }
  3530.         else if(gTeam == TEAM_JSDF)
  3531.         {
  3532.             SendClientMessageToAll(-1, "Japan Self Defense Forces has captured Fallen Tree Warehouse!");
  3533.             CapturedBy[Z_FTW] = 5;
  3534.         }
  3535.         return 0;
  3536.     }
  3537.  
  3538.     if(IsPlayerInDynamicCP(playerid, CP_SFARM))
  3539.     {
  3540.         GangZoneStopFlashForAll(Zone[Z_SFARM]);
  3541.         UnderAttack[Z_SFARM] = 0;
  3542.         GangZoneHideForAll(Zone[Z_SFARM]);
  3543.         SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
  3544.         PlayerInfo[playerid][Xp] += 5;
  3545.         GivePlayerMoney(playerid, 3500);
  3546.         SendClientMessage(playerid, COLOR_GREEN, "You have recieved 5 XP and $3500 from the captured zone.");
  3547.         GangZoneShowForAll(Zone[Z_SFARM], TeamColor(playerid));
  3548.  
  3549.         if(gTeam == TEAM_DELTA)
  3550.         {
  3551.             SendClientMessageToAll(-1, "Delta Force has captured The Snake Farm!");
  3552.             CapturedBy[Z_SFARM] = 1;
  3553.         }
  3554.         else if(gTeam == TEAM_SPETSNAZ)
  3555.         {
  3556.             SendClientMessageToAll(-1, "Spetsnaz has captured The Snake Farm!");
  3557.             CapturedBy[Z_SFARM] = 2;
  3558.         }
  3559.         else if(gTeam == TEAM_GIGN)
  3560.         {
  3561.             SendClientMessageToAll(-1, "GIGN has captured The Snake Farm!");
  3562.             CapturedBy[Z_SFARM] = 3;
  3563.         }
  3564.         else if(gTeam == TEAM_IA)
  3565.         {
  3566.             SendClientMessageToAll(-1, "Italian Army has captured The Snake Farm!");
  3567.             CapturedBy[Z_SFARM] = 4;
  3568.         }
  3569.         else if(gTeam == TEAM_JSDF)
  3570.         {
  3571.             SendClientMessageToAll(-1, "Japan Self Defense Forces has captured The Snake Farm!");
  3572.             CapturedBy[Z_SFARM] = 5;
  3573.         }
  3574.         return 0;
  3575.     }
  3576.  
  3577.     //SF Driving School
  3578.     for(new i = 0; i < MAX_PLAYERS; i++)
  3579.     {
  3580.         if(IsPlayerInAnyVehicle(i)) return 0;
  3581.         gTeam = GetPlayerTeam(i);
  3582.         if(IsPlayerInArea(i, -2197.686, -281.7203, -2008.414, -68.69224))
  3583.         {
  3584.             GangZoneStopFlashForAll(Zone[Z_SCHOOL]);
  3585.             SetPlayerScore(i, GetPlayerScore(i) + 5);
  3586.             PlayerInfo[i][Xp] += 5;
  3587.             GangZoneHideForAll(Zone[Z_SCHOOL]);
  3588.             GivePlayerMoney(i, 3500);
  3589.             SendClientMessage(i, COLOR_GREEN, "You have recieved 5 XP and $3500 from the captured zone.");
  3590.  
  3591.             if(gTeam == TEAM_DELTA)
  3592.             {
  3593.                 GangZoneShowForAll(Zone[Z_SCHOOL], 0x0000FFA0);
  3594.                 SendClientMessageToAll(-1, "Delta Force has captured The Driving School!");
  3595.                 return 0;
  3596.             }
  3597.             else if(gTeam == TEAM_SPETSNAZ)
  3598.             {
  3599.                 GangZoneShowForAll(Zone[Z_SCHOOL], 0xFF0000A0);
  3600.                 SendClientMessageToAll(-1, "Spetsnaz has captured The Driving School!");
  3601.                 return 0;
  3602.             }
  3603.             else if(gTeam == TEAM_GIGN)
  3604.             {
  3605.                 GangZoneShowForAll(Zone[Z_SCHOOL], 0x00FF008A);
  3606.                 SendClientMessageToAll(-1, "GIGN has captured The Driving School!");
  3607.                 return 0;
  3608.             }
  3609.             else if(gTeam == TEAM_IA)
  3610.             {
  3611.                 GangZoneShowForAll(Zone[Z_SCHOOL], 0x00FFFF8A);
  3612.                 SendClientMessageToAll(-1, "Italian Army has captured The Driving School!");
  3613.                 return 0;
  3614.             }
  3615.             else if(gTeam == TEAM_JSDF)
  3616.             {
  3617.                 GangZoneShowForAll(Zone[Z_SCHOOL], 0xFF800096);
  3618.                 SendClientMessageToAll(-1, "Japan Self Defense Forces has captured The Driving School!");
  3619.             }
  3620.         }
  3621.     }
  3622.  
  3623.     //LS Ocean Docks
  3624.     for(new i = 0; i < MAX_PLAYERS; i++)
  3625.     {
  3626.         if(IsPlayerInAnyVehicle(i)) return 0;
  3627.         gTeam = GetPlayerTeam(i);
  3628.         if(IsPlayerConnected(i))
  3629.         {
  3630.             if(IsPlayerInArea(i, 2353.109, -2720.118, 2843.675, -2321.396))
  3631.             {
  3632.                 GangZoneStopFlashForAll(Z_DOCK);
  3633.                 SetPlayerScore(i, GetPlayerScore(i) + 5);
  3634.                 GangZoneHideForAll(Z_DOCK);
  3635.                 GivePlayerMoney(i, 3500);
  3636.                 SendClientMessage(i, COLOR_GREEN, "You have recieved 5 score and $3500 from the captured zone.");
  3637.  
  3638.                 if(gTeam == TEAM_DELTA)
  3639.                 {
  3640.                     GangZoneShowForAll(Z_DOCK, 0x0000FF7D);
  3641.                     SendClientMessageToAll(-1, "Delta Force has captured Ocean Docks!");
  3642.                     return 0;
  3643.                 }
  3644.                 else if(gTeam == TEAM_SPETSNAZ)
  3645.                 {
  3646.                     GangZoneShowForAll(Z_DOCK, 0xFF00008E);
  3647.                     SendClientMessageToAll(-1, "Spetsnaz has captured Ocean Docks!");
  3648.                     return 0;
  3649.                 }
  3650.                 else if(gTeam == TEAM_GIGN)
  3651.                 {
  3652.                     GangZoneShowForAll(Z_DOCK, 0x00FF007D);
  3653.                     SendClientMessageToAll(-1, "GIGN has captured Ocean Docks!");
  3654.                     return 0;
  3655.                 }
  3656.                 else if(gTeam == TEAM_IA)
  3657.                 {
  3658.                     GangZoneShowForAll(Z_DOCK, 0x00FFFF55);
  3659.                     SendClientMessageToAll(-1, "Italian Army has captured Ocean Docks!");
  3660.                     return 0;
  3661.                 }
  3662.                 else if(gTeam == TEAM_JSDF)
  3663.                 {
  3664.                     GangZoneShowForAll(Z_DOCK, 0xFF840055);
  3665.                     SendClientMessageToAll(-1, "Japan Self Defense Forces has captured Ocean Docks!");
  3666.                 }
  3667.             }
  3668.         }
  3669.     }
  3670.     return 1;
  3671. }
  3672.  
  3673. forward SaveIn(filename[],text[]);
  3674. public SaveIn(filename[],text[])
  3675. {
  3676.     new File:file;
  3677.     new filepath[256];
  3678.     new string[256];
  3679.  
  3680.     format(filepath,sizeof(filepath),"MWFFA/Logs/%s.txt",filename);
  3681.     file = fopen(filepath,io_append);
  3682.  
  3683.     format(string, sizeof(string),"%s",text);
  3684.     fwrite(file,string);
  3685.     fclose(file);
  3686.     return 1;
  3687. }
  3688.  
  3689. stock MessageToAdmins(color,const string[])
  3690. {
  3691.     for(new i = 0; i < MAX_PLAYERS; i++)
  3692.     {
  3693.         if(IsPlayerConnected(i) == 1)
  3694.         {
  3695.             if(PlayerInfo[i][Admin] >= 1)
  3696.             {
  3697.                 SendClientMessage(i, color, string);
  3698.             }
  3699.         }
  3700.     }
  3701.     return 1;
  3702. }
  3703.  
  3704. stock MessageToVIPs(color,const string[])
  3705. {
  3706.     for(new i = 0; i < MAX_PLAYERS; i++)
  3707.     {
  3708.         if(IsPlayerConnected(i) == 1)
  3709.         {
  3710.             if(PlayerInfo[i][Rank] >= 1)
  3711.             {
  3712.                 SendClientMessage(i, color, string);
  3713.             }
  3714.         }
  3715.     }
  3716.     return 1;
  3717. }
  3718.  
  3719. //Random Messages
  3720. forward RM();
  3721. public RM()
  3722. {
  3723.     new rand;
  3724.     rand = random(7);
  3725.  
  3726.     if(rand == 1) return SendClientMessageToAll(COLOR_GREEN, "*** Have you spotted a hacker? Use /report to report them!");
  3727.     if(rand == 2) return SendClientMessageToAll(COLOR_GREEN, "*** If you haven't visited our forums, visit now at www.mwffasamp.tk");
  3728.     if(rand == 3) return SendClientMessageToAll(COLOR_GREEN, "*** Make sure to meet the owners, [MW]CaptainPrice[DF] and [DF]Tactical.");
  3729.     if(rand == 4) return SendClientMessageToAll(COLOR_GREEN, "*** Donate today and recieve plenty of features! See the forums for more details.");
  3730.     if(rand == 5) return SendClientMessageToAll(COLOR_GREEN, "*** Do you want to be an admin on MWFFA? Then once you meet the requirements, you can apply on the forums!");
  3731.     if(rand == 6) return SendClientMessageToAll(COLOR_GREEN, "*** Read /help or /commands if you need help on the server!");
  3732.     if(rand == 7) return SendClientMessageToAll(COLOR_GREEN, "*** Have you visit our communities site? Visit at www.TacticalGaming.createaforum.com");
  3733.     return 1;
  3734. }
  3735.  
  3736. //Increase XP
  3737. stock IncreasePlayerXp(playerid, xpam)
  3738. {
  3739.     PlayerInfo[playerid][Xp] += xpam;
  3740.     SetPlayerScore(playerid, GetPlayerScore(playerid) + xpam);
  3741.     return 1;
  3742. }
  3743.  
  3744.  
  3745.  
  3746. stock IsNumeric(string[])
  3747. {
  3748.     for (new i = 0, j = strlen(string);
  3749.     i < j; i++)
  3750.     {
  3751.     if (string[i] > '9' || string[i] < '0')
  3752.     return 0;
  3753.     }
  3754.     return 1;
  3755. }
  3756.  
  3757. GetVehicleModelIDFromName(vname[])
  3758. {
  3759.     for(new i = 0; i < 211; i++)
  3760.     {
  3761.     if ( strfind(VehicleNames[i], vname, true) != -1 )
  3762.     return i + 400;
  3763.     }
  3764.     return -1;
  3765. }
  3766.  
  3767. stock SendCommandToAdmins(playerid,command[])
  3768. {
  3769.     new string[128];
  3770.     GetPlayerName(playerid,string,sizeof(string));
  3771.     format(string,sizeof(string),"(ACMD) '%s' (Level: %d) | Command: %s",string,PlayerInfo[playerid][Admin],command);
  3772.     return MessageToAdmins(COLOR_BLUE,string);
  3773. }
  3774.  
  3775. //Load Data
  3776. forward LoadUser_data(playerid,name[],value[]);
  3777. public LoadUser_data(playerid,name[],value[])
  3778. {
  3779.     INI_Int("Password",PlayerInfo[playerid][Password]);
  3780.     INI_Int("Money",PlayerInfo[playerid][Cash]);
  3781.     INI_Int("Kills",PlayerInfo[playerid][Kills]);
  3782.     INI_Int("Deaths",PlayerInfo[playerid][Deaths]);
  3783.     INI_Int("Admin",PlayerInfo[playerid][Admin]);
  3784.     INI_Int("Operator",PlayerInfo[playerid][Operator]);
  3785.     INI_Int("Rank",PlayerInfo[playerid][Rank]);
  3786.     INI_Int("XP",PlayerInfo[playerid][Xp]);
  3787.     INI_Int("Score",PlayerInfo[playerid][Score]);
  3788.     return 1;
  3789. }
  3790.  
  3791. stock CreateVehicleForPlayer(playerid, vehicleid)
  3792. {
  3793.     new Float:X, Float:Y, Float:Z;
  3794.     GetPlayerPos(playerid, X, Y, Z);
  3795.     new Float:Angle;
  3796.     GetPlayerFacingAngle(playerid, Angle);
  3797.     new veh2;
  3798.  
  3799.     veh2 = CreateVehicle(vehicleid, X, Y, Z, Angle, random(126), random(126), 99999999999999999999);
  3800.     PutPlayerInVehicle(playerid, veh2, 1);
  3801.     return 1;
  3802. }
Advertisement
Add Comment
Please, Sign In to add comment