Advertisement
Faisal_khan

GM

Mar 26th, 2012
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 141.22 KB | None | 0 0
  1. #include <a_samp>
  2. #include <dutils>
  3. #include <dudb>
  4. #include <properties>
  5. #include <zones>
  6. #include <core>
  7. #include <float>
  8. #include <streamer>
  9. //#tryinclude <angdist>
  10. #include <zcmd>
  11.  
  12. #pragma tabsize 0
  13. //==================================DEFINES===============================================//
  14. #define USERFILE "Users/%s.ini"
  15. #define WEAPON_TYPE_NONE    (0)
  16. #define WEAPON_TYPE_HEAVY   (1)
  17. #define WEAPON_TYPE_LIGHT   (2)
  18. #define WEAPON_TYPE_MELEE   (3)
  19. #define SetPlayerHoldingObject(%1,%2,%3,%4,%5,%6,%7,%8,%9) SetPlayerAttachedObject(%1,MAX_PLAYER_ATTACHED_OBJECTS-1,%2,%3,%4,%5,%6,%7,%8,%9)
  20. #define StopPlayerHoldingObject(%1)
  21. #define Called; 0
  22. #define Calling; 1
  23. #define Free 2
  24. #define Talking 3
  25. #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
  26. //Tazer
  27. #define SECONDS 10
  28. #define TAZE_MS 400
  29. #define IsNotCop(%0) ((GetPlayerSkin(%0) < 280 && GetPlayerSkin(%0) > 288))
  30. //RoadBlock
  31. #define MAX_ROADBLOCKS 50
  32. #define MAX_SPIKESTRIPS 50
  33. //HorseBet
  34. #define ORANGE 0xF97804FF
  35. #define TimerTextDrawLocX 547
  36. #define TimerTextDrawLocY 2
  37. #define TimeOfHorseRaceHours 1
  38. #define TimeOfHorseRaceMinutes 20
  39. #define CashLowerBounds 100
  40. #define CashHigherBounds 50000
  41. #define RealMilisecondsPerIGMinute 2000
  42. //----------------------------COLORS---------------------------------//
  43.     #define COLOR_GREY          0xAFAFAFAA
  44.     #define COLOR_GREEN         0x33AA33AA
  45.     #define COLOR_BRIGHTRED     0xFF0000AA
  46.     #define COLOR_YELLOW        0xFFFF00AA
  47.     #define COLOR_PINK          0xFF66FFAA
  48.     #define COLOR_BLUE          0x3A47DEFF
  49.     #define COLOR_TAN           0xBDB76BAA
  50.     #define COLOR_PURPLE        0x800080AA
  51.     #define COLOR_WHITE         0xFFFFFFAA
  52.     #define COLOR_LIGHTBLUE     0x33CCFFAA
  53.     #define COLOR_ORANGE        0xFF9900AA
  54.     #define COLOR_INDIGO        0x4B00B0AA
  55.     #define COLOR_BLACK         0x00000000
  56.     #define COLOR_DARKGREY      0x696969FF
  57.     #define COLOR_RED           0xFF0000AA
  58.     #define PULA                0xFF0000AA
  59.     #define SERVER_COLOR        0x85F600AA
  60. //================================TEAM DEFINES===========================================//
  61. #define STAT        1
  62. #define SWAT        2
  63. #define ARMY        3
  64. #define POLICE      4
  65. #define CIVILIAN    5
  66. #define MECHANIC    6
  67. #define PARAMEDIC   7
  68. #define HITMAN      8
  69. #define COLOR_STAT          COLOR_ORANGE
  70. #define COLOR_SWAT          COLOR_LIGHTBLUE
  71. #define COLOR_ARMY          COLOR_TAN
  72. #define COLOR_POLICE        COLOR_BLUE
  73. #define COLOR_CIVILIAN      COLOR_WHITE
  74. #define COLOR_MECHANIC      COLOR_GREY
  75. #define COLOR_PARAMEDIC     COLOR_INDIGO
  76. #define COLOR_HITMAN        COLOR_WHITE
  77. new gTeam[MAX_PLAYERS];
  78. //============================DECLARATION===========================================================//
  79. forward SetPlayerRandomSpawn(playerid);
  80. new bool:Spawned[MAX_PLAYERS];
  81. #define IsPlayerSpawned(%1) Spawned[%1]
  82.  
  83.  
  84.  
  85.  
  86. /*native SendClientMessageToAdmins(const str[]);
  87. native Announce(const str[]);
  88. native SendRadioMessageToCops(const str[]);
  89. native SendRadioMessageToMedics(const str[]);
  90. native SendRadioMessageToHitmen(const str[]);
  91. native GivePlayerScore(playerid, score);
  92. native GivePlayerWantedLevel(playerid, level);
  93. native IsPlayerSpawned(playerid);
  94. native GetPlayerBankCash(playerid);
  95. native SetPlayerBankCash(playerid, cash);
  96. native GetPlayerAdminLevel(playerid);
  97. native SetPlayerAdminLevel(playerid, level);
  98. native GetPlayerRobbingSkill(playerid);
  99. native SetPlayerRobbingSkill(playerid, skill);
  100. native GetPlayerTerrorSkill(playerid);
  101. native SetPlayerTerrorSkill(playerid, skill);
  102. native GetPlayerWarnings(playerid);
  103. native SetPlayerWarnings(playerid, warns);
  104. native SetPlayerJailed(playerid, bool);
  105. native GetPlayerC4Amount(playerid);
  106. native SetPlayerC4Amount(playerid, amount);
  107. native GetPlayerDrugs(playerid);
  108. native SetPlayerDrugs(playerid, amount);
  109. native IsPlayerJailed(playerid);
  110. native IsPlayerBarOwner(playerid);*/
  111. forward SetupPlayerForClassSelection(playerid);
  112. forward PayDay(playerid);
  113. forward ForumP();
  114. forward ScoreTimer(playerid);
  115. forward Wank(playerid);
  116. forward IsNumeric(const string[]);
  117. forward SetPlayerRandomSpawn(playerid);
  118. forward CluckinJob(playerid);
  119. forward WellSTimer(playerid);
  120. forward BurgerTimer(playerid);
  121. forward Unfreeze(playerid);
  122. forward OnPlayerTazePlayer(playerid);
  123. forward CheckStatus();
  124. forward AntiTK();
  125. forward TimeUpdate();
  126. forward WantedLevel();
  127. forward Float:GetDistanceBetweenPlayers(p1, p2);
  128. forward ShowCarListMenu(playerid);
  129. forward Unjail();
  130. forward ResetParamedicWeapons();
  131. forward DriverSalary();
  132. forward SafeSetPlayerPos(playerid, Float:x, Float:y, Float:z);
  133. //Taze
  134. forward Unfreeze(playerid);
  135. forward OnPlayerTazePlayer(playerid);
  136. //RoadBlock
  137. forward SafeSetPlayerPos(playerid, Float:x, Float:y, Float:z);
  138. //HorseBet
  139. forward GameTimeTimer();
  140. //CUFF
  141. forward HandCuffs();
  142. forward CuffedPlayers();
  143. //===============================NEW===================================================================//
  144. //Tow
  145. new TowTruckers=0;
  146. new IsTowTrucker[MAX_PLAYERS];
  147. //CUFF
  148. new Cuffed[MAX_PLAYERS];
  149. //
  150. new Gate;
  151. new OldWeapon[MAX_PLAYERS];
  152. new HoldingWeapon[MAX_PLAYERS];
  153. //ANIM
  154. new food[200];
  155. new phone[200];
  156. new SKIN1[200];
  157. new water[200];
  158. new iswanking[MAX_PLAYERS];
  159. new accept[200];
  160. new gPlayerUsingLoopingAnim[MAX_PLAYERS];
  161. new gPlayerAnimLibsPreloaded[MAX_PLAYERS];
  162. new Text:txtAnimHelper;
  163. //BELT
  164. new Belt[MAX_PLAYERS];
  165. //HorseBet
  166. new Text:Horse1, Text:Horse2, Text:Horse3, Text:Horse4, Text:BG1, Text:BG2, Text:Start, Text:Finish, Text:Start2, Text:Finish2, HorseCD, Text:CDTextDraw, Text:HorseNum1, Text:HorseNum2, Text:HorseNum3, Text:HorseNum4, HorseAnimCount;
  167. new Float:HorsePosX1, Float:HorsePosX2, Float:HorsePosX3, Float:HorsePosX4, HorseStop;
  168. new Text:TimeTD, timestring[12];
  169. new MoneyBet[MAX_PLAYERS], BetOnHorse[MAX_PLAYERS], RaceStarted, Watching[MAX_PLAYERS], Prepared, Horsemsg;
  170. static ServerMinutes;
  171. static ServerHours;
  172. new Text:himessage;
  173.  
  174. #pragma unused Prepared
  175. //=========================================================================//
  176. //4player
  177. new HasHit[MAX_PLAYERS];
  178. new Working[MAX_PLAYERS];
  179. enum AInfo
  180. {
  181.     aCreated,
  182.     Float:aX,
  183.     Float:aY,
  184.     Float:aZ,
  185.     Float:arX,
  186.     Float:arY,
  187.     Float:arZ,
  188.     aObject,
  189. };
  190. ////Spikes////
  191. enum sInfo
  192. {
  193.     sCreated,
  194.     Float:sX,
  195.     Float:sY,
  196.     Float:sZ,
  197.     sObject,
  198. };
  199. new SpikeInfo[MAX_SPIKESTRIPS][sInfo];
  200. //Prison
  201. new Float:PrisonSpawn[][4] =
  202. {
  203. {198.6401,161.5331,1003.0300,181.3124},
  204. {193.4779,175.5881,1003.0234,6.5961},
  205. {197.7083,174.6549,1003.0234,0.0787}
  206. };
  207. new PrisonTime[MAX_PLAYERS];
  208. //=========================LASER======================================//
  209. enum
  210.     laserEnum
  211.     {
  212.         weaponID,
  213.         boneID,
  214.         bool: otherHand,
  215.         Float: offsetX,
  216.         Float: offsetY,
  217.         Float: offsetZ,
  218.         Float: offsetRX,
  219.         Float: offsetRY,
  220.         Float: offsetRZ
  221.     }
  222. ;
  223.  
  224. new
  225.     laserInfo[][laserEnum] =
  226.     {
  227.         { 22, 5, true, 0.187340, 0.015917, -0.057638, 340.143676, 10.604498, 357.264099 }, // Colt - Left Hand
  228.         { 22, 6, false, 0.138292, 0.031857, 0.055681, 359.982330, 351.791290, 4.232601 }, // Colt - Right Hand
  229.         { 23, 6, false, 0.194578, 0.030797, 0.067954, 97.293785, 5.856139, 8.047094 }, // Silenced 9mm - Right Hand
  230.         { 24, 6, false, 0.225628, 0.012624, 0.041430, 88.122680, 358.624816, 357.632476 }, // Desert Eagle - Right Hand
  231.         { 25, 6, false, 0.619094, -0.036739, 0.119916, 88.122680, 353.569702, 7.581643 }, // Shotgun - Right Hand
  232.         { 26, 5, true, 0.461135, 0.045601, -0.091401, 88.122680, 0.911102, 353.850646 }, // Sawn-Off - Left Hand
  233.         { 26, 6, false, 0.423630, 0.020521, 0.092188, 88.122680, 357.721069, 8.099684 }, // Sawn-Off - Right Hand
  234.         { 27, 6, false, 0.518392, -0.012077, 0.151976, 88.122680, 353.501159, 9.759855 }, // Combat-Shotgun - Right Hand
  235.         { 28, 5, true, 0.105462, 0.033941, -0.110598, 88.122680, 6.013936, 355.386962 }, // Micro SMG - Left Hand
  236.         { 28, 6, false, 0.080636, 0.014181, 0.116485, 88.122680, 354.266937, 5.568217 }, // Micro SMG - Right Hand
  237.         { 29, 6, false, 0.283109, 0.001564, 0.203133, 74.662376, 349.331451, 4.575532 }, // MP5 - Right Hand
  238.         { 30, 6, false, 0.385107, -0.008430, 0.149767, 76.325996, 355.539947, 4.789192 }, // AK47 - Right Hand
  239.         { 31, 6, false, 0.514316, -0.024671, 0.139118, 76.325996, 355.539947, 3.384325 } // M4 - Right Hand
  240.     }
  241. ;
  242. //=====================================================================================================//
  243.  
  244. //-------------------------------------------------
  245. main()
  246. {
  247.     print("\n-----------------------------------------");
  248.     print("--------San Fierro Cops 'n' Robbers--------");
  249.     print("-----------A RolePlay Gamemode-------------");
  250.     print("Scripting done By Faisal_khan & Ahemad_khan");
  251.     print("----Mapping done by thefatshizms team\n----");
  252.     print("--------Server Owned by thefatshizms-------");
  253.     print("\n-----------------------------------------");
  254. }
  255.  
  256. //=====================================================================================================//
  257. public OnGameModeInit()
  258. {
  259.     SetGameModeText("RolePlay");
  260.     ShowPlayerMarkers(1);
  261.     ShowNameTags(1);
  262.     EnableStuntBonusForAll(1);
  263. //HorseBet
  264. SetTimer("GameTimeTimer", RealMilisecondsPerIGMinute, 1);
  265.     TimeTD = TextDrawCreate(TimerTextDrawLocX, TimerTextDrawLocY, " ");
  266.     TextDrawAlignment(TimeTD,0);
  267.     TextDrawBackgroundColor(TimeTD,0x000000ff);
  268.     TextDrawFont(TimeTD,3);
  269.     TextDrawLetterSize(TimeTD,0.6,2.6);
  270.     TextDrawColor(TimeTD,0xffffffff);
  271.     TextDrawSetOutline(TimeTD,1);
  272.     TextDrawSetProportional(TimeTD,1);
  273.     TextDrawSetShadow(TimeTD,1);
  274.     RaceStarted = 0;
  275.     Prepared = 0;
  276.     Horsemsg = 1;
  277. //Tazer
  278.     for(new i = 0; i < MAX_PLAYERS; i++)
  279.     {
  280.         if(IsPlayerConnected(i))
  281.             SetPVarInt(i, "TazeTimer", SetTimerEx("OnPlayerTazePlayer", TAZE_MS, true, "i", i));
  282.     }
  283. //CUFF
  284.     SetTimer("CuffedPlayers", 1000, true);
  285. //===========================================================================================================//
  286.     txtAnimHelper = TextDrawCreate(610.0, 400.0,
  287.     "~r~~k~~PED_SPRINT~ ~w~to stop the animation");
  288.     TextDrawUseBox(txtAnimHelper, 0);
  289.     TextDrawFont(txtAnimHelper, 2);
  290.     TextDrawSetShadow(txtAnimHelper,0); // no shadow
  291.     TextDrawSetOutline(txtAnimHelper,1); // thickness 1
  292.     TextDrawBackgroundColor(txtAnimHelper,0x000000FF);
  293.     TextDrawColor(txtAnimHelper,0xFFFFFFFF);
  294.     TextDrawAlignment(txtAnimHelper,3); // align right
  295. //============================================================================================================//
  296.  
  297. //=====================================SKINS=========================================================//
  298.     AddPlayerClass(165,-2237.7124,2353.5083,4.9804,134.5635,0,0,0,0,0,0);//STAT
  299.     AddPlayerClass(166,-2237.7124,2353.5083,4.9804,134.5635,0,0,0,0,0,0);//STAT
  300.     AddPlayerClass(285,-993.0158,-700.1477,32.0078,5.8923,0,0,0,0,0,0);//SWAT
  301.     AddPlayerClass(287,-1345.5194,500.1661,18.2344,10.9961,0,0,0,0,0,0);//Army
  302.     AddPlayerClass(265,-1598.2743,731.5563,-4.9063,10.5301,0,0,0,0,0,0);//Police
  303.     AddPlayerClass(266,-1598.2743,731.5563,-4.9063,10.5301,0,0,0,0,0,0);//Police
  304.     AddPlayerClass(267,-1598.2743,731.5563,-4.9063,10.5301,0,0,0,0,0,0);//Police
  305.     AddPlayerClass(280,-1598.2743,731.5563,-4.9063,10.5301,0,0,0,0,0,0);//Police
  306.     AddPlayerClass(281,-1598.2743,731.5563,-4.9063,10.5301,0,0,0,0,0,0);//Police
  307.     AddPlayerClass(282,-1598.2743,731.5563,-4.9063,10.5301,0,0,0,0,0,0);//Police
  308.     AddPlayerClass(283,-1598.2743,731.5563,-4.9063,10.5301,0,0,0,0,0,0);//Police
  309.     AddPlayerClass(284,-1598.2743,731.5563,-4.9063,10.5301,0,0,0,0,0,0);//Police
  310.     AddPlayerClass(288,-1598.2743,731.5563,-4.9063,10.5301,0,0,0,0,0,0);//Police
  311.     AddPlayerClass(0,-2079.6611,-482.9718,38.7344,180.8663,0,0,0,0,0,0);//Civilian
  312.     AddPlayerClass(1,-2718.9888,-318.4344,7.8438,55.5373,0,0,0,0,0,0);//Civilian
  313.     AddPlayerClass(2,-2765.9897,375.4386,6.3347,278.5965,0,0,0,0,0,0);//Civilian
  314.     AddPlayerClass(7,-2767.3179,788.7258,52.7813,262.3263,0,0,0,0,0,0);//Civilian
  315.     AddPlayerClass(9,-2442.7800,752.9677,35.1719,179.2369,0,0,0,0,0,0);//Civilian
  316.     AddPlayerClass(10,-2359.2136,1006.7867,50.6953,87.5064,0,0,0,0,0,0);//Civilian
  317.     AddPlayerClass(11,-1725.3872,1356.5693,7.1799,107.8884,0,0,0,0,0,0);//Civilian
  318.     AddPlayerClass(13,-1985.3896,665.8715,46.5683,275.6404,0,0,0,0,0,0);//Civilian
  319.     AddPlayerClass(14,-2383.1177,-584.4406,132.1172,90.4442,0,0,0,0,0,0);//Civilian
  320.     AddPlayerClass(19,-1989.2987,1118.1178,54.4688,272.2214,0,0,0,0,0,0);//Civilian
  321.     AddPlayerClass(21,-1989.2987,1118.1178,54.4688,272.2214,0,0,0,0,0,0);//Civilian
  322.     AddPlayerClass(50,-2030.6611,156.5619,28.8359,272.7437,0,0,0,0,0,0);//Mechanic
  323.     AddPlayerClass(276,-2651.2454,609.7889,14.4531,191.8591,0,0,0,0,0,0);//Medic
  324. //==============================PICKUPS=================================================//
  325. //=========================================Properties===========================================//
  326.     AddProperty("Royal Casino", 2088.49, 1450.36, 10.82, 15000, 10000, 500);
  327.     AddProperty("Coin-Laundry", 1937.30, 2301.27, 10.82, 40000, 20000, 5000);
  328.     AddProperty("Sphinx", 2178.33, 1285.05, 10.82, 100000, 50000, 25000);
  329.     AddProperty("Ganton Bridge", -2672.28, 1280.70, 55.94, 2000000, 1000000, 500000);
  330.     AddProperty("Pyramid", 2323.75, 1283.34, 97.50, 1000000, 500000, 250000);
  331.     AddProperty("4-Dragons Casino", 2024.44, 1007.89, 10.82, 50000, 50000, 25000);
  332.     AddProperty("Wang Cars", -1951.43, 305.84, 41.04, 150000, 100000, 55000);
  333.     AddProperty("Desert Gas Producer Station", 152.59, 1427.03, 10.59, 300000, 250000, 200000);
  334. //=========================================TIMERS====================================//
  335.     SetTimer("ScoreTimer",1000,true);
  336.     SetTimer("ForumP",120000,true);
  337.     SetTimer("PayDay",900000,true);
  338.     SetTimer("PlayerInArea",1000, 1);
  339. //==================================VEHCILES=========================================================//
  340.     AddStaticVehicle(451,2040.0520,1319.2799,10.3779,183.2439,16,16);
  341.     AddStaticVehicle(429,2040.5247,1359.2783,10.3516,177.1306,13,13);
  342.     AddStaticVehicle(421,2110.4102,1398.3672,10.7552,359.5964,13,13);
  343.     AddStaticVehicle(411,2074.9624,1479.2120,10.3990,359.6861,64,64);
  344.     AddStaticVehicle(477,2075.6038,1666.9750,10.4252,359.7507,94,94);
  345.     AddStaticVehicle(541,2119.5845,1938.5969,10.2967,181.9064,22,22);
  346.     AddStaticVehicle(541,1843.7881,1216.0122,10.4556,270.8793,60,1);
  347.     AddStaticVehicle(402,1944.1003,1344.7717,8.9411,0.8168,30,30);
  348.     AddStaticVehicle(402,1679.2278,1316.6287,10.6520,180.4150,90,90);
  349.     AddStaticVehicle(415,1685.4872,1751.9667,10.5990,268.1183,25,1);
  350.     AddStaticVehicle(411,2034.5016,1912.5874,11.9048,0.2909,123,1);
  351.     AddStaticVehicle(411,2172.1682,1988.8643,10.5474,89.9151,116,1);
  352.     AddStaticVehicle(429,2245.5759,2042.4166,10.5000,270.7350,14,14);
  353.     AddStaticVehicle(477,2361.1538,1993.9761,10.4260,178.3929,101,1);
  354.     AddStaticVehicle(550,2221.9946,1998.7787,9.6815,92.6188,53,53);
  355.     AddStaticVehicle(558,2243.3833,1952.4221,14.9761,359.4796,116,1);
  356.     AddStaticVehicle(587,2276.7085,1938.7263,31.5046,359.2321,40,1);
  357.     AddStaticVehicle(587,2602.7769,1853.0667,10.5468,91.4813,43,1);
  358.     AddStaticVehicle(603,2610.7600,1694.2588,10.6585,89.3303,69,1);
  359.     AddStaticVehicle(587,2635.2419,1075.7726,10.5472,89.9571,53,1);
  360.     AddStaticVehicle(437,2577.2354,1038.8063,10.4777,181.7069,35,1);
  361.     AddStaticVehicle(535,2039.1257,1545.0879,10.3481,359.6690,123,1);
  362.     AddStaticVehicle(535,2009.8782,2411.7524,10.5828,178.9618,66,1);
  363.     AddStaticVehicle(429,2010.0841,2489.5510,10.5003,268.7720,1,2);
  364.     AddStaticVehicle(415,2076.4033,2468.7947,10.5923,359.9186,36,1);
  365.     AddStaticVehicle(487,2093.2754,2414.9421,74.7556,89.0247,26,57);
  366.     AddStaticVehicle(506,2352.9026,2577.9768,10.5201,0.4091,7,7);
  367.     AddStaticVehicle(506,2166.6963,2741.0413,10.5245,89.7816,52,52);
  368.     AddStaticVehicle(411,1960.9989,2754.9072,10.5473,200.4316,112,1);
  369.     AddStaticVehicle(429,1919.5863,2760.7595,10.5079,100.0753,2,1);
  370.     AddStaticVehicle(415,1673.8038,2693.8044,10.5912,359.7903,40,1);
  371.     AddStaticVehicle(402,1591.0482,2746.3982,10.6519,172.5125,30,30);
  372.     AddStaticVehicle(603,1580.4537,2838.2886,10.6614,181.4573,75,77);
  373.     AddStaticVehicle(550,1555.2734,2750.5261,10.6388,91.7773,62,62);
  374.     AddStaticVehicle(535,1455.9305,2878.5288,10.5837,181.0987,118,1);
  375.     AddStaticVehicle(477,1537.8425,2578.0525,10.5662,0.0650,121,1);
  376.     AddStaticVehicle(451,1433.1594,2607.3762,10.3781,88.0013,16,16);
  377.     AddStaticVehicle(603,2223.5898,1288.1464,10.5104,182.0297,18,1);
  378.     AddStaticVehicle(558,2451.6707,1207.1179,10.4510,179.8960,24,1);
  379.     AddStaticVehicle(550,2461.7253,1357.9705,10.6389,180.2927,62,62);
  380.     AddStaticVehicle(558,2461.8162,1629.2268,10.4496,181.4625,117,1);
  381.     AddStaticVehicle(477,2395.7554,1658.9591,10.5740,359.7374,0,1);
  382.     AddStaticVehicle(404,1553.3696,1020.2884,10.5532,270.6825,119,50);
  383.     AddStaticVehicle(400,1380.8304,1159.1782,10.9128,355.7117,123,1);
  384.     AddStaticVehicle(418,1383.4630,1035.0420,10.9131,91.2515,117,227);
  385.     AddStaticVehicle(404,1445.4526,974.2831,10.5534,1.6213,109,100);
  386.     AddStaticVehicle(400,1704.2365,940.1490,10.9127,91.9048,113,1);
  387.     AddStaticVehicle(404,1658.5463,1028.5432,10.5533,359.8419,101,101);
  388.     AddStaticVehicle(581,1677.6628,1040.1930,10.4136,178.7038,58,1);
  389.     AddStaticVehicle(581,1383.6959,1042.2114,10.4121,85.7269,66,1);
  390.     AddStaticVehicle(581,1064.2332,1215.4158,10.4157,177.2942,72,1);
  391.     AddStaticVehicle(581,1111.4536,1788.3893,10.4158,92.4627,72,1);
  392.     AddStaticVehicle(522,953.2818,1806.1392,8.2188,235.0706,3,8);
  393.     AddStaticVehicle(522,995.5328,1886.6055,10.5359,90.1048,3,8);
  394.     AddStaticVehicle(521,993.7083,2267.4133,11.0315,1.5610,75,13);
  395.     AddStaticVehicle(535,1439.5662,1999.9822,10.5843,0.4194,66,1);
  396.     AddStaticVehicle(522,1430.2354,1999.0144,10.3896,352.0951,6,25);
  397.     AddStaticVehicle(522,2156.3540,2188.6572,10.2414,22.6504,6,25);
  398.     AddStaticVehicle(598,2277.6846,2477.1096,10.5652,180.1090,0,1);
  399.     AddStaticVehicle(598,2268.9888,2443.1697,10.5662,181.8062,0,1);
  400.     AddStaticVehicle(598,2256.2891,2458.5110,10.5680,358.7335,0,1);
  401.     AddStaticVehicle(598,2251.6921,2477.0205,10.5671,179.5244,0,1);
  402.     AddStaticVehicle(523,2294.7305,2441.2651,10.3860,9.3764,0,0);
  403.     AddStaticVehicle(523,2290.7268,2441.3323,10.3944,16.4594,0,0);
  404.     AddStaticVehicle(523,2295.5503,2455.9656,2.8444,272.6913,0,0);
  405.     AddStaticVehicle(522,2476.7900,2532.2222,21.4416,0.5081,8,82);
  406.     AddStaticVehicle(522,2580.5320,2267.9595,10.3917,271.2372,8,82);
  407.     AddStaticVehicle(522,2814.4331,2364.6641,10.3907,89.6752,36,105);
  408.     AddStaticVehicle(535,2827.4143,2345.6953,10.5768,270.0668,97,1);
  409.     AddStaticVehicle(521,1670.1089,1297.8322,10.3864,359.4936,87,118);
  410.     AddStaticVehicle(487,1614.7153,1548.7513,11.2749,347.1516,58,8);
  411.     AddStaticVehicle(487,1647.7902,1538.9934,11.2433,51.8071,0,8);
  412.     AddStaticVehicle(487,1608.3851,1630.7268,11.2840,174.5517,58,8);
  413.     AddStaticVehicle(476,1283.0006,1324.8849,9.5332,275.0468,7,6); //11.5332
  414.     AddStaticVehicle(476,1283.5107,1361.3171,9.5382,271.1684,1,6); //11.5382
  415.     AddStaticVehicle(476,1283.6847,1386.5137,11.5300,272.1003,89,91);
  416.     AddStaticVehicle(476,1288.0499,1403.6605,11.5295,243.5028,119,117);
  417.     AddStaticVehicle(415,1319.1038,1279.1791,10.5931,0.9661,62,1);
  418.     AddStaticVehicle(521,1710.5763,1805.9275,10.3911,176.5028,92,3);
  419.     AddStaticVehicle(521,2805.1650,2027.0028,10.3920,357.5978,92,3);
  420.     AddStaticVehicle(535,2822.3628,2240.3594,10.5812,89.7540,123,1);
  421.     AddStaticVehicle(521,2876.8013,2326.8418,10.3914,267.8946,115,118);
  422.     AddStaticVehicle(429,2842.0554,2637.0105,10.5000,182.2949,1,3);
  423.     AddStaticVehicle(549,2494.4214,2813.9348,10.5172,316.9462,72,39);
  424.     AddStaticVehicle(549,2327.6484,2787.7327,10.5174,179.5639,75,39);
  425.     AddStaticVehicle(549,2142.6970,2806.6758,10.5176,89.8970,79,39);
  426.     AddStaticVehicle(521,2139.7012,2799.2114,10.3917,229.6327,25,118);
  427.     AddStaticVehicle(521,2104.9446,2658.1331,10.3834,82.2700,36,0);
  428.     AddStaticVehicle(521,1914.2322,2148.2590,10.3906,267.7297,36,0);
  429.     AddStaticVehicle(549,1904.7527,2157.4312,10.5175,183.7728,83,36);
  430.     AddStaticVehicle(549,1532.6139,2258.0173,10.5176,359.1516,84,36);
  431.     AddStaticVehicle(521,1534.3204,2202.8970,10.3644,4.9108,118,118);
  432.     AddStaticVehicle(549,1613.1553,2200.2664,10.5176,89.6204,89,35);
  433.     AddStaticVehicle(400,1552.1292,2341.7854,10.9126,274.0815,101,1);
  434.     AddStaticVehicle(404,1637.6285,2329.8774,10.5538,89.6408,101,101);
  435.     AddStaticVehicle(400,1357.4165,2259.7158,10.9126,269.5567,62,1);
  436.     AddStaticVehicle(411,1281.7458,2571.6719,10.5472,270.6128,106,1);
  437.     AddStaticVehicle(522,1305.5295,2528.3076,10.3955,88.7249,3,8);
  438.     AddStaticVehicle(521,993.9020,2159.4194,10.3905,88.8805,74,74);
  439.     AddStaticVehicle(415,1512.7134,787.6931,10.5921,359.5796,75,1);
  440.     AddStaticVehicle(522,2299.5872,1469.7910,10.3815,258.4984,3,8);
  441.     AddStaticVehicle(522,2133.6428,1012.8537,10.3789,87.1290,3,8);
  442.     //Monday 13th Additions ~ Jax
  443.     AddStaticVehicle(415,2266.7336,648.4756,11.0053,177.8517,0,1); //
  444.     AddStaticVehicle(461,2404.6636,647.9255,10.7919,183.7688,53,1); //
  445.     AddStaticVehicle(506,2628.1047,746.8704,10.5246,352.7574,3,3); //
  446.     AddStaticVehicle(549,2817.6445,928.3469,10.4470,359.5235,72,39); //
  447.     // --- uncommented
  448.     AddStaticVehicle(562,1919.8829,947.1886,10.4715,359.4453,11,1); //
  449.     AddStaticVehicle(562,1881.6346,1006.7653,10.4783,86.9967,11,1); //
  450.     AddStaticVehicle(562,2038.1044,1006.4022,10.4040,179.2641,11,1); //
  451.     AddStaticVehicle(562,2038.1614,1014.8566,10.4057,179.8665,11,1); //
  452.     AddStaticVehicle(562,2038.0966,1026.7987,10.4040,180.6107,11,1); //
  453.     // --- uncommented end
  454.     //Uber haxed
  455.     AddStaticVehicle(422,9.1065,1165.5066,19.5855,2.1281,101,25); //
  456.     AddStaticVehicle(463,19.8059,1163.7103,19.1504,346.3326,11,11); //
  457.     AddStaticVehicle(463,12.5740,1232.2848,18.8822,121.8670,22,22); //
  458.     AddStaticVehicle(434,-110.8473,1133.7113,19.7091,359.7000,2,2); //hotknife
  459.     AddStaticVehicle(586,69.4633,1217.0189,18.3304,158.9345,10,1); //
  460.     AddStaticVehicle(586,-199.4185,1223.0405,19.2624,176.7001,25,1); //
  461.     AddStaticVehicle(605,-340.2598,1177.4846,19.5565,182.6176,43,8); // SMASHED UP CAR
  462.     AddStaticVehicle(476,325.4121,2538.5999,17.5184,181.2964,71,77); //
  463.     AddStaticVehicle(476,291.0975,2540.0410,17.5276,182.7206,7,6); //
  464.     AddStaticVehicle(576,384.2365,2602.1763,16.0926,192.4858,72,1); //
  465.     AddStaticVehicle(586,423.8012,2541.6870,15.9708,338.2426,10,1); //
  466.     AddStaticVehicle(586,-244.0047,2724.5439,62.2077,51.5825,10,1); //
  467.     AddStaticVehicle(586,-311.1414,2659.4329,62.4513,310.9601,27,1); //
  468.     //uber haxed x 50
  469.     AddStaticVehicle(406,547.4633,843.0204,-39.8406,285.2948,1,1); // DUMPER
  470.     AddStaticVehicle(406,625.1979,828.9873,-41.4497,71.3360,1,1); // DUMPER
  471.     AddStaticVehicle(486,680.7997,919.0510,-40.4735,105.9145,1,1); // DOZER
  472.     AddStaticVehicle(486,674.3994,927.7518,-40.6087,128.6116,1,1); // DOZER
  473.     AddStaticVehicle(543,596.8064,866.2578,-43.2617,186.8359,67,8); //
  474.     AddStaticVehicle(543,835.0838,836.8370,11.8739,14.8920,8,90); //
  475.     AddStaticVehicle(549,843.1893,838.8093,12.5177,18.2348,79,39); //
  476.     AddStaticVehicle(605,319.3803,740.2404,6.7814,271.2593,8,90); // SMASHED UP CAR
  477.     AddStaticVehicle(400,-235.9767,1045.8623,19.8158,180.0806,75,1); //
  478.     AddStaticVehicle(599,-211.5940,998.9857,19.8437,265.4935,0,1); //
  479.     AddStaticVehicle(422,-304.0620,1024.1111,19.5714,94.1812,96,25); //
  480.     AddStaticVehicle(588,-290.2229,1317.0276,54.1871,81.7529,1,1); //
  481.     AddStaticVehicle(424,-330.2399,1514.3022,75.1388,179.1514,2,2); //BF INJECT
  482.     AddStaticVehicle(451,-290.3145,1567.1534,75.0654,133.1694,61,61); //
  483.     AddStaticVehicle(470,280.4914,1945.6143,17.6317,310.3278,43,0); //
  484.     AddStaticVehicle(470,272.2862,1949.4713,17.6367,285.9714,43,0); //
  485.     AddStaticVehicle(470,271.6122,1961.2386,17.6373,251.9081,43,0); //
  486.     AddStaticVehicle(470,279.8705,1966.2362,17.6436,228.4709,43,0); //
  487.     AddStaticVehicle(548,292.2317,1923.6440,19.2898,235.3379,1,1); // CARGOBOB
  488.     AddStaticVehicle(433,277.6437,1985.7559,18.0772,270.4079,43,0); //
  489.     AddStaticVehicle(433,277.4477,1994.8329,18.0773,267.7378,43,0); //
  490.     AddStaticVehicle(432,275.9634,2024.3629,17.6516,270.6823,43,0); // Tank (can cause scary shit to go down)
  491.     AddStaticVehicle(568,-441.3438,2215.7026,42.2489,191.7953,41,29); //
  492.     AddStaticVehicle(568,-422.2956,2225.2612,42.2465,0.0616,41,29); //
  493.     AddStaticVehicle(568,-371.7973,2234.5527,42.3497,285.9481,41,29); //
  494.     AddStaticVehicle(568,-360.1159,2203.4272,42.3039,113.6446,41,29); //
  495.     AddStaticVehicle(468,-660.7385,2315.2642,138.3866,358.7643,6,6); //
  496.     AddStaticVehicle(460,-1029.2648,2237.2217,42.2679,260.5732,1,3); //
  497.     //Uber haxed x 100
  498.     // --- uncommented
  499.     AddStaticVehicle(419,95.0568,1056.5530,13.4068,192.1461,13,76); //
  500.     AddStaticVehicle(429,114.7416,1048.3517,13.2890,174.9752,1,2); //
  501.     AddStaticVehicle(466,124.2480,1075.1835,13.3512,174.5334,78,76); // exceeds model limit
  502.     AddStaticVehicle(411,-290.0065,1759.4958,42.4154,89.7571,116,1); //
  503.     // --- uncommented end
  504.     AddStaticVehicle(522,-302.5649,1777.7349,42.2514,238.5039,6,25); //
  505.     AddStaticVehicle(522,-302.9650,1776.1152,42.2588,239.9874,8,82); //
  506.     AddStaticVehicle(533,-301.0404,1750.8517,42.3966,268.7585,75,1); //
  507.     AddStaticVehicle(535,-866.1774,1557.2700,23.8319,269.3263,31,1); //
  508.     AddStaticVehicle(550,-799.3062,1518.1556,26.7488,88.5295,53,53); //
  509.     AddStaticVehicle(521,-749.9730,1589.8435,26.5311,125.6508,92,3); //
  510.     AddStaticVehicle(522,-867.8612,1544.5282,22.5419,296.0923,3,3); //
  511.     AddStaticVehicle(554,-904.2978,1553.8269,25.9229,266.6985,34,30); //
  512.     AddStaticVehicle(521,-944.2642,1424.1603,29.6783,148.5582,92,3); //
  513.     // Exceeds model limit, cars need model adjustments
  514.     // --- uncommented
  515.     AddStaticVehicle(429,-237.7157,2594.8804,62.3828,178.6802,1,2); //
  516.     AddStaticVehicle(431,-160.5815,2693.7185,62.2031,89.4133,47,74); //
  517.     AddStaticVehicle(463,-196.3012,2774.4395,61.4775,303.8402,22,22); //
  518.     AddStaticVehicle(483,-204.1827,2608.7368,62.6956,179.9914,1,5); //
  519.     AddStaticVehicle(490,-295.4756,2674.9141,62.7434,359.3378,0,0); //
  520.     AddStaticVehicle(500,-301.5293,2687.6013,62.7723,87.9509,28,119); //
  521.     AddStaticVehicle(500,-301.6699,2680.3293,62.7393,89.7925,13,119); //
  522.     AddStaticVehicle(519,-1341.1079,-254.3787,15.0701,321.6338,1,1); //
  523.     AddStaticVehicle(519,-1371.1775,-232.3967,15.0676,315.6091,1,1); //
  524.     AddStaticVehicle(552,-1396.2028,-196.8298,13.8434,286.2720,56,56); //
  525.     AddStaticVehicle(552,-1312.4509,-284.4692,13.8417,354.3546,56,56); //
  526.     AddStaticVehicle(552,-1393.5995,-521.0770,13.8441,187.1324,56,56); //
  527.     AddStaticVehicle(513,-1355.6632,-488.9562,14.7157,191.2547,48,18); //
  528.     AddStaticVehicle(513,-1374.4580,-499.1462,14.7482,220.4057,54,34); //
  529.     AddStaticVehicle(553,-1197.8773,-489.6715,15.4841,0.4029,91,87); //
  530.     AddStaticVehicle(553,1852.9989,-2385.4009,14.8827,200.0707,102,119); //
  531.     AddStaticVehicle(583,1879.9594,-2349.1919,13.0875,11.0992,1,1); //
  532.     AddStaticVehicle(583,1620.9697,-2431.0752,13.0951,126.3341,1,1); //
  533.     AddStaticVehicle(583,1545.1564,-2409.2114,13.0953,23.5581,1,1); //
  534.     AddStaticVehicle(583,1656.3702,-2651.7913,13.0874,352.7619,1,1); //
  535.     AddStaticVehicle(519,1642.9850,-2425.2063,14.4744,159.8745,1,1); //
  536.     AddStaticVehicle(519,1734.1311,-2426.7563,14.4734,172.2036,1,1); //
  537.     // --- uncommented end
  538.     AddStaticVehicle(415,-680.9882,955.4495,11.9032,84.2754,36,1); //
  539.     AddStaticVehicle(460,-816.3951,2222.7375,43.0045,268.1861,1,3); //
  540.     AddStaticVehicle(460,-94.6885,455.4018,1.5719,250.5473,1,3); //
  541.     AddStaticVehicle(460,1624.5901,565.8568,1.7817,200.5292,1,3); //
  542.     AddStaticVehicle(460,1639.3567,572.2720,1.5311,206.6160,1,3); //
  543.     AddStaticVehicle(460,2293.4219,517.5514,1.7537,270.7889,1,3); //
  544.     AddStaticVehicle(460,2354.4690,518.5284,1.7450,270.2214,1,3); //
  545.     AddStaticVehicle(460,772.4293,2912.5579,1.0753,69.6706,1,3); //
  546.     // 22/4 UPDATE
  547.     AddStaticVehicle(560,2133.0769,1019.2366,10.5259,90.5265,9,39); //
  548.     AddStaticVehicle(560,2142.4023,1408.5675,10.5258,0.3660,17,1); //
  549.     AddStaticVehicle(560,2196.3340,1856.8469,10.5257,179.8070,21,1); //
  550.     AddStaticVehicle(560,2103.4146,2069.1514,10.5249,270.1451,33,0); //
  551.     AddStaticVehicle(560,2361.8042,2210.9951,10.3848,178.7366,37,0); //
  552.     AddStaticVehicle(560,-1993.2465,241.5329,34.8774,310.0117,41,29); //
  553.     AddStaticVehicle(559,-1989.3235,270.1447,34.8321,88.6822,58,8); //
  554.     AddStaticVehicle(559,-1946.2416,273.2482,35.1302,126.4200,60,1); //
  555.     AddStaticVehicle(558,-1956.8257,271.4941,35.0984,71.7499,24,1); //
  556.     AddStaticVehicle(562,-1952.8894,258.8604,40.7082,51.7172,17,1); //
  557.     AddStaticVehicle(411,-1949.8689,266.5759,40.7776,216.4882,112,1); //
  558.     AddStaticVehicle(429,-1988.0347,305.4242,34.8553,87.0725,2,1); //
  559.     AddStaticVehicle(559,-1657.6660,1213.6195,6.9062,282.6953,13,8); //
  560.     AddStaticVehicle(560,-1658.3722,1213.2236,13.3806,37.9052,52,39); //
  561.     AddStaticVehicle(558,-1660.8994,1210.7589,20.7875,317.6098,36,1); //
  562.     AddStaticVehicle(550,-1645.2401,1303.9883,6.8482,133.6013,7,7); //
  563.     AddStaticVehicle(460,-1333.1960,903.7660,1.5568,0.5095,46,32); //
  564.     // 25/4 UPDATE
  565.     AddStaticVehicle(411,113.8611,1068.6182,13.3395,177.1330,116,1); //
  566.     AddStaticVehicle(429,159.5199,1185.1160,14.7324,85.5769,1,2); //
  567.     AddStaticVehicle(411,612.4678,1694.4126,6.7192,302.5539,75,1); //
  568.     AddStaticVehicle(522,661.7609,1720.9894,6.5641,19.1231,6,25); //
  569.     AddStaticVehicle(522,660.0554,1719.1187,6.5642,12.7699,8,82); //
  570.     AddStaticVehicle(567,711.4207,1947.5208,5.4056,179.3810,90,96); //
  571.     AddStaticVehicle(567,1031.8435,1920.3726,11.3369,89.4978,97,96); //
  572.     AddStaticVehicle(567,1112.3754,1747.8737,10.6923,270.9278,102,114); //
  573.     AddStaticVehicle(567,1641.6802,1299.2113,10.6869,271.4891,97,96); //
  574.     AddStaticVehicle(567,2135.8757,1408.4512,10.6867,180.4562,90,96); //
  575.     AddStaticVehicle(567,2262.2639,1469.2202,14.9177,91.1919,99,81); //
  576.     AddStaticVehicle(567,2461.7380,1345.5385,10.6975,0.9317,114,1); //
  577.     AddStaticVehicle(567,2804.4365,1332.5348,10.6283,271.7682,88,64); //
  578.     AddStaticVehicle(560,2805.1685,1361.4004,10.4548,270.2340,17,1); //
  579.     AddStaticVehicle(506,2853.5378,1361.4677,10.5149,269.6648,7,7); //
  580.     AddStaticVehicle(567,2633.9832,2205.7061,10.6868,180.0076,93,64); //
  581.     AddStaticVehicle(567,2119.9751,2049.3127,10.5423,180.1963,93,64); //
  582.     AddStaticVehicle(567,2785.0261,-1835.0374,9.6874,226.9852,93,64); //
  583.     AddStaticVehicle(567,2787.8975,-1876.2583,9.6966,0.5804,99,81); //
  584.     AddStaticVehicle(411,2771.2993,-1841.5620,9.4870,20.7678,116,1); //
  585.     AddStaticVehicle(420,1713.9319,1467.8354,10.5219,342.8006,6,1); // taxi
  586.  
  587. //===================================OBJECTS=========================================================//
  588.     CreateObject(5130, -1333.6999511719, 479, 8.2299995422363, 0, 0, 226);
  589.     CreateObject(14596, -3355.1000976563, 946.09997558594, 10.699999809265, 0, 0, 0);
  590.     CreateObject(8841, -1243.3000488281, 456.70001220703, 9.5, 0, 0, 0);
  591.     CreateObject(2990, -1530.2998046875, 482.5, 10.10000038147, 0, 0, 178.74499511719);
  592.     CreateObject(17065, -1291.5, 444.60000610352, 10.5, 0, 0, 0);
  593.     CreateObject(1676, -1285.5999755859, 447.39999389648, 8, 0, 0, 0);
  594.     CreateObject(1676, -1297.5, 447.29998779297, 8.1000003814697, 0, 0, 0);
  595.     CreateObject(1676, -1297.6999511719, 439.60000610352, 8.1999998092651, 0, 0, 0);
  596.     CreateObject(1676, -1285.4000244141, 439.70001220703, 8.3000001907349, 0, 0, 0);
  597.     CreateObject(987, -2659.1999511719, 1305.9000244141, 6.0999999046326, 0, 0, 8);
  598.     CreateObject(987, -2647.8999023438, 1307.5999755859, 6.1999998092651, 0, 0, 30);
  599.     CreateObject(987, -2637.5, 1313.5999755859, 6.1999998092651, 0, 0, 38);
  600.     CreateObject(987, -2628.1000976563, 1321, 6.1999998092651, 0, 0, 46);
  601.     CreateObject(987, -2619.6999511719, 1329.5, 6.1999998092651, 0, 0, 46);
  602.     CreateObject(987, -2611.5, 1338.0999755859, 6.1999998092651, 0, 0, 42);
  603.     CreateObject(987, -2605.1000976563, 1343.9000244141, 6.1999998092651, 0, 0, 44);
  604.     CreateObject(980, -2592.3999023438, 1355.9000244141, 8.8000001907349, 0, 0, 223.99475097656);
  605.     CreateObject(987, -2588.6999511719, 1359.5999755859, 6.1999998092651, 0, 0, 42);
  606.     CreateObject(987, -2579.8000488281, 1367.5, 6.1999998092651, 0, 0, 38);
  607.     CreateObject(987, -2570.8000488281, 1374.6999511719, 6.1999998092651, 0, 0, 92);
  608.     CreateObject(987, -2571.3999023438, 1386.5999755859, 6.1999998092651, 0, 0, 90);
  609.     CreateObject(7377, -2730.3999023438, 1416.0999755859, 6.3000001907349, 0, 0, 0);
  610.     CreateObject(8147, -2722.2998046875, 1413.8994140625, 9.8000001907349, 0, 0, 0);
  611.     CreateObject(987, -2722.1000976563, 1340.9000244141, 6.1999998092651, 0, 0, 270);
  612.     CreateObject(987, -2721.6000976563, 1329.0999755859, 6.1999998092651, 0, 0, 266);
  613.     CreateObject(987, -2722.5, 1317.1999511719, 6.1999998092651, 0, 0, 310);
  614.     CreateObject(987, -2714.8999023438, 1307.9000244141, 6.0999999046326, 0, 0, 0);
  615.     CreateObject(2922, -2626.5, 1412.5, 6.9000000953674, 0, 0, 28);
  616.     CreateObject(2922, -2626.3999023438, 1412.5, 7.0999999046326, 0, 0, 0);
  617.     CreateObject(987, -2572, 1392.599609375, 6.6999998092651, 0, 0, 129.99597167969);
  618.     CreateObject(5822, -2656, 1336.4000244141, 10.89999961853, 0, 0, 186);
  619.     CreateObject(14596, -2708, 1337.69921875, 16.700000762939, 0, 0, 183.9990234375);
  620.     CreateObject(2634, -2703.1000976563, 1334.1999511719, 24.60000038147, 0, 0, 276);
  621.     CreateObject(3934, -2670.1000976563, 1342, 16, 0, 0, 0);
  622.     CreateObject(3934, -2670.3000488281, 1354.5999755859, 16, 0, 0, 0);
  623.     CreateObject(3934, -2693.5, 1342.6999511719, 16, 0, 0, 0);
  624.     CreateObject(3934, -2693.6999511719, 1356.0999755859, 16, 0, 0, 0);
  625.     CreateObject(9958, -1394.5, 521.7998046875, 2.7000000476837, 0, 0, 89.994018554688);
  626.     CreateObject(3115, -1456.6999511719, 501.29998779297, 16.889999389648, 0, 0, 0);
  627.     CreateObject(3114, -1414.5, 515.40002441406, 16.64999961853, 0, 0, 180);
  628.     CreateObject(2985, -1387, 498.20001220703, 20.299999237061, 0, 0, 132);
  629.     CreateObject(2985, -1321.5999755859, 498.89999389648, 20.299999237061, 0, 0, 47.995239257813);
  630.     CreateObject(3113, -1465.0999755859, 501.5, 1, 0, 0, 0);
  631.     CreateObject(1523, -1387, 495.29998779297, 2.2999999523163, 0, 0, 90);
  632.     CreateObject(1523, -1361.6999511719, 498.29998779297, 10.39999961853, 0, 0, 90);
  633.     CreateObject(1523, -1350.5, 498.29998779297, 10.5, 0, 0, 90);
  634.     CreateObject(1523, -1340.5, 497.39999389648, 10.5, 0, 0, 90);
  635.     CreateObject(1523, -1346, 501.39999389648, 10.5, 0, 0, 0);
  636.     CreateObject(1523, -1348.5, 499.39999389648, 17.5, 0, 0, 0);
  637.     CreateObject(14699, -1357.5999755859, 497.10000610352, 13.10000038147, 0, 0, 0);
  638.     CreateObject(14699, -1341.8000488281, 489, 13.5, 0, 0, 0);
  639.     CreateObject(14699, -1350.5999755859, 501.10000610352, 13.60000038147, 0, 0, 0);
  640.     CreateObject(14699, -1367.576171875, 497.6376953125, 11.907123565674, 0, 0, 0);
  641.     CreateObject(14749, -1365.0999755859, 497.70001220703, 15.199999809265, 0, 0, 0);
  642.     CreateObject(1775, -1349.6999511719, 492.29998779297, 11.300000190735, 0, 0, 88);
  643.     CreateObject(11327, -1334.5, 487.39999389648, 12.699999809265, 0, 0, 90);
  644.     CreateObject(2985, -1525.0999755859, 491.10000610352, 9.6000003814697, 0, 0, 134);
  645.     CreateObject(970, -1520.5, 491.79998779297, 10.39999961853, 0, 0, 0);
  646.     CreateObject(970, -1523.6999511719, 491.79998779297, 10.39999961853, 0, 0, 0);
  647.     CreateObject(970, -1525.8000488281, 489.70001220703, 10.39999961853, 0, 0, 270);
  648.     CreateObject(970, -1525.8000488281, 485.60000610352, 10.39999961853, 0, 0, 270);
  649.     CreateObject(970, -1525.8000488281, 483.70001220703, 10.39999961853, 0, 0, 270);
  650.     CreateObject(970, -1518.4000244141, 483.79998779297, 10.39999961853, 0, 0, 270);
  651.     CreateObject(970, -1518.4000244141, 487.89999389648, 10.39999961853, 0, 0, 270);
  652.     CreateObject(970, -1518.5, 489.79998779297, 10.39999961853, 0, 0, 270);
  653.     CreateObject(2944, -1297.5999755859, 491.29998779297, 11.680000305176, 0, 0, 0);
  654.     CreateObject(14749, -1287.7333984375, 490.7880859375, 11.676517486572, 0, 0, 0);
  655.     CreateObject(14699, -1287.7333984375, 491.2421875, 8.5589942932129, 0, 0, 0);
  656.     CreateObject(987, -2339.8000488281, 2342.1000976563, 4, 0, 0, 270);
  657.     CreateObject(987, -2339.1000976563, 2354, 4.1999998092651, 0, 0, 270);
  658.     CreateObject(987, -2334.3999023438, 2364.5, 4.5999999046326, 0, 0, 250);
  659.     CreateObject(987, -2327.5, 2373.8999023438, 4.8000001907349, 0, 0, 236);
  660.     CreateObject(987, -2323, 2380.3999023438, 4.9000000953674, 0, 0, 236);
  661.     CreateObject(971, -2319.8000488281, 2385.3000488281, 7.5999999046326, 0, 0, 234);
  662.     CreateObject(968, -2327, 2381.1999511719, 4.9000000953674, 0, 0, 58);
  663.     CreateObject(987, -2322.3000488281, 2381.6000976563, 4.8000001907349, 0, 0, 236);
  664.     CreateObject(987, -2310.1999511719, 2398.3999023438, 4.9000000953674, 0, 0, 234);
  665.     CreateObject(987, -2303.1999511719, 2406.8000488281, 4.9000000953674, 0, 0, 232);
  666.     CreateObject(987, -2296.5, 2416.6000976563, 3.9000000953674, 0, 0, 240);
  667.     CreateObject(987, -2291.1000976563, 2425.8999023438, 3.9000000953674, 0, 0, 242);
  668.     CreateObject(987, -2291.5, 2437.1999511719, 3.9000000953674, 0, 0, 274);
  669.     CreateObject(987, -2340, 2330, 4.1999998092651, 0, 0, 180);
  670.     CreateObject(3279, -2323.6000976563, 2371.1000976563, 4.4000000953674, 0, 0, 326);
  671.     CreateObject(3279, -2309.6000976563, 2393.6999511719, 4.9000000953674, 0, 0, 54);
  672.     CreateObject(3279, -2229, 2295.6000976563, 4.4000000953674, 0, 0, 266);
  673.     CreateObject(3279, -2289.5, 2341.6000976563, 4.5999999046326, 0, 0, 0);
  674.     CreateObject(3279, -2238.1000976563, 2466.3000488281, 4, 0, 0, 224);
  675.     CreateObject(2985, -2234.3999023438, 2489.8999023438, 0, 0, 0, 0);
  676.     CreateObject(3267, -2238.5, 2466.3000488281, 20.10000038147, 0, 0, 300);
  677.     CreateObject(3267, -2228.8999023438, 2295.5, 20.5, 0, 0, 220);
  678.     CreateObject(3267, -2289.1000976563, 2342, 20.700000762939, 0, 0, 270);
  679.     CreateObject(3267, -2309.8999023438, 2393.6999511719, 21, 0, 0, 0);
  680.     CreateObject(3267, -2323.3999023438, 2371.5, 20.5, 0, 0, 120);
  681.     CreateObject(3279, -2337.3000488281, 2295.8000488281, 4, 0, 0, 90);
  682.     CreateObject(3279, -2294.6000976563, 2228.8000488281, 4, 0, 0, 90);
  683.     CreateObject(3267, -2337.3000488281, 2296, 20.10000038147, 0, 0, 0);
  684.     CreateObject(3267, -2294.3999023438, 2229.3000488281, 20.10000038147, 0, 0, 180);
  685.     CreateObject(16782, -2189.6000976563, 2415.8999023438, 6, 0, 0, 314);
  686.     CreateObject(987, -2578.8999023438, 1402, 6.5999999046326, 0, 0, 160);
  687.     CreateObject(987, -2589.5, 1406.0999755859, 6.6999998092651, 0, 0, 140);
  688.     CreateObject(987, -2597.6000976563, 1413.4000244141, 6.5999999046326, 0, 0, 110);
  689.     CreateObject(987, -2601.1000976563, 1423.9000244141, 6.6999998092651, 0, 0, 100);
  690.     CreateObject(987, -2602.8999023438, 1435, 6.5999999046326, 0, 0, 100);
  691.     CreateObject(987, -2604.6999511719, 1446.3000488281, 6.6999998092651, 0, 0, 140);
  692.     CreateObject(987, -2613.8000488281, 1454.0999755859, 6.8000001907349, 0, 0, 174);
  693.     CreateObject(987, -2625.6000976563, 1455.5, 6.6999998092651, 0, 0, 152);
  694.     CreateObject(987, -2635.8000488281, 1460.9000244141, 6.8000001907349, 0, 0, 120);
  695.     CreateObject(987, -2641.1000976563, 1470.8000488281, 6.3000001907349, 0, 0, 112);
  696.     CreateObject(987, -2645.6000976563, 1481.9000244141, 6.8000001907349, 0, 0, 130);
  697.     CreateObject(987, -2653.3000488281, 1491.0999755859, 6.8000001907349, 0, 0, 178);
  698.     CreateObject(987, -2665.1000976563, 1492, 6.5, 0, 0, 180);
  699.     CreateObject(987, -2677, 1492, 6.5, 0, 0, 180);
  700.     CreateObject(987, -2689, 1491.9000244141, 6.5999999046326, 0, 0, 180);
  701.     CreateObject(987, -2700.8999023438, 1491.9000244141, 6.5999999046326, 0, 0, 175.25);
  702.     CreateObject(987, -2721.8000488281, 1486.6999511719, 6.0999999046326, 0, 0, 38);
  703.     CreateObject(986, -1043.3000488281, -587.90002441406, 32.900001525879, 0, 0, 356);
  704.     CreateObject(985, -1035.3994140625, -588.2998046875, 32.900001525879, 0, 0, 358);
  705.     CreateObject(6522, -1185.9000244141, -1001.5999755859, 136.80000305176, 0, 0, 0);
  706.     CreateObject(16776, -1070.69921875, -970.69921875, 128.19999694824, 0, 0, 297.998046875);
  707.     CreateObject(10406, -1048.0999755859, -976.79998779297, 128.69999694824, 0, 0, 274);
  708.     CreateObject(10396, -1027.5999755859, -956.29998779297, 130.19999694824, 0, 0, 94);
  709.     CreateObject(3279, -983.29998779297, -682.59997558594, 31, 0, 0, 180);
  710.     CreateObject(3279, -1020.799987793, -593.29998779297, 31, 0, 0, 268);
  711.     CreateObject(3279, -1042.4000244141, -684.59997558594, 31, 0, 0, 90);
  712.     CreateObject(3884, -983.40002441406, -682.09997558594, 47.099998474121, 0, 0, 0);
  713.     CreateObject(3884, -1020.5999755859, -593.70001220703, 47.099998474121, 0, 0, 160);
  714.     CreateObject(3884, -1042.0999755859, -684.09997558594, 47.099998474121, 0, 0, 30);
  715.     CreateObject(3268, -1052.0999755859, -654.29998779297, 31, 0, 0, 180);
  716.     CreateObject(1252, -1042.6999511719, -640.29998779297, 31.299999237061, 0, 0, 322);
  717.     CreateObject(1337, -1059.1999511719, -641.29998779297, 33.299999237061, 0, 0, 0);
  718.     CreateObject(3066, -1060.8000488281, -647.59997558594, 32.200000762939, 0, 0, 0);
  719.     CreateObject(10757, -1044.6999511719, -654.79998779297, 42, 0, 0, 90.995727539063);
  720.     CreateObject(14582, -1056.6999511719, -663.59997558594, 34.5, 0, 0, 0);
  721.     CreateObject(1595, -1080.099609375, -612.8994140625, 54.799999237061, 0, 0, 294.99938964844);
  722.     CreateObject(1595, -1080.5, -630.5, 54.799999237061, 0, 0, 20.999389648438);
  723.     CreateObject(1775, -1049.5, -640, 32.099998474121, 0, 0, 0);
  724.     CreateObject(1595, -1113.5, -628.70001220703, 54.799999237061, 0, 0, 238.99938964844);
  725.     CreateObject(2453, -1049.5, -640, 33.599998474121, 0, 0, 0);
  726.     CreateObject(1595, -1112.4000244141, -611.79998779297, 54.799999237061, 0, 0, 144.99658203125);
  727.     CreateObject(1776, -1047.9000244141, -640, 32.099998474121, 0, 0, 0);
  728.     CreateObject(1682, -1072.0999755859, -654.40002441406, 64.699996948242, 0, 0, 328);
  729.     CreateObject(3077, -1056.6999511719, -640.20001220703, 31, 0, 0, 0);
  730.     CreateObject(16782, -1050.6999511719, -640, 35, 0, 0, 270);
  731.     CreateObject(10675, -1094, -680.59997558594, 34.700000762939, 0, 0, 0);
  732.     CreateObject(2985, -1041.6999511719, -664, 31.10000038147, 0, 0, 42);
  733.     CreateObject(2921, -1042.0999755859, -643.79998779297, 38, 0, 0, 0);
  734.     CreateObject(3378, -1028.9000244141, -689.90002441406, 32.200000762939, 0, 0, 87.994506835938);
  735.     CreateObject(2892, -1046.1962890625, -666.609375, 30.734172821045, 0, 0, 0);
  736.     CreateObject(9819, -1043.5999755859, -663.59997558594, 32, 0, 0, 0);
  737.     CreateObject(968, -1040.3000488281, -459.70001220703, 34.900001525879, 0, 0, 24);
  738.     CreateObject(1237, -1039.8000488281, -459.60000610352, 34.900001525879, 0, 0, 0);
  739.     CreateObject(1237, -1048, -463.39999389648, 34.400001525879, 0, 0, 0);
  740.     CreateObject(8882, -1071.9000244141, -551.59997558594, 61.700000762939, 0, 0, 0);
  741. //=======================================================ADMIN ISLAND==============================================================//
  742.     AddStaticVehicleEx(405,3068.99658203,-536.71380615,6.12775135,184.01049805,-1,-1,15); //Sentinel
  743.     AddStaticVehicleEx(405,3074.97558594,-536.41522217,6.12775135,184.01000977,-1,-1,15); //Sentinel
  744.     AddStaticVehicleEx(405,3087.92651367,-535.06140137,6.12775135,184.01000977,-1,-1,15); //Sentinel
  745.     AddStaticVehicleEx(405,3093.91308594,-534.64257812,6.12775135,184.01000977,-1,-1,15); //Sentinel
  746.     AddStaticVehicleEx(487,3116.40722656,-533.73760986,9.48386478,93.69982910,-1,-1,15); //Maverick
  747.     AddStaticVehicleEx(452,3162.41845703,-601.68231201,0.00000000,3.96997070,3,3,15); //Speeder
  748.     AddStaticVehicleEx(460,3170.36230469,-610.66992188,1.82499886,274.28466797,1,1,15); //Skimmer
  749.     AddStaticVehicleEx(446,3169.04003906,-600.62841797,0.00000000,4.71997070,16,16,15); //Squalo
  750.     AddStaticVehicleEx(405,3133.55541992,-618.79925537,6.37164164,94.23486328,-1,-1,15); //Sentinel
  751.     AddStaticVehicleEx(405,3134.24609375,-624.57727051,6.37069321,94.22973633,-1,-1,15); //Sentinel
  752.     CreateObject(18450,2945.22045898,-589.94952393,9.96504307,0.00000000,0.00000000,3.96997070); //object(cs_roadbridge04) (1)
  753.     CreateObject(3578,2906.35571289,-603.83935547,10.46470356,0.00000000,0.00000000,274.37536621); //object(dockbarr1_la) (1)
  754.     CreateObject(3578,2904.51489258,-581.88623047,10.46470356,0.00000000,0.00000000,274.37255859); //object(dockbarr1_la) (2)
  755.     CreateObject(18450,3024.77832031,-584.44433594,7.17698669,0.00000000,4.00000000,3.96606445); //object(cs_roadbridge04) (2)
  756.     CreateObject(6959,3085.13964844,-579.83886719,4.75899982,0.00000000,0.00000000,3.96606445); //object(vegasnbball1) (1)
  757.     CreateObject(3749,3066.66210938,-581.57623291,10.41116714,0.00000000,0.00000000,273.99023438); //object(clubgate01_lax) (1)
  758.     CreateObject(6959,3087.89379883,-619.72735596,4.75899982,0.00000000,0.00000000,3.96606445); //object(vegasnbball1) (2)
  759.     CreateObject(11245,3062.16796875,-589.55413818,12.96256351,0.00000000,0.00000000,184.60058594); //object(sfsefirehseflag) (1)
  760.     CreateObject(11245,3062.91284180,-574.00311279,12.32015324,0.00000000,0.00000000,184.59777832); //object(sfsefirehseflag) (2)
  761.     CreateObject(6959,3067.30566406,-621.17382812,-15.91787529,0.00000000,90.00000000,3.96606445); //object(vegasnbball1) (3)
  762.     CreateObject(6959,3064.56005859,-581.28997803,-15.91787529,0.00000000,90.00000000,3.96606445); //object(vegasnbball1) (4)
  763.     CreateObject(6959,3082.38281250,-539.94921875,4.75899982,0.00000000,0.00000000,3.96606445); //object(vegasnbball1) (5)
  764.     CreateObject(6959,3061.80078125,-541.42578125,-15.91787529,0.00000000,90.00000000,3.96606445); //object(vegasnbball1) (6)
  765.     CreateObject(987,3063.27929688,-560.25976562,4.72774982,0.00000000,0.00000000,274.00451660); //object(elecfence_bar) (1)
  766.     CreateObject(987,3062.42431641,-548.30517578,4.72774887,0.00000000,0.00000000,274.00451660); //object(elecfence_bar) (2)
  767.     CreateObject(987,3061.58715820,-536.34130859,4.72774982,0.00000000,0.00000000,274.00451660); //object(elecfence_bar) (3)
  768.     CreateObject(987,3060.75048828,-524.38562012,4.72774982,0.00000000,0.00000000,274.00451660); //object(elecfence_bar) (4)
  769.     CreateObject(17563,3098.47436523,-494.18936157,3.40145445,0.00000000,0.00000000,274.24023438); //object(wattspark1_lae2) (1)
  770.     CreateObject(16113,3056.05957031,-508.06158447,-3.50000000,0.00000000,0.00000000,131.64001465); //object(des_rockgp2_03) (1)
  771.     CreateObject(16113,3069.25732422,-471.53079224,-1.50000000,0.00000000,0.00000000,49.89318848); //object(des_rockgp2_03) (2)
  772.     CreateObject(16113,3100.23632812,-469.58120728,-2.25000000,0.00000000,0.00000000,31.80401611); //object(des_rockgp2_03) (3)
  773.     CreateObject(7916,3084.61889648,-483.39654541,4.73923683,0.00000000,0.00000000,354.04504395); //object(vegaswaterfall02) (1)
  774.     CreateObject(2780,3109.42626953,-487.14193726,-0.87979555,0.00000000,0.00000000,0.00000000); //object(cj_smoke_mach) (1)
  775.     CreateObject(2780,3110.98681641,-489.53201294,-0.13688707,0.00000000,0.00000000,0.00000000); //object(cj_smoke_mach) (2)
  776.     CreateObject(2780,3105.42163086,-485.99597168,-0.37979460,0.00000000,0.00000000,0.00000000); //object(cj_smoke_mach) (3)
  777.     CreateObject(2780,3069.56030273,-489.89633179,1.08898735,0.00000000,0.00000000,0.00000000); //object(cj_smoke_mach) (4)
  778.     CreateObject(2780,3072.98950195,-489.49221802,1.18462324,0.00000000,0.00000000,0.00000000); //object(cj_smoke_mach) (5)
  779.     CreateObject(3525,3065.01269531,-588.82812500,7.24729729,0.00000000,0.00000000,270.26916504); //object(exbrtorch01) (1)
  780.     CreateObject(3525,3064.01855469,-575.27868652,7.24729729,0.00000000,0.00000000,270.26916504); //object(exbrtorch01) (2)
  781.     CreateObject(16113,3138.78442383,-479.44403076,0.00000000,0.00000000,0.00000000,353.81469727); //object(des_rockgp2_03) (4)
  782.     CreateObject(16113,3143.94384766,-498.16125488,-2.00000000,0.00000000,0.00000000,313.92919922); //object(des_rockgp2_03) (5)
  783.     CreateObject(6959,3123.59863281,-537.04156494,4.67000008,0.00000000,0.23001099,3.96606445); //object(vegasnbball1) (5)
  784.     CreateObject(982,3125.09741211,-516.95422363,5.28032970,0.00000000,0.00000000,274.24023438); //object(fenceshit) (1)
  785.     CreateObject(982,3099.55126953,-518.86889648,5.28630400,0.00000000,0.00000000,274.23522949); //object(fenceshit) (2)
  786.     CreateObject(982,3074.04785156,-520.73956299,5.28630400,0.00000000,0.00000000,274.23522949); //object(fenceshit) (3)
  787.     CreateObject(3605,3116.56811523,-578.81365967,10.73336315,0.00000000,0.00000000,274.28515625); //object(bevman3_law2) (1)
  788.     CreateObject(3604,3071.35986328,-528.15338135,7.28624535,0.00000000,0.00000000,3.96997070); //object(bevmangar_law2) (1)
  789.     CreateObject(3604,3090.31542969,-526.80371094,7.28624535,0.00000000,0.00000000,3.96606445); //object(bevmangar_law2) (2)
  790.     CreateObject(9241,3118.69189453,-533.61102295,6.26575708,0.00000000,0.00000000,4.21997070); //object(copbits_sfn) (1)
  791.     CreateObject(6959,3126.36987305,-576.91094971,4.67000008,0.00000000,0.23001099,3.96606445); //object(vegasnbball1) (1)
  792.     CreateObject(6959,3129.10083008,-616.77923584,4.67000008,0.00000000,0.22521973,3.96606445); //object(vegasnbball1) (1)
  793.     CreateObject(6965,3084.51171875,-579.71765137,7.66521406,0.00000000,0.00000000,0.00000000); //object(venefountain02) (1)
  794.     CreateObject(870,3082.44287109,-578.27465820,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (1)
  795.     CreateObject(870,3083.97949219,-577.42401123,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (2)
  796.     CreateObject(870,3085.27905273,-577.41076660,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (3)
  797.     CreateObject(870,3082.69775391,-581.34039307,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (6)
  798.     CreateObject(870,3084.32861328,-581.83862305,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (7)
  799.     CreateObject(870,3085.46557617,-581.20080566,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (8)
  800.     CreateObject(870,3083.23217773,-577.58837891,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (10)
  801.     CreateObject(870,3085.40405273,-578.40344238,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (21)
  802.     CreateObject(870,3085.86669922,-580.51788330,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (23)
  803.     CreateObject(870,3086.32934570,-579.15661621,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (24)
  804.     CreateObject(870,3085.30029297,-577.54199219,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (25)
  805.     CreateObject(870,3082.19213867,-580.50158691,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (28)
  806.     CreateObject(870,3081.86743164,-579.79284668,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (29)
  807.     CreateObject(870,3082.15844727,-578.87774658,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (30)
  808.     CreateObject(870,3082.89184570,-577.90612793,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (31)
  809.     CreateObject(870,3084.45288086,-577.53796387,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (32)
  810.     CreateObject(870,3085.66040039,-577.77453613,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (33)
  811.     CreateObject(870,3086.11621094,-578.38159180,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (34)
  812.     CreateObject(870,3086.57348633,-579.03491211,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (35)
  813.     CreateObject(870,3084.57666016,-577.44573975,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (36)
  814.     CreateObject(870,3086.33984375,-580.34777832,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (37)
  815.     CreateObject(870,3086.50805664,-579.77502441,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (38)
  816.     CreateObject(870,3086.13793945,-580.78631592,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (39)
  817.     CreateObject(870,3085.12866211,-581.67364502,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (40)
  818.     CreateObject(870,3084.49145508,-582.07830811,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (41)
  819.     CreateObject(870,3083.97338867,-582.10644531,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (42)
  820.     CreateObject(870,3083.36279297,-582.02337646,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (43)
  821.     CreateObject(870,3082.81884766,-581.78051758,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (44)
  822.     CreateObject(870,3082.46191406,-581.50054932,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (45)
  823.     CreateObject(870,3082.05541992,-581.00732422,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (46)
  824.     CreateObject(870,3081.66430664,-580.36230469,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (47)
  825.     CreateObject(870,3083.60961914,-577.31219482,4.96987152,0.00000000,0.00000000,0.00000000); //object(veg_pflowers2wee) (48)
  826.     CreateObject(987,3065.45507812,-591.52893066,4.72774982,0.00000000,0.00000000,274.00451660); //object(elecfence_bar) (1)
  827.     CreateObject(987,3066.27465820,-603.48083496,4.72774982,0.00000000,0.00000000,274.00451660); //object(elecfence_bar) (1)
  828.     CreateObject(987,3067.13549805,-615.42083740,4.72774982,0.00000000,0.00000000,274.00451660); //object(elecfence_bar) (1)
  829.     CreateObject(987,3067.98974609,-627.35467529,4.72774982,0.00000000,0.00000000,274.00451660); //object(elecfence_bar) (1)
  830.     CreateObject(16113,3089.39404297,-644.73284912,-8.33999825,0.00000000,0.00000000,211.30554199); //object(des_rockgp2_03) (6)
  831.     CreateObject(16113,3122.22558594,-642.03204346,0.00000000,0.00000000,0.00000000,227.18542480); //object(des_rockgp2_03) (7)
  832.     CreateObject(16113,3136.66210938,-642.08789062,-0.86373138,0.00000000,0.00000000,231.14685059); //object(des_rockgp2_03) (8)
  833.     CreateObject(6959,3149.77221680,-615.36895752,-16.09287262,0.00000000,90.00000000,3.96606445); //object(vegasnbball1) (3)
  834.     CreateObject(6959,3147.00927734,-575.49438477,-16.11787224,0.00000000,90.00000000,3.96606445); //object(vegasnbball1) (3)
  835.     CreateObject(6959,3144.24707031,-535.68664551,-16.09287262,0.00000000,90.00000000,3.96606445); //object(vegasnbball1) (3)
  836.     CreateObject(7916,3055.18017578,-542.59564209,-1.00000024,0.00000000,0.00000000,274.80029297); //object(vegaswaterfall02) (3)
  837.     CreateObject(7916,3059.08422852,-607.25531006,-0.95000052,0.00000000,0.00000000,270.82568359); //object(vegaswaterfall02) (4)
  838.     CreateObject(987,3150.88818359,-634.40026855,4.57920313,0.00000000,0.00000000,94.02648926); //object(elecfence_bar) (1)
  839.     CreateObject(3361,3154.10278320,-607.94335938,2.47499990,0.00000000,0.00000000,3.96997070); //object(cxref_woodstair) (1)
  840.     CreateObject(987,3148.15966797,-595.18145752,4.55655670,0.00000000,0.00000000,94.03747559); //object(elecfence_bar) (1)
  841.     CreateObject(3406,3162.27807617,-607.38726807,-1.54999912,0.00000000,0.00000000,3.98498535); //object(cxref_woodjetty) (1)
  842.     CreateObject(3406,3171.02343750,-606.78222656,-1.54999912,0.00000000,0.00000000,3.98254395); //object(cxref_woodjetty) (2)
  843.     CreateObject(3406,3165.71850586,-602.29101562,-1.54999912,0.00000000,0.00000000,274.25268555); //object(cxref_woodjetty) (3)
  844.     CreateObject(987,3147.30468750,-583.21582031,4.55665588,0.00000000,0.00000000,94.03198242); //object(elecfence_bar) (1)
  845.     CreateObject(987,3146.46606445,-571.26007080,4.55669689,0.00000000,0.00000000,94.03747559); //object(elecfence_bar) (1)
  846.     CreateObject(987,3145.60302734,-559.29553223,4.55683136,0.00000000,0.00000000,94.03747559); //object(elecfence_bar) (1)
  847.     CreateObject(987,3144.77563477,-547.31665039,4.55679131,0.00000000,0.00000000,94.03747559); //object(elecfence_bar) (1)
  848.     CreateObject(987,3143.94628906,-535.35809326,4.55679178,0.00000000,0.00000000,94.03747559); //object(elecfence_bar) (1)
  849.     CreateObject(16113,3150.92480469,-613.33758545,-17.76999855,0.00000000,0.00000000,306.98168945); //object(des_rockgp2_03) (8)
  850.     CreateObject(16113,3149.11279297,-579.15484619,-18.26999855,0.00000000,0.00000000,304.99499512); //object(des_rockgp2_03) (8)
  851.     CreateObject(16113,3148.13574219,-569.06683350,-18.15999794,0.00000000,0.00000000,304.99145508); //object(des_rockgp2_03) (8)
  852.     CreateObject(16113,3148.00488281,-546.46093750,-18.37999725,0.00000000,0.00000000,304.99145508); //object(des_rockgp2_03) (8)
  853.     CreateObject(16113,3146.13012695,-537.88513184,-18.40999794,0.00000000,0.00000000,304.99145508); //object(des_rockgp2_03) (8)
  854.     CreateObject(11490,3089.45312500,-619.14129639,4.52774906,0.00000000,0.00000000,340.24072266); //object(des_ranch) (1)
  855.     CreateObject(11491,3085.72290039,-629.53082275,6.02775002,0.00000000,0.00000000,340.15509033); //object(des_ranchbits1) (2)
  856.     CreateObject(1712,3092.06030273,-623.13067627,6.03556156,0.00000000,0.00000000,250.42041016); //object(kb_couch05) (1)
  857.     CreateObject(15037,3088.32519531,-616.15185547,6.36751318,0.00000000,0.00000000,250.33020020); //object(med_dinning_2_sv) (1)
  858.     CreateObject(1255,3089.17578125,-630.58221436,6.60596418,0.00000000,0.00000000,250.58032227); //object(lounger) (1)
  859.     CreateObject(1255,3087.28979492,-629.88787842,6.60596418,0.00000000,0.00000000,250.57617188); //object(lounger) (2)
  860.     CreateObject(1255,3085.48999023,-629.18389893,6.60596418,0.00000000,0.00000000,250.57617188); //object(lounger) (3)
  861.     CreateObject(1255,3083.78002930,-628.54284668,6.60596418,0.00000000,0.00000000,250.57617188); //object(lounger) (4)
  862.     CreateObject(1255,3081.95751953,-627.82971191,6.60596418,0.00000000,0.00000000,250.57617188); //object(lounger) (5)
  863.     CreateObject(1646,3084.62768555,-623.84814453,6.37299156,0.00000000,0.00000000,0.00000000); //object(lounge_towel_up) (1)
  864.     CreateObject(1742,3084.09301758,-620.12768555,6.03556156,0.00000000,0.00000000,69.60009766); //object(med_bookshelf) (1)
  865.     CreateObject(1743,3084.86547852,-622.47003174,5.96056128,0.00000000,0.00000000,69.46487427); //object(med_cabinet_3) (1)
  866.     CreateObject(1755,3089.35400391,-620.43255615,6.03556156,0.00000000,0.00000000,300.18017578); //object(med_single_2) (1)
  867.     CreateObject(1755,3087.25903320,-620.60180664,6.03556156,0.00000000,0.00000000,11.95440674); //object(med_single_2) (2)
  868.     CreateObject(1814,3087.79418945,-622.35113525,6.03556156,0.00000000,0.00000000,0.00000000); //object(coffee_med_1) (1)
  869.     CreateObject(1755,3087.66674805,-623.37072754,6.03556156,0.00000000,0.00000000,147.51815796); //object(med_single_2) (3)
  870.     CreateObject(1755,3090.19091797,-622.53393555,6.03556156,0.00000000,0.00000000,217.30322266); //object(med_single_2) (4)
  871.     CreateObject(2025,3093.24316406,-616.27960205,6.03556156,0.00000000,0.00000000,338.07507324); //object(mrk_wrobe_tmp) (1)
  872.     CreateObject(3525,3087.00756836,-625.89471436,8.19341183,0.00000000,0.00000000,160.59924316); //object(exbrtorch01) (1)
  873.     CreateObject(3528,3091.56054688,-614.13323975,10.11717224,0.00000000,0.00000000,64.53997803); //object(vgsedragon) (1)
  874.     CreateObject(3604,3142.80517578,-621.07025146,7.22329330,0.00000000,0.00000000,273.92077637); //object(bevmangar_law2) (2)
  875.     CreateObject(3877,3101.58422852,-647.18212891,23.25254059,0.00000000,0.00000000,0.00000000); //object(sf_rooflite) (1)
  876.     CreateObject(3877,3149.28686523,-638.41784668,17.53135300,0.00000000,0.00000000,0.00000000); //object(sf_rooflite) (2)
  877.     CreateObject(3877,3146.10449219,-518.51605225,20.96157265,0.00000000,0.00000000,0.00000000); //object(sf_rooflite) (3)
  878.     CreateObject(3877,3071.50000000,-472.38720703,21.23105240,0.00000000,0.00000000,0.00000000); //object(sf_rooflite) (4)
  879.     CreateObject(983,3148.40087891,-598.23742676,5.24220419,0.00000000,0.00000000,4.45104980); //object(fenceshit3) (1)
  880.     CreateObject(983,3148.75659180,-603.00579834,5.24176550,0.00000000,0.00000000,3.71301270); //object(fenceshit3) (2)
  881.     CreateObject(7916,3155.15478516,-552.55041504,-0.75000000,0.00000000,0.00000000,83.77508545); //object(vegaswaterfall02) (2)
  882.     CreateObject(622,3152.59399414,-633.01165771,2.40970230,0.00000000,0.00000000,0.00000000); //object(veg_palm03) (1)
  883.     CreateObject(622,3148.47729492,-528.00000000,5.27313423,0.00000000,0.00000000,200.48046875); //object(veg_palm03) (2)
  884.     CreateObject(712,3101.88378906,-521.23004150,14.31896210,0.00000000,0.00000000,0.00000000); //object(vgs_palm03) (1)
  885.     CreateObject(712,3135.62182617,-555.65692139,14.19602013,0.00000000,0.00000000,0.00000000); //object(vgs_palm03) (2)
  886.     CreateObject(712,3089.53564453,-599.64544678,14.32710743,0.00000000,0.00000000,0.00000000); //object(vgs_palm03) (3)
  887.     CreateObject(712,3139.23413086,-595.79986572,14.19279480,0.00000000,0.00000000,0.00000000); //object(vgs_palm03) (4)
  888.     CreateObject(983,3149.44580078,-612.93096924,5.24246407,0.00000000,0.00000000,3.96997070); //object(fenceshit3) (3)
  889.     CreateObject(983,3149.90600586,-619.29254150,5.24140215,0.00000000,0.00000000,3.96606445); //object(fenceshit3) (4)
  890.     CreateObject(985,3063.86181641,-571.97137451,6.40274763,0.00000000,0.00000000,94.03747559); //gate 1
  891.     CreateObject(986,3065.25781250,-591.55303955,6.42100000,0.00000000,0.00000000,94.13995361); //gate 2
  892.     CreateObject(987,3156.50000000,-630.90002441,0.40000001,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  893.     CreateObject(987,3170.10009766,-630.90002441,0.00000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  894.     CreateObject(987,3182.00000000,-630.90002441,0.00000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  895.     CreateObject(987,3163.60009766,-630.40002441,0.00000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  896.     CreateObject(987,3154.00000000,-633.20001221,3.29999995,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  897.     CreateObject(987,3153.19995117,-572.00000000,0.00000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  898.     CreateObject(987,3169.50000000,-573.09997559,0.00000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  899.     CreateObject(987,3182.00000000,-573.40002441,0.00000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  900.     CreateObject(987,3192.00000000,-631.50000000,0.00000000,0.00000000,0.00000000,90.00000000); //object(elecfence_bar) (1)
  901.     CreateObject(987,3191.39990234,-598.59997559,0.00000000,0.00000000,0.00000000,90.00000000); //object(elecfence_bar) (1)
  902.     CreateObject(987,3191.10009766,-586.79998779,0.00000000,0.00000000,0.00000000,90.00000000); //object(elecfence_bar) (1)
  903.     CreateObject(987,3191.00000000,-584.59997559,0.00000000,0.00000000,0.00000000,90.00000000); //object(elecfence_bar) (1)
  904.     CreateObject(987,3192.80004883,-598.70001221,0.00000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  905.     CreateObject(987,3191.80004883,-620.40002441,0.00000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  906.     CreateObject(987,3204.00000000,-598.70001221,0.00000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  907.     CreateObject(987,3202.80004883,-620.90002441,0.00000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  908.     CreateObject(987,3163.10009766,-572.90002441,0.00000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  909.     CreateObject(987,3161.60009766,-572.70001221,0.00000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  910.     CreateObject(987,3161.69995117,-572.79998779,0.20000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  911.     CreateObject(987,3161.80004883,-572.90002441,0.30000001,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  912.     CreateObject(987,3161.89990234,-573.00000000,0.40000001,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  913.     CreateObject(987,3161.89990234,-573.00000000,0.10000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  914.     CreateObject(987,3162.00000000,-573.09997559,0.00000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  915.     CreateObject(987,3153.39990234,-572.09997559,0.00000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  916.     CreateObject(987,3153.50000000,-572.20001221,0.10000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  917.     CreateObject(987,3153.60009766,-572.20001221,0.20000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  918.     CreateObject(987,3153.69995117,-572.29998779,0.30000001,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  919.     CreateObject(987,3153.80004883,-572.40002441,0.30000001,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  920.     CreateObject(987,3153.89990234,-572.29998779,0.40000001,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  921.     CreateObject(987,3174.50000000,-572.79998779,0.00000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  922.     CreateObject(987,3187.69995117,-570.09997559,0.00000000,0.00000000,0.00000000,0.00000000); //object(elecfence_bar) (1)
  923.     Gate = CreateObject(18450,3024.77832031,-584.44433594,7.17698669,0.00000000,20.00000000,3.96606445); //object(cs_roadbridge04) (2)
  924.     himessage = TextDrawCreate(308, 267, "Hi, how are you?");
  925.     return 1;
  926. }
  927.  
  928. public OnPlayerConnect(playerid)
  929. {
  930.     new string[128], name[MAX_PLAYER_NAME];
  931.     Spawned[playerid] = false;
  932.     GetPlayerName(playerid,name,MAX_PLAYER_NAME);
  933.     format(string, sizeof(string),"%s[%d] has joined the server", name, playerid);
  934.     SendClientMessageToAll(SERVER_COLOR, string);
  935.     SetPlayerToTeamColor(playerid);
  936.     gPlayerUsingLoopingAnim[playerid] = 0;
  937.     gPlayerAnimLibsPreloaded[playerid] = 0;
  938.     Belt[playerid] = 0;
  939.     SetPVarInt(playerid, "TazeTimer", SetTimerEx("OnPlayerTazePlayer", TAZE_MS, true, "i", playerid));
  940.     Watching[playerid] = 0;
  941.     TextDrawShowForPlayer(playerid, TimeTD);
  942.     Cuffed[playerid] = 0;
  943.     return 1;
  944. }
  945.  
  946. public OnPlayerDisconnect(playerid, reason)
  947. {
  948.     Cuffed[playerid] = 0;
  949.     new string[64], name[MAX_PLAYER_NAME];
  950.     GetPlayerName(playerid,name,MAX_PLAYER_NAME);
  951.     switch(reason)
  952.     {
  953.         case 0: format(string,sizeof string,"%s[%d] left the server. (Timeout/Crash)",name);
  954.         case 1: format(string,sizeof string,"%s[%d] left the server. (Leaving)",name);
  955.         case 2: format(string,sizeof string,"%s[%d] left the server. (Kicked/Banned)",name);
  956.     }
  957.     SendClientMessageToAll(SERVER_COLOR,string);
  958. //Belt
  959.     Belt[playerid] = 0;
  960. //Tazer
  961.     KillTimer(GetPVarInt(playerid, "TazeTimer"));
  962. //TOW
  963.     if  (IsTowTrucker[playerid]==1)
  964.         {
  965.             IsTowTrucker[playerid]=0;
  966.             TowTruckers--;
  967.         }
  968. //HorseBet
  969.     MoneyBet[playerid] = 0;
  970.     BetOnHorse[playerid] = 0;
  971.     Watching[playerid] = 0;
  972.     return 1;
  973. }
  974.  
  975. new Team[MAX_PLAYERS] = -1;
  976.  
  977. public OnPlayerRequestClass(playerid, classid)
  978. {
  979.     SetPlayerPos(playerid, 1220.0737,-6.3703,1001.3281);
  980.     SetPlayerInterior(playerid,2);
  981.     SetPlayerFacingAngle(playerid,92.3402);
  982.     SetPlayerCameraPos(playerid,1214.3527,-6.4071,1001.3290);
  983.     SetPlayerCameraLookAt(playerid, 1220.0737,-6.3703,1000.3281);
  984.     switch(classid)
  985.     {
  986.         case 0..1:
  987.         {
  988.             GameTextForPlayer(playerid, "~y~~h~STAT", 5000, 6);
  989.             Team[playerid] = 1;
  990.         }
  991.         case 2:
  992.         {
  993.             GameTextForPlayer(playerid, "~b~~h~SWAT", 5000, 6);
  994.             Team[playerid] = 2;
  995.         }
  996.         case 3:
  997.         {
  998.             GameTextForPlayer(playerid, "ARMY", 5000, 6);
  999.             Team[playerid] = 3;
  1000.         }
  1001.         case 4..12:
  1002.         {
  1003.             GameTextForPlayer(playerid, "~b~POLICE", 5000, 6);
  1004.             Team[playerid] = 4;
  1005.         }
  1006.         case 13..22:
  1007.         {
  1008.             GameTextForPlayer(playerid, "~w~CIVILIAN", 5000, 6);
  1009.             Team[playerid] = 5;
  1010.         }
  1011.         case 23:
  1012.         {
  1013.             GameTextForPlayer(playerid, "~l~~w~HITMAN", 5000, 6);
  1014.             Team[playerid] = 6;
  1015.         }
  1016.         case 24:
  1017.         {
  1018.             GameTextForPlayer(playerid, "~w~MECHANIC", 5000, 6);
  1019.             Team[playerid] = 7;
  1020.         }
  1021.         case 25:
  1022.         {
  1023.             GameTextForPlayer(playerid, "~g~PARAMEDIC", 5000, 6);
  1024.             Team[playerid] = 8;
  1025.         }
  1026.     }
  1027.     return 1;
  1028. }
  1029.  
  1030. SetPlayerTeamFromClass(playerid, classid)
  1031. {
  1032.         switch(classid)
  1033.     {
  1034.         case 0..1:
  1035.         {
  1036.             GameTextForPlayer(playerid, "~y~~h~STAT", 5000, 6);
  1037.             Team[playerid] = 1;
  1038.         }
  1039.         case 2:
  1040.         {
  1041.             GameTextForPlayer(playerid, "~b~~h~SWAT", 5000, 6);
  1042.             Team[playerid] = 2;
  1043.         }
  1044.         case 3:
  1045.         {
  1046.             GameTextForPlayer(playerid, "ARMY", 5000, 6);
  1047.             Team[playerid] = 3;
  1048.         }
  1049.         case 4..12:
  1050.         {
  1051.             GameTextForPlayer(playerid, "~b~POLICE", 5000, 6);
  1052.             Team[playerid] = 4;
  1053.         }
  1054.         case 13..22:
  1055.         {
  1056.             GameTextForPlayer(playerid, "~w~CIVILIAN", 5000, 6);
  1057.             Team[playerid] = 5;
  1058.         }
  1059.         case 23:
  1060.         {
  1061.             GameTextForPlayer(playerid, "~l~~w~HITMAN", 5000, 6);
  1062.             Team[playerid] = 6;
  1063.         }
  1064.         case 24:
  1065.         {
  1066.             GameTextForPlayer(playerid, "~w~MECHANIC", 5000, 6);
  1067.             Team[playerid] = 7;
  1068.         }
  1069.         case 25:
  1070.         {
  1071.             GameTextForPlayer(playerid, "~g~PARAMEDIC", 5000, 6);
  1072.             Team[playerid] = 8;
  1073.         }
  1074.     }
  1075. }
  1076.  
  1077. SetPlayerToTeamColor(playerid)
  1078. {
  1079.     if(gTeam[playerid] == STAT)
  1080.     {
  1081.         SetPlayerColor(playerid,COLOR_STAT);
  1082.     }
  1083.     if(gTeam[playerid] == SWAT)
  1084.     {
  1085.         SetPlayerColor(playerid,COLOR_SWAT);
  1086.     }
  1087.     if(gTeam[playerid] == ARMY)
  1088.     {
  1089.         SetPlayerColor(playerid,COLOR_ARMY);
  1090.     }
  1091.     if(gTeam[playerid] == POLICE)
  1092.     {
  1093.         SetPlayerColor(playerid,COLOR_POLICE);
  1094.     }
  1095.     if(gTeam[playerid] == CIVILIAN)
  1096.     {
  1097.         SetPlayerColor(playerid,COLOR_CIVILIAN);
  1098.     }
  1099.     if(gTeam[playerid] == MECHANIC)
  1100.     {
  1101.         SetPlayerColor(playerid,COLOR_MECHANIC);
  1102.     }
  1103.     if(gTeam[playerid] == PARAMEDIC)
  1104.     {
  1105.         SetPlayerColor(playerid,COLOR_PARAMEDIC);
  1106.     }
  1107. }
  1108.  
  1109. public OnPlayerSpawn(playerid)
  1110. {
  1111.     SetPlayerInterior(playerid,0);
  1112.     printf("%i", gTeam[playerid]);
  1113.     switch(gTeam[playerid])
  1114.     {
  1115.         case 0:
  1116.         {
  1117.             print("Case 1 gets called");
  1118.             SetPlayerColor(playerid, COLOR_ORANGE);
  1119.             GivePlayerWeapon(playerid, 34, 500);
  1120.             GivePlayerWeapon(playerid, 17, 10);
  1121.             GivePlayerWeapon(playerid, 24, 200);
  1122.             GivePlayerWeapon(playerid, 28, 400);
  1123.             ShowPlayerDialog(playerid, 1, DIALOG_STYLE_LIST, "*******Welcome to STAT(Special Tactics Assualt Team)*******","INFO\n\nSPECIAL COMMANDS\n\nRULES","SELECT","CLOSE");
  1124.         }
  1125.         case 1:
  1126.         {
  1127.             print("Case 2 gets called");
  1128.             SetPlayerColor(playerid, COLOR_LIGHTBLUE);
  1129.             GivePlayerWeapon(playerid, 30, 500);
  1130.             GivePlayerWeapon(playerid, 17, 20);
  1131.             GivePlayerWeapon(playerid, 23, 300);
  1132.             ShowPlayerDialog(playerid, 2, DIALOG_STYLE_LIST, "*******Welcome to SWAT(Special Weapons And Tactics)*******","INFO\n\nSPECIAL COMMANDS\n\nRULES","SELECT","CLOSE");
  1133.         }
  1134.         case 2:
  1135.         {
  1136.             print("Case 3 gets called");
  1137.             SetPlayerColor(playerid, COLOR_BLUE);
  1138.             GivePlayerWeapon(playerid, 22, 400);
  1139.             GivePlayerWeapon(playerid, 17, 10);
  1140.             GivePlayerWeapon(playerid, 27, 200);
  1141.             GivePlayerWeapon(playerid, 32, 400);
  1142.             ShowPlayerDialog(playerid, 3, DIALOG_STYLE_LIST, "*******Welcome to SFPD(San Fierro Police Department)*******","INFO\n\nSPECIAL COMMANDS\n\nRULES","SELECT","CLOSE");
  1143.         }
  1144.         case 3:
  1145.         {
  1146.             print("Case 4 gets called");
  1147.             SetPlayerColor(playerid, COLOR_TAN);
  1148.             GivePlayerWeapon(playerid, 16, 20);
  1149.             GivePlayerWeapon(playerid, 27, 200);
  1150.             GivePlayerWeapon(playerid, 29, 300);
  1151.             GivePlayerWeapon(playerid, 31, 400);
  1152.             ShowPlayerDialog(playerid, 4, DIALOG_STYLE_LIST, "*******Welcome to US Army*******","INFO\n\nSPECIAL COMMANDS\n\nRULES","SELECT","CLOSE");
  1153.         }
  1154.         case 4:
  1155.         {
  1156.             print("Case 5 gets called");
  1157.             SetPlayerColor(playerid, COLOR_WHITE);
  1158.             ShowPlayerDialog(playerid, 5, DIALOG_STYLE_LIST, "*******Civilian Class*******","INFO\n\nCOMMANDS\n\nRULES","SELECT","CLOSE");
  1159.         }
  1160.         case 5:
  1161.         {
  1162.             print("Case 6 gets called");
  1163.             SetPlayerColor(playerid, COLOR_INDIGO);
  1164.             GivePlayerWeapon(playerid, 22, 50);
  1165.             ShowPlayerDialog(playerid, 6, DIALOG_STYLE_LIST, "*******Para Medic Class*******","INFO\n\nCOMMANDS\n\nRULES","SELECT","CLOSE");
  1166.         }
  1167.         case 6:
  1168.         {
  1169.             print("Case 7 gets called");
  1170.             SetPlayerColor(playerid, COLOR_GREY);
  1171.             ShowPlayerDialog(playerid, 7, DIALOG_STYLE_LIST, "*******Mechanic Class*******","INFO\n\nCOMMANDS\n\nRULES","SELECT","CLOSE");
  1172.         }
  1173.         case 7:
  1174.         {
  1175.             print("Case 8 gets called");
  1176.             SetPlayerColor(playerid, COLOR_WHITE);
  1177.             GivePlayerWeapon(playerid, 23, 200);
  1178.             GivePlayerWeapon(playerid, 30, 200);
  1179.             GivePlayerWeapon(playerid, 34, 100);
  1180.             ShowPlayerDialog(playerid, 8, DIALOG_STYLE_LIST, "*******Hitman Class*******","INFO\n\nCOMMANDS\n\nRULES","SELECT","CLOSE");
  1181.         }
  1182.     }
  1183.         if(!gPlayerAnimLibsPreloaded[playerid])
  1184.     {
  1185.         PreloadAnimLib(playerid,"BOMBER");
  1186.         PreloadAnimLib(playerid,"RAPPING");
  1187.         PreloadAnimLib(playerid,"SHOP");
  1188.         PreloadAnimLib(playerid,"BEACH");
  1189.         PreloadAnimLib(playerid,"SMOKING");
  1190.         PreloadAnimLib(playerid,"FOOD");
  1191.         PreloadAnimLib(playerid,"ON_LOOKERS");
  1192.         PreloadAnimLib(playerid,"DEALER");
  1193.         PreloadAnimLib(playerid,"CRACK");
  1194.         PreloadAnimLib(playerid,"CARRY");
  1195.         PreloadAnimLib(playerid,"COP_AMBIENT");
  1196.         PreloadAnimLib(playerid,"PARK");
  1197.         PreloadAnimLib(playerid,"INT_HOUSE");
  1198.         PreloadAnimLib(playerid,"FOOD");
  1199.         gPlayerAnimLibsPreloaded[playerid] = 1;
  1200.     }
  1201.     new newtext[41], name[MAX_PLAYERS];
  1202.     GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  1203.     format(newtext, sizeof(newtext), "Hi %s, how are you?", name);
  1204.     TextDrawSetString(himessage, newtext);
  1205.     TextDrawShowForPlayer(playerid, himessage);
  1206.     return 1;
  1207. }
  1208.  
  1209. public OnPlayerDeath(playerid, killerid, reason)
  1210. {
  1211.     Spawned[playerid] = false;
  1212.     // if they die whilst performing a looping anim, we should reset the state
  1213.     Belt[playerid] = 0;
  1214.     if(gPlayerUsingLoopingAnim[playerid])
  1215.     {
  1216.         gPlayerUsingLoopingAnim[playerid] = 0;
  1217.         TextDrawHideForPlayer(playerid,txtAnimHelper);
  1218.     }
  1219.     SendDeathMessage(killerid, playerid, reason);
  1220.     SetPlayerColor(playerid, COLOR_WHITE);
  1221.     SetPlayerWantedLevel(playerid, 0);
  1222.  
  1223.     if(killerid != INVALID_PLAYER_ID)
  1224.     {
  1225.         if(GetPlayerTeam(killerid) == HITMAN && HasHit[playerid] == 1)
  1226.         {
  1227.             new string[250], string2[250], string3[250], name[MAX_PLAYER_NAME], hitman[MAX_PLAYER_NAME], bonus = random(GetPlayerMoney(playerid));
  1228.             GetPlayerName(playerid, name, sizeof(name));
  1229.             GetPlayerName(killerid, hitman, sizeof(hitman));
  1230.             SendClientMessage(playerid, COLOR_GREY, "|_| Hit Contract Expired |_|");
  1231.             format(string, sizeof(string), "Hitman %s[ID:%d] has killed you for a Hit Contract.", hitman, killerid);
  1232.             SendClientMessage(playerid, COLOR_WHITE, string);
  1233.             HasHit[playerid] = 0;
  1234.             SendClientMessage(playerid, COLOR_WHITE, "|_| Hit Contract Completed! |_|");
  1235.             format(string2, sizeof(string2), "%s[ID:%d] had a Hit Contract. You've completed it.", name, playerid);
  1236.             SendClientMessage(playerid, COLOR_WHITE, string2);
  1237.             format(string3, sizeof(string3), "You've earned $5000, 1 score and a Bonus of $%d", bonus);
  1238.             SendClientMessage(playerid, COLOR_WHITE, string3);
  1239.             GivePlayerMoney(killerid, 5000+bonus);
  1240.             SetPlayerScore(killerid, 1);
  1241.         }
  1242.     }
  1243.  
  1244.     if(killerid == INVALID_PLAYER_ID && HasHit[playerid] == 1)
  1245.     {
  1246.         SendClientMessage(playerid, COLOR_GREY, "|_| Hit Contract Expired |_|");
  1247.         SendClientMessage(playerid, COLOR_WHITE, "You've died. The Hit Contract expired.");
  1248.         HasHit[playerid] = 0;
  1249.     }
  1250.     return true;
  1251. }
  1252.  
  1253. public OnPlayerRequestSpawn(playerid)
  1254. {
  1255.     if (RaceStarted == 1)
  1256.     {
  1257.         SendClientMessage(playerid, 0xFF0000FF, "A race is in proggress. Type /join to join.");
  1258.     }
  1259.     switch(Team[playerid])
  1260.     {
  1261.         case 0..1: //Team STAT
  1262.         {
  1263.             if(GetPlayerScore(playerid) < 2000)
  1264.             {
  1265.                 SendClientMessage(playerid, 0xCC0000AA, "You don't have the required score to play this team!");
  1266.                 return 0; //this will stop them from spawning
  1267.             }
  1268.         }
  1269.         case 2: // SWAT
  1270.         {
  1271.             if(GetPlayerScore(playerid) < 500)
  1272.             {
  1273.                 SendClientMessage(playerid, 0xCC0000AA, "You don't have the required score to play this team!");
  1274.                 return 0;
  1275.             }
  1276.         }
  1277.         case 3: //ARMY
  1278.         {
  1279.             if(GetPlayerScore(playerid) < 500)
  1280.             {
  1281.                 SendClientMessage(playerid, 0xCC0000AA, "You don't have the required score to play this team!");
  1282.                 return 0;
  1283.             }
  1284.         }
  1285.     }
  1286.     return 1;
  1287. }
  1288.  
  1289. public OnVehicleSpawn(vehicleid)
  1290. {
  1291.     return 1;
  1292. }
  1293.  
  1294. public OnVehicleDeath(vehicleid, killerid)
  1295. {
  1296.     return 1;
  1297. }
  1298.  
  1299. public OnPlayerText(playerid, text[])
  1300. {
  1301.    new string[128], pName[MAX_PLAYER_NAME];
  1302.    GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
  1303.    format(string, sizeof(string), "[%i]%s: %s", playerid, pName, text);
  1304.    SendClientMessageToAll(0xFFFFFF, string);
  1305.    return 0;
  1306. }
  1307. //========================================================================================================//
  1308. stock IsNumeric(const string[]) //By Jan "DracoBlue" Schütze (edited by Gabriel "Larcius" Cordes
  1309. {
  1310.     new length=strlen(string);
  1311.     if(length==0)
  1312.     {
  1313.         return 0;
  1314.     }
  1315.     for (new i=0; i<length; i++)
  1316.     {
  1317.         if (!((string[i] <= '9' && string[i] >= '0') || (i==0 && (string[i]=='-' || string[i]=='+'))))
  1318.         {
  1319.             return false;
  1320.         }
  1321.     }
  1322.     return 0;
  1323. }
  1324.  
  1325. //==============================================================================================//
  1326.  
  1327. //==================================================================================//
  1328.  
  1329. stock strrest(const string[], &index)
  1330. {
  1331. new length = strlen(string);
  1332. while ((index < length) && (string[index] <= ' '))
  1333. {
  1334. index++;
  1335. }
  1336. new offset = index;
  1337. new result[128];
  1338. while ((index < length) && ((index - offset) < (sizeof(result) - 1)))
  1339. {
  1340. result[index - offset] = string[index];
  1341. index++;
  1342. }
  1343. result[index - offset] = EOS;
  1344. return result;
  1345. }
  1346. //=================================================================================//
  1347. //ANIMS
  1348.  
  1349. OnePlayAnim(playerid,animlib[],animname[], Float:Speed, looping, lockx, locky, lockz, lp)
  1350. {
  1351.     ApplyAnimation(playerid, animlib, animname, Speed, looping, lockx, locky, lockz, lp);
  1352. }
  1353.  
  1354. //-------------------------------------------------
  1355.  
  1356. LoopingAnim(playerid,animlib[],animname[], Float:Speed, looping, lockx, locky, lockz, lp)
  1357. {
  1358.     gPlayerUsingLoopingAnim[playerid] = 1;
  1359.     ApplyAnimation(playerid, animlib, animname, Speed, looping, lockx, locky, lockz, lp);
  1360.     TextDrawShowForPlayer(playerid,txtAnimHelper);
  1361. }
  1362.  
  1363. //-------------------------------------------------
  1364.  
  1365. StopLoopingAnim(playerid)
  1366. {
  1367.     gPlayerUsingLoopingAnim[playerid] = 0;
  1368.     ApplyAnimation(playerid, "CARRY", "crry_prtial", 4.0, 0, 0, 0, 0, 0);
  1369. }
  1370.  
  1371. //-------------------------------------------------
  1372.  
  1373. PreloadAnimLib(playerid, animlib[])
  1374. {
  1375.     ApplyAnimation(playerid,animlib,"null",0.0,0,0,0,0,0);
  1376. }
  1377. //OTHERS
  1378. stock randomEx(minnum = cellmin, maxnum = cellmax) return random(maxnum - minnum + 1) + minnum; // Credits Y_Less
  1379.  
  1380.  
  1381. stock SystemMsg(playerid,msg[])
  1382. {
  1383.    if ((IsPlayerConnected(playerid))&&(strlen(msg)>0)) {
  1384.        SendClientMessage(playerid,COLOR_SYSTEM,msg);
  1385.    }
  1386.    return 1;
  1387. }
  1388.  
  1389. stock PlayerName(playerid)
  1390. {
  1391.   new name[255];
  1392.   GetPlayerName(playerid, name, 255);
  1393.   return name;
  1394. }
  1395.  
  1396. public OnPlayerCommandText(playerid, cmdtext[])
  1397. {
  1398. return 1;
  1399. }
  1400.  
  1401.  
  1402.  
  1403. public OnPlayerCommandPerformed(playerid, cmdtext[], success)
  1404. {
  1405.  
  1406.  
  1407.  
  1408.     new cmd[256],idx;
  1409.     new dancestyle;
  1410.     cmd = strtok(cmdtext,idx);
  1411.  
  1412. //Tow
  1413.     if  (strcmp(cmdtext, "/towme", true)==0)
  1414.             {
  1415.             if  (TowTruckers==0)
  1416.                 {
  1417.                 SendClientMessage(playerid,0xFFFF00AA,"Sorry there isn't any TowTrucker Available at the moment");
  1418.                 return 1;
  1419.                 }
  1420.             SendClientMessage(playerid,0xFFFF00AA,"TowTruckers has been told of your situation, just wait.");
  1421.             SendClientMessage(playerid,0xFFFF00AA,"REMEMBER: Your car can't be towed if you are sitting as the driver");
  1422.             new pName[MAX_PLAYER_NAME];
  1423.             new msg[256];
  1424.             format(msg,sizeof(msg),"*** %s (id:&d) Need to be Towed ***",pName,playerid);
  1425.             GetPlayerName(playerid,pName,sizeof(pName));
  1426.             for (new i=0;i<MAX_PLAYERS;i++)
  1427.                 {
  1428.                 if  (IsTowTrucker[i]==1)
  1429.                     {
  1430.                     SendClientMessage(i,0xFFFF00AA,msg);
  1431.                     }
  1432.                 }
  1433.             return 1;
  1434.             }
  1435. //Tazer
  1436.     if(!strcmp(cmdtext, "/tazer", true))
  1437.     {
  1438.         if(IsNotCop(playerid))
  1439.             return 1;
  1440.  
  1441.         if(GetPVarInt(playerid, "HasTazer") == 0) {
  1442.  
  1443.             SetPVarInt(playerid, "HasTazer", 1);
  1444.             GivePlayerWeapon(playerid, 23, 65500);
  1445.             SendClientMessage(playerid, 0xFFFF00FF, "Tazer unholstered.");
  1446.         }
  1447.         else {
  1448.  
  1449.             DeletePVar(playerid, "HasTazer");
  1450.             SetPlayerAmmo(playerid, 23, 0);
  1451.             SendClientMessage(playerid, 0xFFFF00FF, "Tazer holstered.");
  1452.         }
  1453.         return 1;
  1454.     }
  1455.  
  1456. //BELT
  1457. if (strcmp("/seatbelt", cmdtext, true, 10) == 0)
  1458.     {
  1459.         if(Belt[playerid] == 0)
  1460.         {
  1461.             SendClientMessage(playerid, COLOR_ORANGE, "You have tied your seatbelt!");
  1462.             Belt[playerid] = 1;
  1463.         }
  1464.         else
  1465.         {
  1466.             SendClientMessage(playerid, COLOR_ORANGE, "You have untied your seatbelt!");
  1467.             Belt[playerid] = 0;
  1468.         }
  1469.         return 1;
  1470.     }
  1471.  
  1472. //ANIMATIONS
  1473.     if(strcmp(cmd,"/animlist",true)==0)
  1474.     {
  1475.         SendClientMessage(playerid,0xAFAFAFAA,"Available Animations:");
  1476.         SendClientMessage(playerid,0xAFAFAFAA,"/handsup /drunk /bomb /getarrested /laugh /lookout /robman");
  1477.         SendClientMessage(playerid,0xAFAFAFAA,"/crossarms /lay /hide /vomit /eat /wave /taichi");
  1478.         SendClientMessage(playerid,0xAFAFAFAA,"/deal /crack /smokem /smokef /groundsit /chat /dance /f**ku");
  1479.     }
  1480.  
  1481.     if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) {
  1482.         // We don't handle anything here that can be used InVehicle
  1483.         return 0;
  1484.     }
  1485.  
  1486.     // HANDSUP
  1487.     if(strcmp(cmd, "/handsup", true) == 0) {
  1488.         SetPlayerSpecialAction(playerid,SPECIAL_ACTION_HANDSUP);
  1489.         return 1;
  1490.     }
  1491.  
  1492.     // CELLPHONE IN
  1493.     if(strcmp(cmd, "/cellin", true) == 0) {
  1494.         SetPlayerSpecialAction(playerid,SPECIAL_ACTION_USECELLPHONE);
  1495.         return 1;
  1496.     }
  1497.  
  1498.     // CELLPHONE OUT
  1499.     if(strcmp(cmd, "/cellout", true) == 0) {
  1500.         SetPlayerSpecialAction(playerid,SPECIAL_ACTION_STOPUSECELLPHONE);
  1501.         return 1;
  1502.     }
  1503.  
  1504.     // Drunk
  1505.     if(strcmp(cmd, "/drunk", true) == 0) {
  1506.         LoopingAnim(playerid,"PED","WALK_DRUNK",4.0,1,1,1,1,0);
  1507.         return 1;
  1508.     }
  1509.  
  1510.     // Place a Bomb
  1511.     if (strcmp("/bomb", cmdtext, true) == 0) {
  1512.         ClearAnimations(playerid);
  1513.         OnePlayAnim(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 0, 0, 0, 0); // Place Bomb
  1514.         return 1;
  1515.     }
  1516.     // Police Arrest
  1517.     if (strcmp("/getarrested", cmdtext, true, 7) == 0) {
  1518.           LoopingAnim(playerid,"ped", "ARRESTgun", 4.0, 0, 1, 1, 1, -1); // Gun Arrest
  1519.           return 1;
  1520.     }
  1521.     // Laugh
  1522.     if (strcmp("/laugh", cmdtext, true) == 0) {
  1523.           OnePlayAnim(playerid, "RAPPING", "Laugh_01", 4.0, 0, 0, 0, 0, 0); // Laugh
  1524.           return 1;
  1525.     }
  1526.     // Rob Lookout
  1527.     if (strcmp("/lookout", cmdtext, true) == 0) {
  1528.           OnePlayAnim(playerid, "SHOP", "ROB_Shifty", 4.0, 0, 0, 0, 0, 0); // Rob Lookout
  1529.           return 1;
  1530.     }
  1531.     // Rob Threat
  1532.     if (strcmp("/robman", cmdtext, true) == 0) {
  1533.           LoopingAnim(playerid, "SHOP", "ROB_Loop_Threat", 4.0, 1, 0, 0, 0, 0); // Rob
  1534.           return 1;
  1535.     }
  1536.     // Arms crossed
  1537.     if (strcmp("/crossarms", cmdtext, true) == 0) {
  1538.           LoopingAnim(playerid, "COP_AMBIENT", "Coplook_loop", 4.0, 0, 1, 1, 1, -1); // Arms crossed
  1539.           return 1;
  1540.     }
  1541.     // Lay Down
  1542.     if (strcmp("/lay", cmdtext, true, 6) == 0) {
  1543.           LoopingAnim(playerid,"BEACH", "bather", 4.0, 1, 0, 0, 0, 0); // Lay down
  1544.           return 1;
  1545.     }
  1546.     // Take Cover
  1547.     if (strcmp("/hide", cmdtext, true, 3) == 0) {
  1548.           LoopingAnim(playerid, "ped", "cower", 3.0, 1, 0, 0, 0, 0); // Taking Cover
  1549.           return 1;
  1550.     }
  1551.     // Vomit
  1552.     if (strcmp("/vomit", cmdtext, true) == 0) {
  1553.           OnePlayAnim(playerid, "FOOD", "EAT_Vomit_P", 3.0, 0, 0, 0, 0, 0); // Vomit BAH!
  1554.           return 1;
  1555.     }
  1556.     // Eat Burger
  1557.     if (strcmp("/eat", cmdtext, true) == 0) {
  1558.           OnePlayAnim(playerid, "FOOD", "EAT_Burger", 3.0, 0, 0, 0, 0, 0); // Eat Burger
  1559.           return 1;
  1560.     }
  1561.     // Wave
  1562.     if (strcmp("/wave", cmdtext, true) == 0) {
  1563.           LoopingAnim(playerid, "ON_LOOKERS", "wave_loop", 4.0, 1, 0, 0, 0, 0); // Wave
  1564.           return 1;
  1565.     }
  1566.     // Slap Ass
  1567.     if (strcmp("/slapass", cmdtext, true) == 0) {
  1568.          OnePlayAnim(playerid, "SWEET", "sweet_ass_slap", 4.0, 0, 0, 0, 0, 0); // Ass Slapping
  1569.           return 1;
  1570.     }
  1571.     // Dealer
  1572.     if (strcmp("/deal", cmdtext, true) == 0) {
  1573.           OnePlayAnim(playerid, "DEALER", "DEALER_DEAL", 4.0, 0, 0, 0, 0, 0); // Deal Drugs
  1574.           return 1;
  1575.     }
  1576.     // Crack Dieing
  1577.     if (strcmp("/crack", cmdtext, true, 6) == 0) {
  1578.           LoopingAnim(playerid, "CRACK", "crckdeth2", 4.0, 1, 0, 0, 0, 0); // Dieing of Crack
  1579.           return 1;
  1580.     }
  1581.     // Male Smoking
  1582.     if (strcmp("/smokem", cmdtext, true, 4) == 0) {
  1583.           LoopingAnim(playerid,"SMOKING", "M_smklean_loop", 4.0, 1, 0, 0, 0, 0); // Smoke
  1584.           return 1;
  1585.     }
  1586.     // Female Smoking
  1587.     if (strcmp("/smokef", cmdtext, true) == 0) {
  1588.           LoopingAnim(playerid, "SMOKING", "F_smklean_loop", 4.0, 1, 0, 0, 0, 0); // Female Smoking
  1589.           return 1;
  1590.     }
  1591.     // Sit
  1592.     if (strcmp("/groundsit", cmdtext, true, 4) == 0) {
  1593.           LoopingAnim(playerid,"BEACH", "ParkSit_M_loop", 4.0, 1, 0, 0, 0, 0); // Sit
  1594.           return 1;
  1595.     }
  1596.     // Idle Chat
  1597.     if(strcmp(cmd, "/chat", true) == 0) {
  1598.          OnePlayAnim(playerid,"PED","IDLE_CHAT",4.0,0,0,0,0,0);
  1599.          return 1;
  1600.     }
  1601.     // Fucku
  1602.     if(strcmp(cmd, "/fucku", true) == 0) {
  1603.          OnePlayAnim(playerid,"PED","fucku",4.0,0,0,0,0,0);
  1604.          return 1;
  1605.     }
  1606.     // TaiChi
  1607.     if(strcmp(cmd, "/taichi", true) == 0) {
  1608.          LoopingAnim(playerid,"PARK","Tai_Chi_Loop",4.0,1,0,0,0,0);
  1609.          return 1;
  1610.     }
  1611.  
  1612.     // ChairSit
  1613.     if(strcmp(cmd, "/chairsit", true) == 0) {
  1614.          LoopingAnim(playerid,"BAR","dnk_stndF_loop",4.0,1,0,0,0,0);
  1615.          return 1;
  1616.     }
  1617.  
  1618.     /* Would allow people to troll... but would be cool as a script
  1619.        controlled function
  1620.     // Bed Sleep R
  1621.     if(strcmp(cmd, "/inbedright", true) == 0) {
  1622.          LoopingAnim(playerid,"INT_HOUSE","BED_Loop_R",4.0,1,0,0,0,0);
  1623.          return 1;
  1624.     }
  1625.     // Bed Sleep L
  1626.     if(strcmp(cmd, "/inbedleft", true) == 0) {
  1627.          LoopingAnim(playerid,"INT_HOUSE","BED_Loop_L",4.0,1,0,0,0,0);
  1628.          return 1;
  1629.     }*/
  1630.  
  1631.  
  1632.     // START DANCING
  1633.     if(strcmp(cmd, "/dance", true) == 0) {
  1634.             new tmp[256];
  1635.             //new idx;
  1636.             // Get the dance style param
  1637.             tmp = strtok(cmdtext, idx);
  1638.             if(!strlen(tmp) || strlen(tmp) > 2) {
  1639.                 SendClientMessage(playerid,0xFF0000FF,"USAGE: /dance [style 1-4]");
  1640.                 return 1;
  1641.             }
  1642.  
  1643.             dancestyle = strval(tmp);
  1644.             if(dancestyle < 1 || dancestyle > 4) {
  1645.                 SendClientMessage(playerid,0xFF0000FF,"USAGE: /dance [style 1-4]");
  1646.                 return 1;
  1647.             }
  1648.  
  1649.             if(dancestyle == 1) {
  1650.                 SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE1);
  1651.             } else if(dancestyle == 2) {
  1652.                 SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE2);
  1653.             } else if(dancestyle == 3) {
  1654.                 SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE3);
  1655.             } else if(dancestyle == 4) {
  1656.                 SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE4);
  1657.             }
  1658.             return 1;
  1659.     }
  1660.     if (strcmp ("/clothes1", cmdtext, true, 10) == 0)
  1661.     {
  1662.         new skinA;
  1663.         if(GetPlayerInterior(playerid) !=15) return SendClientMessage(playerid,COLOR_BRIGHTRED,"You Must at Binco or Z.I.P Stores!");
  1664.         {
  1665.             if(GetPlayerMoney(playerid) < 25000) return SendClientMessage(playerid,COLOR_BRIGHTRED,"No Money Dude");
  1666.             {
  1667.                 if(GetPlayerSkin(playerid) != 11) return SetPlayerSkin(playerid,11);
  1668.                 {
  1669.                     if(SKIN1[playerid] >= 1)
  1670.                     {
  1671.                         SendClientMessage(playerid,COLOR_BRIGHTRED,"You Already Own This Clothes");
  1672.                     }
  1673.                         else
  1674.                     {
  1675.                         if(GetPlayerSkin(playerid) == 10)
  1676.                         skinA = SKIN1[playerid] = 1;
  1677.                         SendClientMessage(playerid,COLOR_GREEN,"You Just Bought Some Clothes");
  1678.                         GivePlayerMoney(playerid,-25000);
  1679.                         dUserSetINT(PlayerName(playerid)).("Skin1A",skinA);
  1680.                     }
  1681.                 }
  1682.             }
  1683.         }
  1684.         return 1;
  1685.     }
  1686.         if(strcmp(cmd, "/cuff", true) == 0)
  1687.     {
  1688.         new playername[MAX_PLAYER_NAME];
  1689.         new tmp[256];//, idx;
  1690.         tmp = strtok(cmdtext, idx);
  1691.         GetPlayerName(strval(tmp), playername, sizeof(playername));
  1692.         if(strlen(tmp) == 0) return SendClientMessage(playerid, COLOR_DARKGREY, "Use: /cuff [ID]");
  1693.         if(GetPlayerTeam(playerid) == POLICE || GetPlayerTeam(playerid) == SWAT)
  1694.         {
  1695.             if(GetPlayerTeam(strval(tmp)) != POLICE && GetPlayerTeam(strval(tmp)) != SWAT)
  1696.             {
  1697.                 if(IsPlayerSpawned(strval(tmp)))
  1698.                 {
  1699.                     if(GetDistanceBetweenPlayers(playerid, strval(tmp) <= 2))
  1700.                     {
  1701.                         if(!IsPlayerInAnyVehicle(playerid))
  1702.                         {
  1703.                             if(!IsPlayerInAnyVehicle(strval(tmp)))
  1704.                             {
  1705.                                 if(Cuffed[strval(tmp)] == 0)
  1706.                                 {
  1707.                                     new string[250], string2[250];
  1708.                                     Cuffed[strval(tmp)] = 1;
  1709.                                     TogglePlayerControllable(strval(tmp), false);
  1710.                                     SendClientMessage(playerid, COLOR_GREY, "|_| Player Handcuffed |_|");
  1711.                                     format(string, sizeof(string), "You handcuffed %s[ID:%d]", playername, strval(tmp));
  1712.                                     SendClientMessage(playerid, COLOR_WHITE, string);
  1713.                                     SendClientMessage(playerid, COLOR_BRIGHTRED, "WARNING: DO NOT LET HIM HANDCUFFED AND GO AWAY!");
  1714.                                     SendClientMessage(strval(tmp), COLOR_GREY, "|_| Handcuffed |_|");
  1715.                                     format(string2, sizeof(string2), "Officer %s[ID:%d] has handcuffed you.", playername, playerid);
  1716.                                     SendClientMessage(strval(tmp), COLOR_WHITE, string2);
  1717.                                     SendClientMessage(strval(tmp), COLOR_WHITE, "If the Officer go away and let you cuffed, type: /help [MESSAGE]");
  1718.                                     return true;
  1719.                                 }
  1720.                                 else if(Cuffed[strval(tmp)] == 1)
  1721.                                 {
  1722.                                     new string[250];
  1723.                                     format(string, sizeof(string), "%s[ID:%d] is already handcuffed.", playername, strval(tmp));
  1724.                                     return SendClientMessage(playerid, COLOR_DARKGREY, string);
  1725.                                 }
  1726.                             }
  1727.                             else
  1728.                             {
  1729.                                 new string[250];
  1730.                                 format(string, sizeof(string), "%s[ID:%d] is in a vehicle.", playername, strval(tmp));
  1731.                                 return SendClientMessage(playerid, COLOR_DARKGREY, string);
  1732.                             }
  1733.                         }
  1734.                         else return SendClientMessage(playerid, COLOR_DARKGREY, "You cannot handcuff anyone from inside a vehicle.");
  1735.                     }
  1736.                     else
  1737.                     {
  1738.                         new string[250];
  1739.                         format(string, sizeof(string), "%s[ID:%d] is too far away.", playername, strval(tmp));
  1740.                         return SendClientMessage(playerid, COLOR_DARKGREY, string);
  1741.                     }
  1742.                 }
  1743.                 else
  1744.                 {
  1745.                     new string[250];
  1746.                     format(string, sizeof(string), "%s[ID:%d] is dead.", playername, strval(tmp));
  1747.                     return SendClientMessage(playerid, COLOR_DARKGREY, string);
  1748.                 }
  1749.             }
  1750.             else return SendClientMessage(playerid, COLOR_DARKGREY, "You cannot handcuff another Police Officer!");
  1751.         }
  1752.         else return SendClientMessage(playerid, COLOR_DARKGREY, "Only Police Officers can use this command!");
  1753.     }
  1754.  
  1755.     if(strcmp(cmd, "/uncuff", true) == 0)
  1756.     {
  1757.         new playername[MAX_PLAYER_NAME];
  1758.         new tmp[256];//, idx;
  1759.         tmp = strtok(cmdtext, idx);
  1760.         GetPlayerName(strval(tmp), playername, sizeof(playername));
  1761.         if(strlen(tmp) == 0) return SendClientMessage(playerid, COLOR_DARKGREY, "Use: /uncuff [ID]");
  1762.         if(GetPlayerTeam(playerid) == POLICE || GetPlayerTeam(playerid) == SWAT)
  1763.         {
  1764.             if(IsPlayerSpawned(strval(tmp)))
  1765.             {
  1766.                 if(GetDistanceBetweenPlayers(playerid, strval(tmp) <= 2))
  1767.                 {
  1768.                     if(!IsPlayerInAnyVehicle(playerid))
  1769.                     {
  1770.                         if(Cuffed[strval(tmp)] == 1)
  1771.                         {
  1772.                             new string[250], string2[250];
  1773.                             Cuffed[strval(tmp)] = 0;
  1774.                             TogglePlayerControllable(strval(tmp), true);
  1775.                             SendClientMessage(playerid, COLOR_GREY, "|_| Player Uncuffed |_|");
  1776.                             format(string, sizeof(string), "You uncuffed %s[ID:%d]", playername, strval(tmp));
  1777.                             SendClientMessage(playerid, COLOR_WHITE, string);
  1778.                             SendClientMessage(strval(tmp), COLOR_GREY, "|_| Uncuffed |_|");
  1779.                             format(string2, sizeof(string2), "Officer %s[ID:%d] has uncuffed you.", playername, playerid);
  1780.                             return SendClientMessage(strval(tmp), COLOR_WHITE, string2);
  1781.                         }
  1782.                         else if(Cuffed[strval(tmp)] == 0)
  1783.                         {
  1784.                             new string[250];
  1785.                             format(string, sizeof(string), "%s[ID:%d] is not uncuffed.", playername, strval(tmp));
  1786.                             return SendClientMessage(playerid, COLOR_DARKGREY, string);
  1787.                         }
  1788.                     }
  1789.                     else return SendClientMessage(playerid, COLOR_DARKGREY, "You cannot uncuff anyone from inside a vehicle.");
  1790.                 }
  1791.    }
  1792.             else
  1793.             {
  1794.                 new string[250];
  1795.                 format(string, sizeof(string), "%s[ID:%d] is too far away.", playername, strval(tmp));
  1796.                 return SendClientMessage(playerid, COLOR_DARKGREY, string);
  1797.             }
  1798.         }
  1799.         else return SendClientMessage(playerid, COLOR_DARKGREY, "Only Police Officers can use this command!");
  1800.     }
  1801.  
  1802.     if(strcmp(cmdtext, "/cop", true)== 0)
  1803.     {
  1804.     SetPlayerTeam(playerid,POLICE);
  1805.     return 1;
  1806.     }
  1807.  
  1808.     if(strcmp(cmdtext, "/wantedme", true)== 0)
  1809.     {
  1810.     SetPlayerTeam(playerid,-1);
  1811.     SetPlayerColor(playerid,ORANGE);
  1812.     return 1;
  1813.     }
  1814.  
  1815.     if(strcmp(cmd, "/arrest", true) == 0 || strcmp(cmd, "/ar", true) == 0)
  1816.     {
  1817.         new tmp[256];//, idx;
  1818.         tmp = strtok(cmdtext, idx);
  1819.         if(strlen(tmp) == 0) return SendClientMessage(playerid, COLOR_BRIGHTRED, "Use: (/ar)rest [ID]");
  1820.         if(IsPlayerSpawned(strval(tmp)))
  1821.         {
  1822.             if(GetDistanceBetweenPlayers(playerid, strval(tmp)) <= 2)
  1823.             {
  1824.                 if(GetPlayerWantedLevel(strval(tmp) >= 4) && GetPlayerColor(strval(tmp) == ORANGE) || GetPlayerColor(strval(tmp) == COLOR_BRIGHTRED))
  1825.                 {
  1826.                     if(Cuffed[strval(tmp)] == 1)
  1827.                     {
  1828.                         new string[250], string2[250], Float:health, copname[MAX_PLAYER_NAME], arrested[MAX_PLAYER_NAME];
  1829.                         GetPlayerName(playerid, copname, sizeof(copname));
  1830.                         GetPlayerName(strval(tmp), arrested, sizeof(arrested));
  1831.                         GetPlayerHealth(strval(tmp), health);
  1832.                         SendClientMessage(strval(tmp), COLOR_GREY, "|_| Las Venturas Police Dept. |_|");
  1833.                         format(string, sizeof(string), "Officer %d has arrested you.", copname);
  1834.                         SendClientMessage(strval(tmp), COLOR_WHITE, string);
  1835.                         if(GetPlayerWantedLevel(strval(tmp)) >= 4 && GetPlayerWantedLevel(strval(tmp)) <= 5) PrisonTime[strval(tmp)] = 60;
  1836.                         else if(GetPlayerWantedLevel(strval(tmp)) >= 6 && GetPlayerWantedLevel(strval(tmp)) <= 8) PrisonTime[strval(tmp)] = 120;
  1837.                         else if(GetPlayerWantedLevel(strval(tmp)) >= 9 && GetPlayerWantedLevel(playerid) <= 11) PrisonTime[strval(tmp)] = 180;
  1838.                         else if(GetPlayerWantedLevel(strval(tmp)) >= 12 && GetPlayerWantedLevel(strval(tmp)) <= 14) PrisonTime[strval(tmp)] = 240;
  1839.                         else if(GetPlayerWantedLevel(strval(tmp)) >= 15) PrisonTime[strval(tmp)] = 300;
  1840.                         SetPlayerWantedLevel(strval(tmp), 0);
  1841.                         TogglePlayerControllable(strval(tmp), true);
  1842.                         SetPlayerJailed(strval(tmp), true);
  1843.                         format(string2, sizeof(string2), "Officer %d[ID:%d] arrested %s[ID:%d].", copname, playerid, arrested, strval(tmp));
  1844.                         Announce(string2);
  1845.                         if(health <= 90)
  1846.                         {
  1847.                             SendClientMessage(strval(tmp), COLOR_GREY, "|_| Las Venturas Police Dept. |_|");
  1848.                             SendClientMessage(strval(tmp), COLOR_WHITE, "LVPD has given you some food.");
  1849.                             SetPlayerHealth(strval(tmp), health+10);
  1850.                             ApplyAnimation(strval(tmp), "FOOD", "EAT_Burger", 4.0, 0, 0, 0, 0, 0);
  1851.                         }
  1852.                         return true;
  1853.                     }
  1854.                     else if(Cuffed[strval(tmp)] == 0)
  1855.                     {
  1856.                         new wouldbearrested[MAX_PLAYER_NAME], string[250];
  1857.                         GetPlayerName(strval(tmp), wouldbearrested, sizeof(wouldbearrested));
  1858.                         format(string, sizeof(string), "%s[ID:%d] is not handcuffed. Try handcuffing him.", wouldbearrested, strval(tmp));
  1859.                         return true;
  1860.                     }
  1861.                 }
  1862.                 else
  1863.                 {
  1864.                     new wouldbearrested[MAX_PLAYER_NAME], string[250];
  1865.                     GetPlayerName(strval(tmp), wouldbearrested, sizeof(wouldbearrested));
  1866.                     format(string, sizeof(string), "%s[ID:%d] is not that dangerous. No need to arrest him.", wouldbearrested, strval(tmp));
  1867.                     return true;
  1868.                 }
  1869.             }
  1870.             else
  1871.             {
  1872.                 new wouldbearrested[MAX_PLAYER_NAME], string[250];
  1873.                 GetPlayerName(strval(tmp), wouldbearrested, sizeof(wouldbearrested));
  1874.                 format(string, sizeof(string), "%s[ID:%d] is too far away.", wouldbearrested, strval(tmp));
  1875.                 return true;
  1876.             }
  1877.         }
  1878.         else
  1879.         {
  1880.            new wouldbearrested[MAX_PLAYER_NAME], string[250];
  1881.            GetPlayerName(strval(tmp), wouldbearrested, sizeof(wouldbearrested));
  1882.            format(string, sizeof(string), "%s[ID:%d] is dead.", wouldbearrested, strval(tmp));
  1883.            return true;
  1884.         }
  1885.     }
  1886.     if (strcmp("/accept", cmdtext, true, 10) == 0)
  1887.     {
  1888.         new name[256],  string[256];
  1889.         if(dUserINT(PlayerName(playerid)).("accept") == 1)
  1890.         {
  1891.             SendClientMessage(playerid,COLOR_BRIGHTRED,"You Have Already Accepted the rulez!");
  1892.         }
  1893.         else
  1894.         {
  1895.             if(dUserINT(PlayerName(playerid)).("accpet") == 0)
  1896.             {
  1897.             GetPlayerName(playerid,name,256);
  1898.             SendClientMessage(playerid,COLOR_GREEN,"You Have Accepted the Rulez, Welcome to San Fierro Cops 'n' Robbers!");
  1899.             format(string,sizeof(string),"%s Is A Newbie Please Be Gentle with Him/Her!",name);
  1900.             SendClientMessageToAll(COLOR_GREEN,string);
  1901.             printf("%s Is Now A Newbie!",name);
  1902.             accept[playerid] = 1;
  1903.             dUserSetINT(PlayerName(playerid)).("accept",accept[playerid]);
  1904.             TogglePlayerControllable(playerid,1);
  1905.             }
  1906.         }
  1907.         return 1;
  1908.     }
  1909.     if (strcmp("/buyfood", cmdtext, true, 10) ==0)
  1910.     {
  1911.         new food1;
  1912.         if(GetPlayerInterior(playerid) != 6) return SendClientMessage(playerid,COLOR_BRIGHTRED,"You must be at 24/7  stores..");
  1913.         {
  1914.             if(GetPlayerMoney(playerid) < 2500) return SendClientMessage(playerid,COLOR_BRIGHTRED,"No Money Dude");
  1915.             {
  1916.                 if(food[playerid] >= 10)
  1917.                 {
  1918.                     SendClientMessage(playerid,COLOR_BRIGHTRED,"Your food slot is full... you cant store more food");
  1919.                 }
  1920.                 else
  1921.                 {
  1922.                     food1 = food[playerid] += 1;
  1923.                     dUserSetINT(PlayerName(playerid)).("food",food1);
  1924.                     SendClientMessage(playerid,COLOR_GREEN,"You just bought some food and put it into your bag");
  1925.                     GivePlayerMoney(playerid,-2500);
  1926.                     dUserSetINT(PlayerName(playerid)).("food",food1);
  1927.                 }
  1928.             }
  1929.         }
  1930.         return 1;
  1931.     }
  1932.     if(strcmp("/myfood", cmdtext, true, 10) == 0)
  1933.     {
  1934.         if(dUserINT(PlayerName(playerid)).("food") == 0) return SendClientMessage(playerid,COLOR_BRIGHTRED,"You Dont Have Any Food... You Can Buy Some At the ATM'S Stores!");
  1935.         if(dUserINT(PlayerName(playerid)).("food") == 1) return SendClientMessage(playerid,COLOR_GREEN,"You Have 1 Aliment");
  1936.         if(dUserINT(PlayerName(playerid)).("food") == 2) return SendClientMessage(playerid,COLOR_GREEN,"You Have 2 Aliments");
  1937.         if(dUserINT(PlayerName(playerid)).("food") == 3) return SendClientMessage(playerid,COLOR_GREEN,"You Have 3 Aliments");
  1938.         if(dUserINT(PlayerName(playerid)).("food") == 4) return SendClientMessage(playerid,COLOR_GREEN,"You Have 4 Aliments");
  1939.         if(dUserINT(PlayerName(playerid)).("food") == 5) return SendClientMessage(playerid,COLOR_GREEN,"You Have 5 Aliments");
  1940.         if(dUserINT(PlayerName(playerid)).("food") == 6) return SendClientMessage(playerid,COLOR_GREEN,"You Have 6 Aliments");
  1941.         if(dUserINT(PlayerName(playerid)).("food") == 7) return SendClientMessage(playerid,COLOR_GREEN,"You Have 7 Aliments");
  1942.         if(dUserINT(PlayerName(playerid)).("food") == 8) return SendClientMessage(playerid,COLOR_GREEN,"You Have 8 Aliments");
  1943.         if(dUserINT(PlayerName(playerid)).("food") == 9) return SendClientMessage(playerid,COLOR_GREEN,"You Have 9 Aliments");
  1944.         if(dUserINT(PlayerName(playerid)).("food") == 10) return SendClientMessage(playerid,COLOR_GREEN,"You Have 10 Aliments");
  1945.         return 1;
  1946.     }
  1947.     if (strcmp("/wank", cmdtext, true, 10) == 0)
  1948.     {
  1949.         new string[256],  name[256];
  1950.         if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,COLOR_BRIGHTRED,"You Cant Wank On The Car!");
  1951.         {
  1952.             if(iswanking[playerid] == 0)
  1953.             {
  1954.                 GetPlayerName(playerid,name,256);
  1955.                 SetTimerEx("Wank",12900,false,"i",playerid);
  1956.                 iswanking[playerid] = 1;
  1957.                 ApplyAnimation(playerid,"PAULNMAC","wank_out",4.1,1,0,0,0,-1);
  1958.                 format(string,sizeof(string),"%s Wanks Off",name);
  1959.                 SendClientMessageToAll(COLOR_GREEN,string);
  1960.             }
  1961.         }
  1962.         return 1;
  1963.     }
  1964.     //ATM
  1965.     if (strcmp("/buyphone", cmdtext, true, 10) == 0)
  1966.     {
  1967.         new phone1;
  1968.         if(GetPlayerInterior(playerid) != 6) return SendClientMessage(playerid,COLOR_BRIGHTRED,"You must be at 24/7 Stores...");
  1969.         {
  1970.             if(GetPlayerMoney(playerid) < 15000) return SendClientMessage(playerid,COLOR_BRIGHTRED,"No Money Dude!");
  1971.             {
  1972.                 if(phone[playerid] >= 1)
  1973.                 {
  1974.                     SendClientMessage(playerid,COLOR_BRIGHTRED,"You Already Have A Phone");
  1975.                 }
  1976.                 else
  1977.                 {
  1978.                     phone1 = phone[playerid] += 1;
  1979.                     dUserSetINT(PlayerName(playerid)).("phone",phone1);
  1980.                     SendClientMessage(playerid,COLOR_GREEN,"You Just Bought a Phone!");
  1981.                     GivePlayerMoney(playerid,-15000);
  1982.                 }
  1983.             }
  1984.         }
  1985.         return 1;
  1986.     }
  1987.     if (strcmp("/buywater", cmdtext, true, 10) == 0)
  1988.     {
  1989.         new water1;
  1990.         if(GetPlayerInterior(playerid) != 6) return SendClientMessage(playerid,COLOR_BRIGHTRED,"You must be at 24/7 stores..");
  1991.         {
  1992.             if(GetPlayerMoney(playerid) < 3500) return SendClientMessage(playerid,COLOR_BRIGHTRED,"No Money Dude");
  1993.             {
  1994.                 if(water[playerid] >= 5)
  1995.                 {
  1996.                     SendClientMessage(playerid,COLOR_BRIGHTRED,"Your Water Slot Is FULL... You Cant Store More Water");
  1997.                 }
  1998.                 else
  1999.                 {
  2000.                     water1 = water[playerid] += 1;
  2001.                     dUserSetINT(PlayerName(playerid)).("water",water1);
  2002.                     SendClientMessage(playerid,COLOR_GREEN,"You Just Bought Some Water And Put It On Your Bag!");
  2003.                     GivePlayerMoney(playerid,-3500);
  2004.                 }
  2005.             }
  2006.         }
  2007.         return 1;
  2008.     }
  2009. //==================LASER=====//
  2010.     if(!strcmp(cmdtext, "/enablelaser", true))
  2011.     {
  2012.         return SetPVarInt(playerid, "laserEnabled", true);
  2013.     }
  2014.     if(!strcmp(cmdtext, "/disablelaser", true))
  2015.     {
  2016.         SetPVarInt(playerid, "laserEnabled", false);
  2017.         RemovePlayerAttachedObject(playerid, 1);
  2018.         RemovePlayerAttachedObject(playerid, 2);
  2019.         return 1;
  2020.     }
  2021. //For Admin
  2022.     if (strcmp("/openbridge", cmdtext, true, 10) == 0)
  2023.     {
  2024.         MoveObject(Gate, 3024.77832031, -584.44433594, 7.17698669, 2);
  2025.         SendClientMessage(playerid, COLOR_YELLOW, "The bridge is opened!");
  2026.         return 1;
  2027.     }
  2028.     if (strcmp("/closebridge", cmdtext, true, 10) == 0)
  2029.     {
  2030.         MoveObject(Gate, 3050.77832031, -584.44433594, 7.17698669, 2);
  2031.         SendClientMessage(playerid, COLOR_YELLOW, "The bridge is closed!");
  2032.         return 1;
  2033.     }
  2034.     if(!strcmp("/pm", cmdtext, true, 3))
  2035.     {   new tmp[256], gMessage[256], Message[256];
  2036.         tmp = strtok(cmdtext,idx);
  2037.         if(!strlen(tmp)) return SendClientMessage(playerid,0x3A47DEFF,"USAGE: /PM (id) (message)");
  2038.         new id = strval(tmp);
  2039.         gMessage = strrest(cmdtext,idx);
  2040.         if(!strlen(gMessage)) return SendClientMessage(playerid,0xFF0000FF,"Usage: /pm (id) (message)");
  2041.         if(!IsPlayerConnected(id)) return SendClientMessage(playerid,0xFF0000FF,"/pm :Invalid ID");
  2042.         new iName[MAX_PLAYER_NAME], pName[MAX_PLAYER_NAME];
  2043.         GetPlayerName(id,iName,sizeof(iName));
  2044.         GetPlayerName(playerid,pName,sizeof(pName));
  2045.         format(Message,sizeof(Message),">> %s(%i): %s",iName,id,gMessage);
  2046.         SendClientMessage(playerid,0xFFD720FF,Message);
  2047.         format(Message,sizeof(Message),"** %s(%i): %s",pName,playerid,gMessage);
  2048.         SendClientMessage(id,0xFFD720FF,Message);
  2049.         PlayerPlaySound(id,1085,0.0,0.0,0.0);
  2050.         return 1;
  2051.     }
  2052.     return 1;
  2053. }
  2054.  
  2055. CMD:exit(playerid, params[])
  2056. {
  2057.     if (Watching[playerid] == 1)
  2058.     {
  2059.         TogglePlayerControllable(playerid, 1);
  2060.         TextDrawHideForPlayer(playerid,BG2);
  2061.         TextDrawHideForPlayer(playerid,BG1);
  2062.         TextDrawHideForPlayer(playerid,Start2);
  2063.         TextDrawHideForPlayer(playerid,Finish2);
  2064.         TextDrawHideForPlayer(playerid, Horse1);
  2065.         TextDrawHideForPlayer(playerid,Horse2);
  2066.         TextDrawHideForPlayer(playerid,Horse3);
  2067.         TextDrawHideForPlayer(playerid,Horse4);
  2068.         TextDrawHideForPlayer(playerid,HorseNum1);
  2069.         TextDrawHideForPlayer(playerid,HorseNum2);
  2070.         TextDrawHideForPlayer(playerid,HorseNum3);
  2071.         TextDrawHideForPlayer(playerid,HorseNum4);
  2072.         TextDrawHideForPlayer(playerid,Start);
  2073.         TextDrawHideForPlayer(playerid,Finish);
  2074.         Watching[playerid] = 0;
  2075.         SendClientMessage(playerid, 0x00FF00, "You stopped watching the race");
  2076.     }
  2077.     return 1;
  2078. }
  2079.  
  2080. CMD:watch(playerid, params[])
  2081. {
  2082.     if (Prepared == 1 || RaceStarted == 1)
  2083.     {
  2084.         TogglePlayerControllable(playerid, 0);
  2085.         TextDrawShowForPlayer(playerid,BG2);
  2086.         TextDrawShowForPlayer(playerid,BG1);
  2087.         TextDrawShowForPlayer(playerid,Start2);
  2088.         TextDrawShowForPlayer(playerid,Finish2);
  2089.         TextDrawShowForPlayer(playerid, Horse1);
  2090.         TextDrawShowForPlayer(playerid,Horse2);
  2091.         TextDrawShowForPlayer(playerid,Horse3);
  2092.         TextDrawShowForPlayer(playerid,Horse4);
  2093.         TextDrawShowForPlayer(playerid,HorseNum1);
  2094.         TextDrawShowForPlayer(playerid,HorseNum2);
  2095.         TextDrawShowForPlayer(playerid,HorseNum3);
  2096.         TextDrawShowForPlayer(playerid,HorseNum4);
  2097.         TextDrawShowForPlayer(playerid,Start);
  2098.         TextDrawShowForPlayer(playerid,Finish);
  2099.         Watching[playerid] = 1;
  2100.         SendClientMessage(playerid, 0x00FF00, "You are now watching the race");
  2101.     }
  2102.     else
  2103.     {
  2104.       SendClientMessage(playerid, 0xFFFF00FF, "The race hasn't started yet. Type /bet to bet.");
  2105.     }
  2106.     return 1;
  2107. }
  2108.  
  2109. CMD:mybet(playerid, params[])
  2110. {
  2111.     if (MoneyBet[playerid] > 0 && BetOnHorse[playerid] > 0)
  2112.     {
  2113.         new string[128];
  2114.         format(string, sizeof(string), "You have bet %d on horse number %d.",MoneyBet[playerid],BetOnHorse[playerid]);
  2115.         SendClientMessage(playerid, 0x00FFFFFF, string);
  2116.     }
  2117.     return 1;
  2118. }
  2119.  
  2120. CMD:cmds(playerid, params[])
  2121. {
  2122.     SendClientMessage(playerid, ORANGE, "Commands: mybet, bet, watch, exit");
  2123.     return 1;
  2124. }
  2125.  
  2126. CMD:bet(playerid, params[])
  2127. {
  2128.             new horse, cash;
  2129.             if(!sscanf(params,"ii",horse, cash) && horse < 5 && horse > 0 && cash <= CashHigherBounds && cash >= CashLowerBounds)
  2130.             {
  2131.                     if (GetPlayerMoney(playerid) >= cash)
  2132.                     {
  2133.                         if (RaceStarted == 1)
  2134.                         {
  2135.                             SendClientMessage(playerid, 0xFF0000FF, "The race has already started. You can't bet until it finishes.");
  2136.                         }
  2137.                             else
  2138.                             {
  2139.                             if (MoneyBet[playerid] > 0)
  2140.                             {
  2141.                                 SendClientMessage(playerid, 0xFF0000FF, "You already bet! Type /mybet to see how much money you've bet and on which horse.");
  2142.                             }
  2143.                             else
  2144.                             {
  2145.                                 MoneyBet[playerid] = cash;
  2146.                                 GivePlayerMoney(playerid, -cash);
  2147.                                 BetOnHorse[playerid] = horse;
  2148.                                 new string[128];
  2149.                                 format(string, sizeof(string), "You have just bet %d on horse number %d. Wait for the race to finish and see if you won.",MoneyBet[playerid],BetOnHorse[playerid]);
  2150.                                 SendClientMessage(playerid, 0x00FFFFFF, string);
  2151.                             }
  2152.                         }
  2153.                     }
  2154.                     else
  2155.                     {
  2156.                         SendClientMessage(playerid, 0xFF0000FF, "You don't have that much money.");
  2157.                         new Float:X, Float:Y, Float:Z;
  2158.                         GetPlayerPos(playerid, X, Y, Z);
  2159.                         PlayerPlaySound(playerid, 5405, X, Y, Z);
  2160.                     }
  2161.             }
  2162.             else
  2163.             {
  2164.                 new string[128];
  2165.                 format(string, sizeof(string), "Usage: /bet [Horse(1-4)][Ammount(%d-%d]",CashLowerBounds,CashHigherBounds);
  2166.                 SendClientMessage(playerid, 0xFF0000FF,string);
  2167.             }
  2168.             return 1;
  2169. }
  2170. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  2171. {
  2172.     return 1;
  2173. }
  2174.  
  2175. public OnPlayerExitVehicle(playerid, vehicleid)
  2176. {
  2177.     return 1;
  2178. }
  2179.  
  2180. public OnPlayerStateChange(playerid, newstate, oldstate)
  2181. {
  2182.     Belt[playerid] = 0;
  2183.     if  (newstate==PLAYER_STATE_DRIVER)
  2184.         {
  2185.         if  (GetVehicleModel(GetPlayerVehicleID(playerid)) == 525)
  2186.             {
  2187.             IsTowTrucker[playerid]=1;
  2188.             TowTruckers++;
  2189.             SendClientMessage(playerid,0xFFFF00AA,"You can use the ACTION KEY to Tow cars");
  2190.             }
  2191.         else
  2192.             {
  2193.             if  (TowTruckers>0)
  2194.                 {
  2195.                 SendClientMessage(playerid,0xFFFF00AA,"If you have a problem with your car, use /TowMe to call a TowTruker");
  2196.                 }
  2197.             }
  2198.         }
  2199.     if  ((newstate==PLAYER_STATE_ONFOOT)&&(IsTowTrucker[playerid]==1))
  2200.         {
  2201.         IsTowTrucker[playerid]=0;
  2202.         TowTruckers--;
  2203.         }
  2204.     if  ((newstate==PLAYER_STATE_PASSENGER)&&(TowTruckers>0))
  2205.         {
  2206.         SendClientMessage(playerid,0xFFFF00AA,"If you have a problem with your car, use /TowMe to call a TowTruker");
  2207.         }
  2208.     return 1;
  2209. }
  2210.  
  2211. public OnPlayerEnterCheckpoint(playerid)
  2212. {
  2213.     return 1;
  2214. }
  2215.  
  2216. public OnPlayerLeaveCheckpoint(playerid)
  2217. {
  2218.     return 1;
  2219. }
  2220.  
  2221. public OnPlayerEnterRaceCheckpoint(playerid)
  2222. {
  2223.     return 1;
  2224. }
  2225.  
  2226. public OnPlayerLeaveRaceCheckpoint(playerid)
  2227. {
  2228.     return 1;
  2229. }
  2230.  
  2231. public OnRconCommand(cmd[])
  2232. {
  2233.     return 1;
  2234. }
  2235.  
  2236. public OnObjectMoved(objectid)
  2237. {
  2238.     return 1;
  2239. }
  2240.  
  2241. public OnPlayerObjectMoved(playerid, objectid)
  2242. {
  2243.     return 1;
  2244. }
  2245.  
  2246. public OnPlayerPickUpPickup(playerid, pickupid)
  2247. {
  2248.     return 1;
  2249. }
  2250.  
  2251. public OnVehicleMod(playerid, vehicleid, componentid)
  2252. {
  2253.     return 1;
  2254. }
  2255.  
  2256. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  2257. {
  2258.     return 1;
  2259. }
  2260.  
  2261. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  2262. {
  2263.     return 1;
  2264. }
  2265.  
  2266. public OnPlayerSelectedMenuRow(playerid, row)
  2267. {
  2268.     return 1;
  2269. }
  2270.  
  2271. public OnPlayerExitedMenu(playerid)
  2272. {
  2273.     return 1;
  2274. }
  2275.  
  2276. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  2277. {
  2278.     return 1;
  2279. }
  2280. //==============================================================================//
  2281. stock IsKeyJustDown(key, newkeys, oldkeys)
  2282. {
  2283.     if((newkeys & key) && !(oldkeys & key)) return 1;
  2284.     return 0;
  2285. }
  2286.  
  2287. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  2288. {
  2289.     if(!gPlayerUsingLoopingAnim[playerid]) return;
  2290.  
  2291.     if(IsKeyJustDown(KEY_SPRINT,newkeys,oldkeys))
  2292.     {
  2293.         StopLoopingAnim(playerid);
  2294.         TextDrawHideForPlayer(playerid,txtAnimHelper);
  2295.     }
  2296.     {
  2297.     if ((newkeys==KEY_ACTION)&&(IsPlayerInAnyVehicle(playerid))&&(GetPlayerState(playerid)==PLAYER_STATE_DRIVER))
  2298.         {
  2299.         if (GetVehicleModel(GetPlayerVehicleID(playerid)) == 525)
  2300.             {
  2301.             SendClientMessage(playerid,0xFFFF00AA,"trying to tow a car");
  2302.             new Float:pX,Float:pY,Float:pZ;
  2303.             GetPlayerPos(playerid,pX,pY,pZ);
  2304.             new Float:vX,Float:vY,Float:vZ;
  2305.             new Found=0;
  2306.             new vid=0;
  2307.             while((vid<MAX_VEHICLES)&&(!Found))
  2308.                 {
  2309.                 vid++;
  2310.                 GetVehiclePos(vid,vX,vY,vZ);
  2311.                 if  ((floatabs(pX-vX)<7.0)&&(floatabs(pY-vY)<7.0)&&(floatabs(pZ-vZ)<7.0)&&(vid!=GetPlayerVehicleID(playerid)))
  2312.                     {
  2313.                     Found=1;
  2314.                     if  (IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))
  2315.                         {
  2316.                         DetachTrailerFromVehicle(GetPlayerVehicleID(playerid));
  2317.                         }
  2318.                     AttachTrailerToVehicle(vid,GetPlayerVehicleID(playerid));
  2319.                     SendClientMessage(playerid,0xFFFF00AA,"Car towed!");
  2320.                     }
  2321.                 }
  2322.             if  (!Found)
  2323.                 {
  2324.                 SendClientMessage(playerid,0xFFFF00AA,"There is no car in range.");
  2325.                 }
  2326.             }
  2327.         }
  2328.     }
  2329. }
  2330.  
  2331. public OnRconLoginAttempt(ip[], password[], success)
  2332. {
  2333.     return 1;
  2334. }
  2335.  
  2336. public OnPlayerStreamIn(playerid, forplayerid)
  2337. {
  2338.     return 1;
  2339. }
  2340.  
  2341. public OnPlayerStreamOut(playerid, forplayerid)
  2342. {
  2343.     return 1;
  2344. }
  2345.  
  2346. public OnVehicleStreamIn(vehicleid, forplayerid)
  2347. {
  2348.     return 1;
  2349. }
  2350.  
  2351. public OnVehicleStreamOut(vehicleid, forplayerid)
  2352. {
  2353.     return 1;
  2354. }
  2355.  
  2356. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  2357. {
  2358. if(dialogid == 1)
  2359.                 {
  2360.                 if(response == 1)
  2361.                     {
  2362.                         switch(listitem)
  2363.                         {
  2364.                             case 1:
  2365.                             {
  2366.                             ShowPlayerDialog(playerid, 900, DIALOG_STYLE_MSGBOX, "*****STAT COMMANDS*****","/opengatestat - To open the STAT base gate\n/closegatestat - To Close the STAT base gate\n/crimes - To see a list of criminals and their crimes.\n/taze - To taze the suspect\n/arrest - To arrest the suspect\n/cuff - To handcuff the suspect.","BACK","CLOSE");
  2367.                             }
  2368.                             case 0:
  2369.                             {
  2370.                             ShowPlayerDialog(playerid, 800, DIALOG_STYLE_MSGBOX, "*****INFORMATION*****","STAT = Special Tactics Assualt Team\n\nYour aim is to arrest all criminals\n\nYou have to maintain peace on the server","Ok","Close");
  2371.                             }
  2372.                             case 2:
  2373.                             {
  2374.                             ShowPlayerDialog(playerid, 700, DIALOG_STYLE_MSGBOX, "*****Rules*****","Dont Kill innocent players.\n\nDont team kill.\n\nDont misuse your powers.\n\nHelp your team mates.\n\nRespond to distress calls.","Ok","Close");
  2375.                             }
  2376.                         }
  2377.                     }
  2378.                 }
  2379. if(dialogid == 2)
  2380.                 {
  2381.                 if(response)
  2382.                     {
  2383.                         switch(listitem)
  2384.                         {
  2385.                             case 1:
  2386.                             {
  2387.                             ShowPlayerDialog(playerid, 9000, DIALOG_STYLE_MSGBOX, "*****SWAT COMMANDS*****","/opengateswat - To open the SWAT base gate\n/closegateswat - To Close the STAT base gate\n/arrest - To arrest the suspect\n/cuff - To handcuff the suspect.\n/rb - To create a road block.\n/spike - To throw a spike.HTTP \n/givecar - To parashoot a car to your position.\n/drag - To drag a player to your car\n/taze - Taze a player.","BACK","CLOSE");
  2388.                             }
  2389.                             case 0:
  2390.                             {
  2391.                             ShowPlayerDialog(playerid, 8000, DIALOG_STYLE_MSGBOX, "*****INFORMATION*****","SWAT = Special Weapons and Tactics \n\nYour aim is to arrest all criminals\n\nYou have to maintain peace on the server","Ok","Close");
  2392.                             }
  2393.                             case 2:
  2394.                             {
  2395.                             ShowPlayerDialog(playerid, 7000, DIALOG_STYLE_MSGBOX, "*****Rules*****","Dont Kill innocent players.\n\nDont team kill.\n\nDont misuse your powers.\n\nHelp your team mates.\n\nRespond to distress calls.","Ok","Close");
  2396.                             }
  2397.                         }
  2398.                     }
  2399.                 }
  2400. if(dialogid == 3)
  2401.                 {
  2402.                 if(response)
  2403.                     {
  2404.                         switch(listitem)
  2405.                         {
  2406.                             case 1:
  2407.                             {
  2408.                             ShowPlayerDialog(playerid, 90000, DIALOG_STYLE_MSGBOX, "*****POLICE COMMANDS*****","/arrest - To arrest the suspect\n/cuff - To handcuff the suspect.\n/rb - To create a road block.\n/taze - Taze a player.","BACK","CLOSE");
  2409.                             }
  2410.                             case 0:
  2411.                             {
  2412.                             ShowPlayerDialog(playerid, 80000, DIALOG_STYLE_MSGBOX, "*****INFORMATION*****","Your aim is to arrest all criminals\n\nYou have to maintain peace on the server","Ok","Close");
  2413.                             }
  2414.                             case 2:
  2415.                             {
  2416.                             ShowPlayerDialog(playerid, 70000, DIALOG_STYLE_MSGBOX, "*****Rules*****","Dont Kill innocent players.\n\nDont team kill.\n\nDont misuse your powers.\n\nHelp your team mates.\n\nRespond to distress calls.","Ok","Close");
  2417.                             }
  2418.                         }
  2419.                     }
  2420.                 }
  2421. if(dialogid == 4)
  2422.                 {
  2423.                 if(response)
  2424.                     {
  2425.                         switch(listitem)
  2426.                         {
  2427.                             case 1:
  2428.                             {
  2429.                             ShowPlayerDialog(playerid, 900000, DIALOG_STYLE_MSGBOX, "*****ARMY COMMANDS*****","/plant - To C4 at a spot.\n/inject - To inject health.\n/givecar - To parashoot a car to you.","BACK","CLOSE");
  2430.                             }
  2431.                             case 0:
  2432.                             {
  2433.                             ShowPlayerDialog(playerid, 800000, DIALOG_STYLE_MSGBOX, "*****INFORMATION*****","Your aim is to kill all criminals\n\nYou have to maintain peace on the server","Ok","Close");
  2434.                             }
  2435.                             case 2:
  2436.                             {
  2437.                             ShowPlayerDialog(playerid, 700000, DIALOG_STYLE_MSGBOX, "*****Rules*****","Dont Kill innocent players.\n\nDont team kill.\n\nDont misuse your powers.\n\nHelp your team mates.\n\nRespond to distress calls.","Ok","Close");
  2438.                             }
  2439.                         }
  2440.                     }
  2441.                 }
  2442. if(dialogid == 5)
  2443.                 {
  2444.                 if(response)
  2445.                     {
  2446.                         switch(listitem)
  2447.                         {
  2448.                             case 1:
  2449.                             {
  2450.                             ShowPlayerDialog(playerid, 9000000, DIALOG_STYLE_MSGBOX, "*****CIVILIAN COMMANDS*****","/animlist - To get a list of animations.\n/sucide - To commit sucide.\n/jobs - To select jobs from a job list","BACK","CLOSE");
  2451.                             }
  2452.                             case 0:
  2453.                             {
  2454.                             ShowPlayerDialog(playerid, 8000000, DIALOG_STYLE_MSGBOX, "*****INFORMATION*****","Your aim is to do your job","Ok","Close");
  2455.                             }
  2456.                             case 2:
  2457.                             {
  2458.                             ShowPlayerDialog(playerid, 7000000, DIALOG_STYLE_MSGBOX, "*****Rules*****","Dont Kill innocent players.\n\nDont break rules.","Ok","Close");
  2459.                             }
  2460.                         }
  2461.                     }
  2462.                 }
  2463. if(dialogid == 6)
  2464.                 {
  2465.                 if(response)
  2466.                     {
  2467.                         switch(listitem)
  2468.                         {
  2469.                             case 0:
  2470.                             {
  2471.                             ShowPlayerDialog(playerid, 90000000, DIALOG_STYLE_MSGBOX, "*****INFORMATION*****","Your aim is to help people when they are in need of a Medic","Ok","Close");
  2472.                             }
  2473.                             case 1:
  2474.                             {
  2475.                             ShowPlayerDialog(playerid, 80000000, DIALOG_STYLE_MSGBOX, "*****MEDIC COMMANDS*****","/cure - To cure a person.\n\n/heal - To heal a person.","Ok","Close");
  2476.                             }
  2477.                             case 2:
  2478.                             {
  2479.                             ShowPlayerDialog(playerid, 70000000, DIALOG_STYLE_MSGBOX, "*****RULES*****","Dont kill people.\nHeal players, dont just joke around","Ok","Close");
  2480.                             }
  2481.                         }
  2482.                     }
  2483.                 }
  2484. if(dialogid == 7)
  2485.                 {
  2486.                 if(response)
  2487.                     {
  2488.                         switch(listitem)
  2489.                         {
  2490.                             case 0:
  2491.                             {
  2492.                             ShowPlayerDialog(playerid, 900000000, DIALOG_STYLE_MSGBOX, "*****INFORMATION*****","Help people to retrive their cars","Ok","Close");
  2493.                             }
  2494.                             case 1:
  2495.                             {
  2496.                             ShowPlayerDialog(playerid, 800000000, DIALOG_STYLE_MSGBOX, "*****COMMANDS*****","/tow - To tow a vehicel\n\n/refuel - To fuel a vehicle\n\n/repair - To repair a vehicle","Ok","Close");
  2497.                             }
  2498.                             case 2:
  2499.                             {
  2500.                             ShowPlayerDialog(playerid, 700000000, DIALOG_STYLE_MSGBOX, "*****RULES*****","Help players in distress\nDont misuse your powers.","Ok","Close");
  2501.                             }
  2502.                         }
  2503.                     }
  2504.                 }
  2505. if(dialogid == 8)
  2506.                 {
  2507.                 if(response)
  2508.                     {
  2509.                         switch(listitem)
  2510.                         {
  2511.                             case 0:
  2512.                             {
  2513.                             ShowPlayerDialog(playerid, 9000000000, DIALOG_STYLE_MSGBOX, "*****INFORMATION*****","Help people to complete their hit contracts","Ok","Close");
  2514.                             }
  2515.                             case 1:
  2516.                             {
  2517.                             ShowPlayerDialog(playerid, 8000000000, DIALOG_STYLE_MSGBOX, "*****COMMANDS*****","/hitlist - To see players on hitlist","Ok","Close");
  2518.                             }
  2519.                             case 2:
  2520.                             {
  2521.                             ShowPlayerDialog(playerid, 7000000000, DIALOG_STYLE_MSGBOX, "*****RULES*****","Help players in distress\nDont misuse your powers.","Ok","Close");
  2522.                             }
  2523.                         }
  2524.                     }
  2525.                 }
  2526.     return 1;
  2527. }
  2528.  
  2529. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  2530. {
  2531.     if(Belt[clickedplayerid] == 0)
  2532.     {
  2533.         SendClientMessage(playerid, COLOR_ORANGE, "That player isn't wearing a seatbelt !");
  2534.     }
  2535.     else
  2536.     {
  2537.         SendClientMessage(playerid, COLOR_ORANGE, "That player isn wearing a seatbelt !");
  2538.     }
  2539.     return 1;
  2540. }
  2541.  
  2542. public OnPlayerUpdate(playerid)
  2543. {
  2544.     if(!IsPlayerConnected(playerid)) return 0;
  2545.     if(GetPlayerState(playerid)==PLAYER_STATE_ONFOOT)
  2546.             {
  2547.                     new weaponid=GetPlayerWeapon(playerid),oldweapontype=GetWeaponType(OldWeapon[playerid]);
  2548.                     new weapontype=GetWeaponType(weaponid);
  2549.                     if(HoldingWeapon[playerid]==weaponid)
  2550.                     if(OldWeapon[playerid]!=weaponid)
  2551.                     {
  2552.                         new modelid=GetWeaponModel(OldWeapon[playerid]);
  2553.                         if(modelid!=0 && oldweapontype!=WEAPON_TYPE_NONE && oldweapontype!=weapontype)
  2554.                         {
  2555.                             HoldingWeapon[playerid]=OldWeapon[playerid];
  2556.                             switch(oldweapontype)
  2557.                             {
  2558.                                 case WEAPON_TYPE_LIGHT:
  2559.                                 SetPlayerHoldingObject(playerid, modelid, 8,0.0,-0.1,0.15, -100.0, 0.0, 0.0);
  2560.  
  2561.                                 case WEAPON_TYPE_MELEE:
  2562.                                 SetPlayerHoldingObject(playerid, modelid, 7,0.0,0.0,-0.18, 100.0, 45.0, 0.0);
  2563.  
  2564.                                 case WEAPON_TYPE_HEAVY:
  2565.                                 SetPlayerHoldingObject(playerid, modelid, 1, 0.2,-0.125,-0.1,0.0,25.0,180.0);
  2566.                             }
  2567.                         }
  2568.                     }
  2569.                     if(oldweapontype!=weapontype)
  2570.                     OldWeapon[playerid]=weaponid;
  2571.             }
  2572.     if(!IsPlayerConnected(playerid)) return 0;
  2573.     if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
  2574.     {
  2575.         for(new i = 0; i < sizeof(SpikeInfo); i++)
  2576.         {
  2577.             if(IsPlayerInRangeOfPoint(playerid, 3.0, SpikeInfo[i][sX], SpikeInfo[i][sY], SpikeInfo[i][sZ]))
  2578.             {
  2579.                 if(SpikeInfo[i][sCreated] == 1)
  2580.                 {
  2581.                     new panels, doors, lights, tires;
  2582.                     new carid = GetPlayerVehicleID(playerid);
  2583.                     GetVehicleDamageStatus(carid, panels, doors, lights, tires);
  2584.                     UpdateVehicleDamageStatus(carid, panels, doors, lights, 15);
  2585.                     return 0;
  2586.                 }
  2587.             }
  2588.         }
  2589.     }
  2590.     if(GetPVarInt(playerid, "laserEnabled"))
  2591.     {
  2592.         if(!IsPlayerInAnyVehicle(playerid))
  2593.         {
  2594.             new
  2595.                 currentWeapon = GetPlayerWeapon(playerid)
  2596.             ;
  2597.             if(currentWeapon != GetPVarInt(playerid, "oldWeapon"))
  2598.             {
  2599.                 for(new i; i != sizeof(laserInfo); ++i)
  2600.                 {
  2601.                     if(currentWeapon == laserInfo[i][weaponID] )
  2602.                     {
  2603.                         SetPlayerAttachedObject(playerid, 1, 18643, laserInfo[i][boneID], laserInfo[i][offsetX], laserInfo[i][offsetY], laserInfo[i][offsetZ], laserInfo[i][offsetRX], laserInfo[i][offsetRY], laserInfo[i][offsetRZ]);
  2604.  
  2605.                         if(laserInfo[i][otherHand])
  2606.                         {
  2607.                             SetPlayerAttachedObject(playerid, 2, 18643, laserInfo[i + 1][boneID], laserInfo[i + 1][offsetX], laserInfo[i + 1][offsetY], laserInfo[i + 1][offsetZ], laserInfo[i + 1][offsetRX], laserInfo[i + 1][offsetRY], laserInfo[i + 1][offsetRZ]);
  2608.                         }
  2609.                         break;
  2610.                     }
  2611.                     else
  2612.                     {
  2613.                         if(IsPlayerAttachedObjectSlotUsed(playerid, 1)) RemovePlayerAttachedObject(playerid, 1);
  2614.                         if(IsPlayerAttachedObjectSlotUsed(playerid, 2)) RemovePlayerAttachedObject(playerid, 2);
  2615.                     }
  2616.                 }
  2617.                 SetPVarInt(playerid, "oldWeapon", currentWeapon);
  2618.             }
  2619.         }
  2620.         else
  2621.         {
  2622.             if(IsPlayerAttachedObjectSlotUsed(playerid, 1)) RemovePlayerAttachedObject(playerid, 1);
  2623.             if(IsPlayerAttachedObjectSlotUsed(playerid, 2)) RemovePlayerAttachedObject(playerid, 2);
  2624.         }
  2625.     }
  2626.     return 1;
  2627. }
  2628.  
  2629. GetWeaponType(weaponid)
  2630. {
  2631.         switch(weaponid)
  2632.         {
  2633.             case 22,23,24,26,28,32:
  2634.                 return WEAPON_TYPE_LIGHT;
  2635.  
  2636.                 case 3,4,16,17,18,39,10,11,12,13,14,40,41:
  2637.                     return WEAPON_TYPE_MELEE;
  2638.  
  2639.                 case 2,5,6,7,8,9,25,27,29,30,31,33,34,35,36,37,38:
  2640.                     return WEAPON_TYPE_HEAVY;
  2641.         }
  2642.         return WEAPON_TYPE_NONE;
  2643. }
  2644.  
  2645. stock GetWeaponModel(weaponid)
  2646. {
  2647.         switch(weaponid)
  2648.         {
  2649.             case 1:
  2650.                 return 331;
  2651.  
  2652.                 case 2..8:
  2653.                     return weaponid+331;
  2654.  
  2655.         case 9:
  2656.                     return 341;
  2657.  
  2658.                 case 10..15:
  2659.                         return weaponid+311;
  2660.  
  2661.                 case 16..18:
  2662.                     return weaponid+326;
  2663.  
  2664.                 case 22..29:
  2665.                     return weaponid+324;
  2666.  
  2667.                 case 30,31:
  2668.                     return weaponid+325;
  2669.  
  2670.                 case 32:
  2671.                     return 372;
  2672.  
  2673.                 case 33..45:
  2674.                     return weaponid+324;
  2675.  
  2676.                 case 46:
  2677.                     return 371;
  2678.         }
  2679.         return 0;
  2680. }
  2681.  
  2682. public Unfreeze(playerid)
  2683. {
  2684.  
  2685.     TogglePlayerControllable(playerid, 1);
  2686.     DeletePVar(playerid, "Tazed");
  2687.     return ClearAnimations(playerid);
  2688. }
  2689.  
  2690. public DriverSalary()
  2691. {
  2692.     for(new i = 0; i < MAX_PLAYERS; i++)
  2693.     {
  2694.         if(GetPlayerSkin(i) == 253 && Working[i] == 1)
  2695.         {
  2696.             new vehicle = GetPlayerVehicleID(i);
  2697.             for(new j = 0; j < MAX_PLAYERS; j++)
  2698.             {
  2699.                 if(IsPlayerConnected(j))
  2700.                 {
  2701.                     if(IsPlayerInVehicle(j, vehicle) && GetPlayerState(j) == PLAYER_STATE_PASSENGER) GivePlayerMoney(i,1);
  2702.                 }
  2703.             }
  2704.         }
  2705.     }
  2706. }
  2707.  
  2708. public ResetParamedicWeapons()
  2709. {
  2710.     for(new i = 0; i < MAX_PLAYERS; i++)
  2711.     {
  2712.         if(IsPlayerConnected(i) && GetPlayerTeam(i) == PARAMEDIC) ResetPlayerWeapons(i);
  2713.     }
  2714. }
  2715.  
  2716. public SafeSetPlayerPos(playerid, Float:x, Float:y, Float:z)
  2717. {
  2718.     SetPlayerPos(playerid, x,y,z);
  2719.     return 1;
  2720. }
  2721.  
  2722. //Tazer
  2723. public OnPlayerTazePlayer(playerid) {
  2724.  
  2725.     new
  2726.         Keys[3];
  2727.  
  2728.     GetPlayerKeys(playerid, Keys[0], Keys[1], Keys[2]);
  2729.  
  2730.     if(Keys[0] & KEY_FIRE) {
  2731.  
  2732.         if(IsNotCop(playerid)) return 1;
  2733.  
  2734.         else {
  2735.  
  2736.             if((GetPlayerWeapon(playerid) == 23) && (GetPVarInt(playerid, "HasTazer")) == 1) {
  2737.  
  2738.                 new targetid = 0;
  2739.                 while ((targetid < MAX_PLAYERS) && (IsPlayerConnected(targetid))) {
  2740.  
  2741.                     if(GetDistanceBetweenPlayers(playerid, targetid) >= 4) {
  2742.  
  2743.                         if(IsPlayerAimingAtPlayer(playerid, targetid) == 1) {
  2744.  
  2745.                             if(IsPlayerInAnyVehicle(targetid) == 0 && IsPlayerInAnyVehicle(playerid) == 0) {
  2746.  
  2747.                                 if(targetid != playerid) {
  2748.  
  2749.                                     // Feel free to add some other stuff here...
  2750.                                     // Remember, variable 'targetid' is the player who got tazed!
  2751.                                     if(GetPVarInt(targetid, "Tazed") == 1) return 0;
  2752.                                     ApplyAnimation(targetid, "CRACK", "crckdeth2", 4.0, 1, 0, 0, 0, 0);
  2753.                                     TogglePlayerControllable(targetid, 0);
  2754.                                     SetTimerEx("Unfreeze", (SECONDS * 1000), false, "i", targetid);
  2755.                                     SetPVarInt(targetid, "Tazed", 1);
  2756.                                 }
  2757.                             }
  2758.                         }
  2759.                     }
  2760.                     targetid ++;
  2761.                 }
  2762.             }
  2763.         }
  2764.     }
  2765.     return 1;
  2766. }
  2767. stock HorseInfo(Text:horseid)
  2768. {
  2769.     TextDrawFont(horseid, 4);
  2770.     TextDrawColor(horseid,0xFFFFFFFF);
  2771.     TextDrawTextSize(horseid,64,64);
  2772. }
  2773.  
  2774. stock HorseNumInfo(Text:horsenumid)
  2775. {
  2776.     TextDrawFont(horsenumid, 4);
  2777.     TextDrawColor(horsenumid,0xFFFFFFFF);
  2778.     TextDrawTextSize(horsenumid,32,32);
  2779. }
  2780. public GameTimeTimer()
  2781. {
  2782.     ServerMinutes++;
  2783.     if(ServerMinutes == 60)
  2784.     {
  2785.         ServerMinutes = 0;
  2786.         ServerHours++;
  2787.  
  2788.         if(ServerHours == 24)
  2789.         {
  2790.         ServerHours = 0;
  2791.         }
  2792.     }
  2793.     format(timestring, sizeof(timestring), "%02d:%02d",ServerHours,ServerMinutes);
  2794.     TextDrawSetString(TimeTD, timestring);
  2795.     SetWorldTime(ServerHours);
  2796.     if (ServerHours == TimeOfHorseRaceHours && ServerMinutes == TimeOfHorseRaceMinutes)
  2797.     {
  2798.         SendClientMessageToAll(ORANGE, "The race is starting... You can no longer place bets! Type /watch to watch it!");
  2799.         for(new i = 0; i < MAX_PLAYERS; i++)
  2800.         {
  2801.         new Float:X[MAX_PLAYERS], Float:Y[MAX_PLAYERS], Float:Z[MAX_PLAYERS];
  2802.         GetPlayerPos(i, X[i], Y[i], Z[i]);
  2803.         PlayerPlaySound(i, 5410, X[i], Y[i], Z[i]);
  2804.         }
  2805.         SetTimer("HorseStartTimer", 2000, 0);
  2806.         RaceStarted = 1;
  2807.         Prepared = 0;
  2808.     }
  2809.     else if (ServerHours == TimeOfHorseRaceHours - 1 && ServerMinutes == TimeOfHorseRaceMinutes)
  2810.     {
  2811.     HorseCD = 3;
  2812.     HorseStop = 0;
  2813.  
  2814.     BG2 = TextDrawCreate(0, 0, "LD_OTB:bckgrnd");
  2815.     TextDrawFont(BG2, 4);
  2816.     TextDrawColor(BG2,0xFFFFFFFF);
  2817.     TextDrawTextSize(BG2,640,200);
  2818.  
  2819.     BG1 = TextDrawCreate(0, 0, "LD_OTB:trees");
  2820.     TextDrawFont(BG1, 4);
  2821.     TextDrawColor(BG1,0xFFFFFFFF);
  2822.     TextDrawTextSize(BG1,640,480);
  2823.  
  2824.     Start2 = TextDrawCreate(-170, 145, "LD_OTB:pole2");
  2825.     TextDrawFont(Start2, 4);
  2826.     TextDrawColor(Start2,0xFFFFFFFF);
  2827.     TextDrawTextSize(Start2,256,200);
  2828.  
  2829.     Finish2 = TextDrawCreate(365, 145, "LD_OTB:pole2");
  2830.     TextDrawFont(Finish2, 4);
  2831.     TextDrawColor(Finish2,0xFFFFFFFF);
  2832.     TextDrawTextSize(Finish2,256,200);
  2833.  
  2834.     Horse1 = TextDrawCreate(0, 200, "LD_OTB:hrs8");
  2835.     HorseInfo(Horse1);
  2836.     HorsePosX1 = 0;
  2837.  
  2838.     Horse2 = TextDrawCreate(0, 250, "LD_OTB:hrs8");
  2839.     HorseInfo(Horse2);
  2840.     HorsePosX2 = 0;
  2841.  
  2842.     Horse3 = TextDrawCreate(0, 300, "LD_OTB:hrs8");
  2843.     HorseInfo(Horse3);
  2844.     HorsePosX3 = 0;
  2845.  
  2846.     Horse4 = TextDrawCreate(0, 350, "LD_OTB:hrs8");
  2847.     HorseInfo(Horse4);
  2848.     HorsePosX4 = 0;
  2849.  
  2850.     HorseNum1 = TextDrawCreate(15, 204, "LD_OTB2:Ric1");
  2851.     HorseNumInfo(HorseNum1);
  2852.  
  2853.     HorseNum2 = TextDrawCreate(15, 254, "LD_OTB2:Ric2");
  2854.     HorseNumInfo(HorseNum2);
  2855.  
  2856.     HorseNum3 = TextDrawCreate(15, 304, "LD_OTB2:Ric3");
  2857.     HorseNumInfo(HorseNum3);
  2858.  
  2859.     HorseNum4 = TextDrawCreate(15, 354, "LD_OTB2:Ric4");
  2860.     HorseNumInfo(HorseNum4);
  2861.  
  2862.     Start = TextDrawCreate(-170, 338, "LD_OTB:pole2");
  2863.     TextDrawFont(Start, 4);
  2864.     TextDrawColor(Start,0xFFFFFFFF);
  2865.     TextDrawTextSize(Start,256,200);
  2866.  
  2867.     Finish = TextDrawCreate(365, 338, "LD_OTB:pole2");
  2868.     TextDrawFont(Finish, 4);
  2869.     TextDrawColor(Finish,0xFFFFFFFF);
  2870.     TextDrawTextSize(Finish,256,200);
  2871.  
  2872.     CDTextDraw = TextDrawCreate(310,235,"3");
  2873.     TextDrawAlignment(CDTextDraw,0);
  2874.     TextDrawBackgroundColor(CDTextDraw,0x000000ff);
  2875.     TextDrawFont(CDTextDraw,2);
  2876.     TextDrawLetterSize(CDTextDraw,0.5,2);
  2877.     TextDrawColor(CDTextDraw,0x00ff0099);
  2878.     TextDrawSetOutline(CDTextDraw,1);
  2879.     TextDrawSetProportional(CDTextDraw,1);
  2880.     TextDrawSetShadow(CDTextDraw,1);
  2881.  
  2882.     HorseAnimCount = 1;
  2883.     Prepared = 1;
  2884.     for(new i = 0; i < MAX_PLAYERS; i++)
  2885.     {
  2886.     new Float:X[MAX_PLAYERS], Float:Y[MAX_PLAYERS], Float:Z[MAX_PLAYERS];
  2887.     GetPlayerPos(i, X[i], Y[i], Z[i]);
  2888.     PlayerPlaySound(i, 5401, X[i], Y[i], Z[i]);
  2889.     }
  2890.     SendClientMessageToAll(ORANGE, "1 Hour left until the race starts! Place your bets now by typing /bet! You can also type /watch to watch!");
  2891.     }
  2892. }
  2893.  
  2894. forward HorseStartTimer();
  2895.  
  2896. public HorseStartTimer()
  2897. {
  2898.     if (HorseCD > 0)
  2899.     {
  2900.     new string[128];
  2901.     format(string, sizeof(string), "%d",HorseCD);
  2902.     if (Horsemsg == 1)
  2903.     {
  2904.     SendClientMessageToAll(ORANGE, "The horse race has begun! Type /watch to watch it!");
  2905.     Horsemsg = 0;
  2906.     }
  2907.     TextDrawColor(CDTextDraw,0xff0000ff);
  2908.     TextDrawSetString(CDTextDraw, string);
  2909.     HorseCD -= 1;
  2910.     SetTimer("HorseStartTimer", 2000, 0);
  2911.     for(new i = 0; i < MAX_PLAYERS; i++)
  2912.         {
  2913.         new Float:X[MAX_PLAYERS], Float:Y[MAX_PLAYERS], Float:Z[MAX_PLAYERS];
  2914.         GetPlayerPos(i, X[i], Y[i], Z[i]);
  2915.         PlayerPlaySound(i, 3200, X[i], Y[i], Z[i]);
  2916.         }
  2917.     }
  2918.     else
  2919.     {
  2920.     TextDrawColor(CDTextDraw,0x00ff00ff);
  2921.     TextDrawSetString(CDTextDraw, "Go!");
  2922.     Horsemsg = 1;
  2923.     for(new i = 0; i < MAX_PLAYERS; i++)
  2924.         {
  2925.         new Float:X[MAX_PLAYERS], Float:Y[MAX_PLAYERS], Float:Z[MAX_PLAYERS];
  2926.         GetPlayerPos(i, X[i], Y[i], Z[i]);
  2927.         PlayerPlaySound(i, 3201, X[i], Y[i], Z[i]);
  2928.         }
  2929.     SetTimer("HorseAnimTimer", 100, 0);
  2930.     }
  2931.     TextDrawShowForAll(CDTextDraw);
  2932.     SetTimer("HorseStartHideTimer", 1000, 0);
  2933.     return 1;
  2934. }
  2935.  
  2936.  
  2937. forward HorseAnimTimer();
  2938.  
  2939. public HorseAnimTimer()
  2940. {
  2941.     new string[12], HorseWon;
  2942.     format(string, sizeof(string), "LD_OTB:hrs%i", HorseAnimCount);
  2943.     HorseAnimCount++;
  2944.     if (HorseAnimCount == 9) HorseAnimCount = 1;
  2945.  
  2946.     HorsePosX1 = HorsePosX1 + (random(600) / 100);
  2947.     HorsePosX2 = HorsePosX2 + (random(600) / 100);
  2948.     HorsePosX3 = HorsePosX3 + (random(600) / 100);
  2949.     HorsePosX4 = HorsePosX4 + (random(600) / 100);
  2950.  
  2951.     TextDrawDestroy(Horse1);
  2952.     TextDrawDestroy(Horse2);
  2953.     TextDrawDestroy(Horse3);
  2954.     TextDrawDestroy(Horse4);
  2955.     TextDrawDestroy(HorseNum1);
  2956.     TextDrawDestroy(HorseNum2);
  2957.     TextDrawDestroy(HorseNum3);
  2958.     TextDrawDestroy(HorseNum4);
  2959.  
  2960.  
  2961.     Horse1 = TextDrawCreate(HorsePosX1, 200, string);
  2962.     HorseInfo(Horse1);
  2963.     Horse2 = TextDrawCreate(HorsePosX2, 250, string);
  2964.     HorseInfo(Horse2);
  2965.     Horse3 = TextDrawCreate(HorsePosX3, 300, string);
  2966.     HorseInfo(Horse3);
  2967.     Horse4 = TextDrawCreate(HorsePosX4, 350, string);
  2968.     HorseInfo(Horse4);
  2969.     HorseNum1 = TextDrawCreate(HorsePosX1 + 15, 204, "LD_OTB2:Ric1");
  2970.     HorseNumInfo(HorseNum1);
  2971.     HorseNum2 = TextDrawCreate(HorsePosX2 + 15, 254, "LD_OTB2:Ric2");
  2972.     HorseNumInfo(HorseNum2);
  2973.     HorseNum3 = TextDrawCreate(HorsePosX3 + 15, 304, "LD_OTB2:Ric3");
  2974.     HorseNumInfo(HorseNum3);
  2975.     HorseNum4 = TextDrawCreate(HorsePosX4 + 15, 354, "LD_OTB2:Ric4");
  2976.     HorseNumInfo(HorseNum4);
  2977.  
  2978.     for(new i = 0; i < MAX_PLAYERS; i++)
  2979.         {
  2980.             if (Watching[i] == 1)
  2981.             {
  2982.                 TextDrawShowForPlayer(i,Horse1);
  2983.                 TextDrawShowForPlayer(i,Horse2);
  2984.                 TextDrawShowForPlayer(i,Horse3);
  2985.                 TextDrawShowForPlayer(i,Horse4);
  2986.                 TextDrawShowForPlayer(i,HorseNum1);
  2987.                 TextDrawShowForPlayer(i,HorseNum2);
  2988.                 TextDrawShowForPlayer(i,HorseNum3);
  2989.                 TextDrawShowForPlayer(i,HorseNum4);
  2990.             }
  2991.         }
  2992.  
  2993.     if (HorsePosX1 >= 560)
  2994.     {
  2995.     SendClientMessageToAll(ORANGE, "Horse 1 won!");
  2996.     HorseStop = 1;
  2997.     HorseWon = 1;
  2998.     }
  2999.     else if (HorsePosX2 >= 560)
  3000.     {
  3001.     SendClientMessageToAll(ORANGE, "Horse 2 won!");
  3002.     HorseStop = 1;
  3003.     HorseWon = 2;
  3004.     }
  3005.     else if (HorsePosX3 >= 560)
  3006.     {
  3007.     SendClientMessageToAll(ORANGE, "Horse 3 won!");
  3008.     HorseStop = 1;
  3009.     HorseWon = 3;
  3010.     }
  3011.     else if (HorsePosX4 >= 560)
  3012.     {
  3013.     SendClientMessageToAll(ORANGE, "Horse 4 won!");
  3014.     HorseStop = 1;
  3015.     HorseWon = 4;
  3016.     }
  3017.     if (HorseStop == 0)
  3018.     {
  3019.     SetTimer("HorseAnimTimer", 100, 0);
  3020.     }
  3021.     else
  3022.     {
  3023.     HorseStop = 1;
  3024.     RaceStarted = 0;
  3025.     TextDrawDestroy(BG2);
  3026.     TextDrawDestroy(BG1);
  3027.     TextDrawDestroy(Start2);
  3028.     TextDrawDestroy(Finish2);
  3029.     TextDrawDestroy(Horse1);
  3030.     TextDrawDestroy(Horse2);
  3031.     TextDrawDestroy(Horse3);
  3032.     TextDrawDestroy(Horse4);
  3033.     TextDrawDestroy(HorseNum1);
  3034.     TextDrawDestroy(HorseNum2);
  3035.     TextDrawDestroy(HorseNum3);
  3036.     TextDrawDestroy(HorseNum4);
  3037.     TextDrawDestroy(Start);
  3038.     TextDrawDestroy(Finish);
  3039.     for(new i = 0; i < MAX_PLAYERS; i++)
  3040.     {
  3041.         if (BetOnHorse[i] == HorseWon)
  3042.         {
  3043.             new Float:X[MAX_PLAYERS], Float:Y[MAX_PLAYERS], Float:Z[MAX_PLAYERS];
  3044.             GetPlayerPos(i, X[i], Y[i], Z[i]);
  3045.             PlayerPlaySound(i, 5448, X[i], Y[i], Z[i]);
  3046.             SendClientMessage(i, 0xFFFF00FF, "You won! The money you bet have been doubled!");
  3047.             GivePlayerMoney(i, MoneyBet[i] * 2);
  3048.         }
  3049.         else if (MoneyBet[i] != 0 && BetOnHorse[i] != HorseWon)
  3050.         {
  3051.             SendClientMessage(i, 0xFFFF00FF, "Sorry but you didn't win!");
  3052.             new Float:X[MAX_PLAYERS], Float:Y[MAX_PLAYERS], Float:Z[MAX_PLAYERS];
  3053.             GetPlayerPos(i, X[i], Y[i], Z[i]);
  3054.             PlayerPlaySound(i, 5453, X[i], Y[i], Z[i]);
  3055.         }
  3056.         if (Watching[i] == 1)
  3057.         {
  3058.             TogglePlayerControllable(i, 1);
  3059.         }
  3060.     }
  3061. }
  3062. }
  3063.  
  3064. forward HorseStartHideTimer();
  3065.  
  3066. public HorseStartHideTimer()
  3067. {
  3068.     TextDrawHideForAll(CDTextDraw);
  3069. }
  3070.  
  3071. public CuffedPlayers()
  3072. {
  3073.     for(new i = 0; i < MAX_PLAYERS; i++)
  3074.     {
  3075.         if(IsPlayerSpawned(i) && Cuffed[i] == 1) GameTextForPlayer(i, "~w~HANDCUFFED!", 3000, 3);
  3076.     }
  3077.     return true;
  3078. }
  3079. stock sscanf(string[], format[], {Float,_}:...)
  3080. {
  3081.     #if defined isnull
  3082.         if (isnull(string))
  3083.     #else
  3084.         if (string[0] == 0 || (string[0] == 1 && string[1] == 0))
  3085.     #endif
  3086.         {
  3087.             return format[0];
  3088.         }
  3089.     #pragma tabsize 4
  3090.     new
  3091.         formatPos = 0,
  3092.         stringPos = 0,
  3093.         paramPos = 2,
  3094.         paramCount = numargs(),
  3095.         delim = ' ';
  3096.     while (string[stringPos] && string[stringPos] <= ' ')
  3097.     {
  3098.         stringPos++;
  3099.     }
  3100.     while (paramPos < paramCount && string[stringPos])
  3101.     {
  3102.         switch (format[formatPos++])
  3103.         {
  3104.             case '\0':
  3105.             {
  3106.                 return 0;
  3107.             }
  3108.             case 'i', 'd':
  3109.             {
  3110.                 new
  3111.                     neg = 1,
  3112.                     num = 0,
  3113.                     ch = string[stringPos];
  3114.                 if (ch == '-')
  3115.                 {
  3116.                     neg = -1;
  3117.                     ch = string[++stringPos];
  3118.                 }
  3119.                 do
  3120.                 {
  3121.                     stringPos++;
  3122.                     if ('0' <= ch <= '9')
  3123.                     {
  3124.                         num = (num * 10) + (ch - '0');
  3125.                     }
  3126.                     else
  3127.                     {
  3128.                         return -1;
  3129.                     }
  3130.                 }
  3131.                 while ((ch = string[stringPos]) > ' ' && ch != delim);
  3132.                 setarg(paramPos, 0, num * neg);
  3133.             }
  3134.             case 'h', 'x':
  3135.             {
  3136.                 new
  3137.                     num = 0,
  3138.                     ch = string[stringPos];
  3139.                 do
  3140.                 {
  3141.                     stringPos++;
  3142.                     switch (ch)
  3143.                     {
  3144.                         case 'x', 'X':
  3145.                         {
  3146.                             num = 0;
  3147.                             continue;
  3148.                         }
  3149.                         case '0' .. '9':
  3150.                         {
  3151.                             num = (num << 4) | (ch - '0');
  3152.                         }
  3153.                         case 'a' .. 'f':
  3154.                         {
  3155.                             num = (num << 4) | (ch - ('a' - 10));
  3156.                         }
  3157.                         case 'A' .. 'F':
  3158.                         {
  3159.                             num = (num << 4) | (ch - ('A' - 10));
  3160.                         }
  3161.                         default:
  3162.                         {
  3163.                             return -1;
  3164.                         }
  3165.                     }
  3166.                 }
  3167.                 while ((ch = string[stringPos]) > ' ' && ch != delim);
  3168.                 setarg(paramPos, 0, num);
  3169.             }
  3170.             case 'c':
  3171.             {
  3172.                 setarg(paramPos, 0, string[stringPos++]);
  3173.             }
  3174.             case 'f':
  3175.             {
  3176.                 setarg(paramPos, 0, _:floatstr(string[stringPos]));
  3177.             }
  3178.             case 'p':
  3179.             {
  3180.                 delim = format[formatPos++];
  3181.                 continue;
  3182.             }
  3183.             case '\'':
  3184.             {
  3185.                 new
  3186.                     end = formatPos - 1,
  3187.                     ch;
  3188.                 while ((ch = format[++end]) && ch != '\'') {}
  3189.                 if (!ch)
  3190.                 {
  3191.                     return -1;
  3192.                 }
  3193.                 format[end] = '\0';
  3194.                 if ((ch = strfind(string, format[formatPos], false, stringPos)) == -1)
  3195.                 {
  3196.                     if (format[end + 1])
  3197.                     {
  3198.                         return -1;
  3199.                     }
  3200.                     return 0;
  3201.                 }
  3202.                 format[end] = '\'';
  3203.                 stringPos = ch + (end - formatPos);
  3204.                 formatPos = end + 1;
  3205.             }
  3206.             case 'u':
  3207.             {
  3208.                 new
  3209.                     end = stringPos - 1,
  3210.                     id = 0,
  3211.                     bool:num = true,
  3212.                     ch;
  3213.                 while ((ch = string[++end]) && ch != delim)
  3214.                 {
  3215.                     if (num)
  3216.                     {
  3217.                         if ('0' <= ch <= '9')
  3218.                         {
  3219.                             id = (id * 10) + (ch - '0');
  3220.                         }
  3221.                         else
  3222.                         {
  3223.                             num = false;
  3224.                         }
  3225.                     }
  3226.                 }
  3227.                 if (num && IsPlayerConnected(id))
  3228.                 {
  3229.                     setarg(paramPos, 0, id);
  3230.                 }
  3231.                 else
  3232.                 {
  3233.                     #if !defined foreach
  3234.                         #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
  3235.                         #define __SSCANF_FOREACH__
  3236.                     #endif
  3237.                     string[end] = '\0';
  3238.                     num = false;
  3239.                     new
  3240.                         name[MAX_PLAYER_NAME];
  3241.                     id = end - stringPos;
  3242.                     foreach (Player, playerid)
  3243.                     {
  3244.                         GetPlayerName(playerid, name, sizeof (name));
  3245.                         if (!strcmp(name, string[stringPos], true, id))
  3246.                         {
  3247.                             setarg(paramPos, 0, playerid);
  3248.                             num = true;
  3249.                             break;
  3250.                         }
  3251.                     }
  3252.                     if (!num)
  3253.                     {
  3254.                         setarg(paramPos, 0, INVALID_PLAYER_ID);
  3255.                     }
  3256.                     string[end] = ch;
  3257.                     #if defined __SSCANF_FOREACH__
  3258.                         #undef foreach
  3259.                         #undef __SSCANF_FOREACH__
  3260.                     #endif
  3261.                 }
  3262.                 stringPos = end;
  3263.             }
  3264.             case 's', 'z':
  3265.             {
  3266.                 new
  3267.                     i = 0,
  3268.                     ch;
  3269.                 if (format[formatPos])
  3270.                 {
  3271.                     while ((ch = string[stringPos++]) && ch != delim)
  3272.                     {
  3273.                         setarg(paramPos, i++, ch);
  3274.                     }
  3275.                     if (!i)
  3276.                     {
  3277.                         return -1;
  3278.                     }
  3279.                 }
  3280.                 else
  3281.                 {
  3282.                     while ((ch = string[stringPos++]))
  3283.                     {
  3284.                         setarg(paramPos, i++, ch);
  3285.                     }
  3286.                 }
  3287.                 stringPos--;
  3288.                 setarg(paramPos, i, '\0');
  3289.             }
  3290.             default:
  3291.             {
  3292.                 continue;
  3293.             }
  3294.         }
  3295.         while (string[stringPos] && string[stringPos] != delim && string[stringPos] > ' ')
  3296.         {
  3297.             stringPos++;
  3298.         }
  3299.         while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= ' '))
  3300.         {
  3301.             stringPos++;
  3302.         }
  3303.         paramPos++;
  3304.     }
  3305.     do
  3306.     {
  3307.         if ((delim = format[formatPos++]) > ' ')
  3308.         {
  3309.             if (delim == '\'')
  3310.             {
  3311.                 while ((delim = format[formatPos++]) && delim != '\'') {}
  3312.             }
  3313.             else if (delim != 'z')
  3314.             {
  3315.                 return delim;
  3316.             }
  3317.         }
  3318.     }
  3319.     while (delim > ' ');
  3320.     return 0;
  3321. }
  3322. public Float:GetDistanceBetweenPlayers(p1,p2)
  3323. {
  3324.     new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
  3325.     if(!IsPlayerConnected(p1) || !IsPlayerConnected(p2))
  3326.     {
  3327.         return -1.00;
  3328.     }
  3329.     GetPlayerPos(p1,x1,y1,z1);
  3330.     GetPlayerPos(p2,x2,y2,z2);
  3331.     return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
  3332. }
  3333.  
  3334. stock IsPlayerAimingAtPlayer(playerid, targetplayerid) {
  3335.   new Float:x, Float:y, Float:z;
  3336.   GetPlayerPos(targetplayerid, x, y, z);
  3337.   return IsPlayerAimingAt(playerid, x, y, z, 1.1);
  3338. }
  3339.  
  3340. Float:DistanceCameraTargetToLocation(Float:CamX, Float:CamY, Float:CamZ, Float:ObjX, Float:ObjY, Float:ObjZ, Float:FrX, Float:FrY, Float:FrZ) {
  3341.  
  3342.     new Float:TGTDistance;
  3343.  
  3344.     TGTDistance = floatsqroot((CamX - ObjX) * (CamX - ObjX) + (CamY - ObjY) * (CamY - ObjY) + (CamZ - ObjZ) * (CamZ - ObjZ));
  3345.  
  3346.     new Float:tmpX, Float:tmpY, Float:tmpZ;
  3347.  
  3348.     tmpX = FrX * TGTDistance + CamX;
  3349.     tmpY = FrY * TGTDistance + CamY;
  3350.     tmpZ = FrZ * TGTDistance + CamZ;
  3351.  
  3352.     return floatsqroot((tmpX - ObjX) * (tmpX - ObjX) + (tmpY - ObjY) * (tmpY - ObjY) + (tmpZ - ObjZ) * (tmpZ - ObjZ));
  3353. }
  3354.  
  3355. stock Float:GetPointAngleToPoint(Float:x2, Float:y2, Float:X, Float:Y) {
  3356.  
  3357.   new Float:DX, Float:DY;
  3358.   new Float:angle;
  3359.  
  3360.   DX = floatabs(floatsub(x2,X));
  3361.   DY = floatabs(floatsub(y2,Y));
  3362.  
  3363.   if (DY == 0.0 || DX == 0.0) {
  3364.     if(DY == 0 && DX > 0) angle = 0.0;
  3365.     else if(DY == 0 && DX < 0) angle = 180.0;
  3366.     else if(DY > 0 && DX == 0) angle = 90.0;
  3367.     else if(DY < 0 && DX == 0) angle = 270.0;
  3368.     else if(DY == 0 && DX == 0) angle = 0.0;
  3369.   }
  3370.   else {
  3371.     angle = atan(DX/DY);
  3372.  
  3373.     if(X > x2 && Y <= y2) angle += 90.0;
  3374.     else if(X <= x2 && Y < y2) angle = floatsub(90.0, angle);
  3375.     else if(X < x2 && Y >= y2) angle -= 90.0;
  3376.     else if(X >= x2 && Y > y2) angle = floatsub(270.0, angle);
  3377.   }
  3378.  
  3379.   return floatadd(angle, 90.0);
  3380. }
  3381.  
  3382. stock GetXYInFrontOfPoint(&Float:x, &Float:y, Float:angle, Float:distance) {
  3383.     x += (distance * floatsin(-angle, degrees));
  3384.     y += (distance * floatcos(-angle, degrees));
  3385. }
  3386.  
  3387. stock IsPlayerAimingAt(playerid, Float:x, Float:y, Float:z, Float:radius) {
  3388.     new Float:camera_x,Float:camera_y,Float:camera_z,Float:vector_x,Float:vector_y,Float:vector_z;
  3389.     GetPlayerCameraPos(playerid, camera_x, camera_y, camera_z);
  3390.     GetPlayerCameraFrontVector(playerid, vector_x, vector_y, vector_z);
  3391.     new Float:vertical, Float:horizontal;
  3392.  
  3393.     switch (GetPlayerWeapon(playerid))
  3394.     {
  3395.       case 34,35,36: {
  3396.       if (DistanceCameraTargetToLocation(camera_x, camera_y, camera_z, x, y, z, vector_x, vector_y, vector_z) < radius) return true;
  3397.       return false;
  3398.       }
  3399.       case 30,31: {vertical = 4.0; horizontal = -1.6;}
  3400.       case 33: {vertical = 2.7; horizontal = -1.0;}
  3401.       default: {vertical = 6.0; horizontal = -2.2;}
  3402.     }
  3403.  
  3404.     new Float:angle = GetPointAngleToPoint(0, 0, floatsqroot(vector_x*vector_x+vector_y*vector_y), vector_z) - 270.0;
  3405.     new Float:resize_x, Float:resize_y, Float:resize_z = floatsin(angle+vertical, degrees);
  3406.     GetXYInFrontOfPoint(resize_x, resize_y, GetPointAngleToPoint(0, 0, vector_x, vector_y)+horizontal, floatcos(angle+vertical, degrees));
  3407.  
  3408.     if (DistanceCameraTargetToLocation(camera_x, camera_y, camera_z, x, y, z, resize_x, resize_y, resize_z) < radius) return true;
  3409.     return false;
  3410. }
  3411.  
  3412. Announce(const str[])
  3413. {
  3414. GameTextForAll(str,5000,0);
  3415. }
  3416.  
  3417. SetPlayerJailed(playerid,bool:jailed)
  3418. {
  3419. if(jailed == true) {
  3420. new spawn = random(sizeof(PrisonSpawn));
  3421. ResetPlayerWeapons(playerid);
  3422. SetPlayerInterior(playerid,3);
  3423. SetPlayerPos(playerid, PrisonSpawn[spawn][0], PrisonSpawn[spawn][1], PrisonSpawn[spawn][2]);
  3424. SetPlayerFacingAngle(playerid, PrisonSpawn[spawn][3]);
  3425. SetCameraBehindPlayer(playerid);
  3426. SendClientMessage(playerid,-1,"You have been jailed.");
  3427. jailed = true;
  3428. } else {
  3429. SetPlayerPos(playerid,2287.745971,2424.350997,16.171875);
  3430. SetPlayerInterior(playerid,0);
  3431. SendClientMessage(playerid,-1,"You have been unjailed.");
  3432. jailed = false;
  3433. }
  3434. }
  3435. //============================================================================================================================================================//
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement