Bulletje

Untitled

Jan 21st, 2017
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 45.99 KB | None | 0 0
  1. /*
  2. Script by: Bullet
  3. Map by: Bullet
  4. Mission Base: Team Deathmatch
  5. Mission Type: Team Deathmatch
  6. Mission Type ID: 6
  7. */
  8. //==============================================================================
  9. // Includes
  10. //==============================================================================
  11. #include <a_samp>
  12. #include <crashdetect>
  13. #include <float>
  14. #include <fixes2>
  15.  
  16. #include "..\filterscripts\MM\stuff\defines"
  17. #include "..\filterscripts\MM\stuff\serverkeymsg"
  18.  
  19. //==============================================================================
  20. // Defines
  21. //==============================================================================
  22.  
  23. #define MISSION_NAME "El Quebrados"
  24. #define Health 99.0
  25. #define TEAM_DEFEND_NAME "Africans"
  26. #define TEAM_ATTACK_NAME "Americans"
  27. #define MAX_MAP_OBJECTS 321
  28. #define VEHICLE_HEALTH 0
  29. #define CLASS_POSTION 4141.5347,2121.2827,23.2835
  30. #define CLASS_CAMERA 4142.8501,2116.5156,23.2835
  31. #define CLASS_FACING_AGNLE 198.6635
  32. #define SINKING false
  33. #define SPAWN_PROTECTION true
  34.  
  35. //==============================================================================
  36. // Per mission functions
  37. //==============================================================================
  38.  
  39. enum ped_enum
  40. {
  41. TeamID,
  42. Skin,
  43. Float:SpawnX,
  44. Float:SpawnY,
  45. Float:SpawnZ,
  46. Float:SpawnAngle,
  47. SpawnInterior,
  48. VirtualWorld,
  49. Weapon1,
  50. Ammo1,
  51. Weapon2,
  52. Ammo2,
  53. Weapon3,
  54. Ammo3,
  55. };
  56.  
  57.  
  58. new PedInfo[][ped_enum] = {
  59.  
  60. {TEAM_ATTACK, 287, -2134.5601,2089.0720,24.0328,156.8153,0,0,WEAPON_DEAGLE,210, WEAPON_TEC9,180, WEAPON_M4,300},
  61. {TEAM_DEFEND, 142, -2336.5786,1922.5565,24.1813,36.831,0,0,WEAPON_DEAGLE,210, WEAPON_UZI,180, WEAPON_M4,400}
  62. };
  63.  
  64. #if SINKING == true
  65. new MapSkining[2];
  66. #endif
  67.  
  68. #if MAX_MAP_OBJECTS != 0
  69. new Object[MAX_MAP_OBJECTS];
  70.  
  71. CreateMap()
  72. {
  73. Object[0] = CreateObject(11511,-2361.5000000,1962.5000000,37.4000000,0.0000000,0.0000000,0.0000000); //
  74. Object[1] = CreateObject(11511,-2162.5996100,2006.5000000,37.4000000,0.0000000,0.0000000,180.0000000); //
  75. Object[2] = CreateObject(11513,-2438.3999000,1893.0000000,44.4000000,0.0000000,0.0000000,0.0000000); //
  76. Object[3] = CreateObject(11513,-2467.6001000,1948.5999800,44.4000000,0.0000000,0.0000000,330.0000000); //
  77. Object[4] = CreateObject(11513,-2463.5000000,2046.0999800,44.4000000,0.0000000,0.0000000,319.9960000); //
  78. Object[5] = CreateObject(11513,-2373.3999000,1848.5999800,44.4000000,0.0000000,0.0000000,69.9930000); //
  79. Object[6] = CreateObject(11513,-2295.5996100,1876.8994100,44.4000000,0.0000000,0.0000000,103.9860000); //
  80. Object[7] = CreateObject(11513,-2207.5000000,1909.0000000,44.4000000,0.0000000,343.9980000,41.9840000); //
  81. Object[8] = CreateObject(11513,-2124.0996100,1904.0996100,44.4000000,0.0000000,0.0000000,65.9840000); //
  82. Object[9] = CreateObject(11513,-2046.6992200,1939.2998000,44.4000000,0.0000000,0.0000000,119.9820000); //
  83. Object[10] = CreateObject(11513,-2053.5996100,2003.7998000,44.4000000,0.0000000,0.0000000,165.9760000); //
  84. Object[11] = CreateObject(11513,-2086.2998000,2090.0996100,44.4000000,0.0000000,0.0000000,171.9800000); //
  85. Object[12] = CreateObject(11513,-2139.6999500,2124.8000500,44.4000000,0.0000000,0.0000000,247.9800000); //
  86. Object[13] = CreateObject(11513,-2405.1999500,2089.5000000,44.4000000,0.0000000,0.0000000,237.9780000); //
  87. Object[14] = CreateObject(11513,-2327.8994100,2066.2998000,44.4000000,0.0000000,0.0000000,209.9710000); //
  88. Object[15] = CreateObject(11513,-2255.1001000,2096.3999000,44.4000000,0.0000000,0.0000000,299.9710000); //
  89. Object[16] = CreateObject(11513,-2213.3999000,2113.6999500,44.4000000,0.0000000,358.0000000,247.9780000); //
  90. Object[17] = CreateObject(12853,-2332.6999500,1971.8000500,25.2000000,0.0000000,0.0000000,90.0000000); //
  91. Object[18] = CreateObject(4199,-2122.1001000,1978.6999500,25.3000000,0.0000000,0.0000000,0.0000000); //
  92. Object[19] = CreateObject(5299,-2123.1999500,2003.8000500,23.2000000,0.0000000,0.0000000,0.0000000); //
  93. Object[20] = CreateObject(3866,-2132.6992200,2002.1992200,31.0000000,0.0000000,0.0000000,0.0000000); //
  94. Object[21] = CreateObject(3887,-2200.1001000,2093.8999000,31.0000000,0.0000000,0.0000000,90.0000000); //
  95. Object[22] = CreateObject(11088,-2321.6001000,1907.5999800,29.6000000,0.0000000,0.0000000,90.0000000); //
  96. Object[23] = CreateObject(11425,-2138.6999500,1931.0999800,25.0000000,0.0000000,0.0000000,0.0000000); //
  97. Object[24] = CreateObject(11428,-2352.0000000,1924.0000000,28.0000000,0.0000000,0.0000000,0.0000000); //
  98. Object[25] = CreateObject(11440,-2139.3000500,1967.3000500,22.6000000,0.0000000,0.0000000,0.0000000); //
  99. Object[26] = CreateObject(11441,-2190.5000000,1936.5000000,23.2000000,0.0000000,0.0000000,89.9970000); //
  100. Object[27] = CreateObject(11442,-2147.8999000,1937.3000500,23.2000000,0.0000000,0.0000000,180.0000000); //
  101. Object[28] = CreateObject(11443,-2211.6001000,1967.1999500,23.2000000,0.0000000,0.0000000,0.0000000); //
  102. Object[29] = CreateObject(13295,-2403.7998000,1971.0996100,29.5000000,0.0000000,0.0000000,0.0000000); //
  103. Object[30] = CreateObject(13190,-2317.3994100,1991.5996100,26.9000000,0.0000000,0.0000000,0.0000000); //
  104. Object[31] = CreateObject(11010,-2443.0000000,2003.1999500,29.0000000,0.0000000,0.0000000,0.0000000); //
  105. Object[32] = CreateObject(11543,-2191.1999500,1996.4000200,30.7000000,0.0000000,0.0000000,180.0000000); //
  106. Object[33] = CreateObject(13059,-2220.5000000,2042.6999500,27.2000000,0.0000000,0.0000000,180.0000000); //
  107. Object[34] = CreateObject(16398,-2209.8999000,1989.1999500,23.2000000,0.0000000,0.0000000,180.0000000); //
  108. Object[35] = CreateObject(16400,-2195.6992200,1966.8994100,23.2000000,0.0000000,0.0000000,90.0000000); //
  109. Object[36] = CreateObject(3091,-2212.5000000,2032.6999500,23.8000000,0.0000000,0.0000000,278.0000000); //
  110. Object[37] = CreateObject(3091,-2212.1999500,2027.3000500,23.7000000,0.0000000,0.0000000,267.9980000); //
  111. Object[38] = CreateObject(3091,-2212.5000000,2021.5999800,23.7000000,0.0000000,0.0000000,267.9950000); //
  112. Object[39] = CreateObject(3091,-2213.0000000,2015.9000200,23.8000000,0.0000000,0.0000000,257.9950000); //
  113. Object[40] = CreateObject(952,-2385.5000000,2033.1999500,24.5000000,0.0000000,0.0000000,268.0000000); //
  114. Object[41] = CreateObject(1365,-2119.0000000,2061.6001000,24.3000000,0.0000000,0.0000000,0.0000000); //
  115. Object[42] = CreateObject(1358,-2309.3999000,1957.5999800,24.3000000,0.0000000,0.0000000,50.0000000); //
  116. Object[43] = CreateObject(12957,-2315.5000000,1957.1999500,24.0000000,0.0000000,0.0000000,0.0000000); //
  117. Object[44] = CreateObject(12954,-2214.1999500,2086.3999000,34.7000000,0.0000000,0.0000000,90.0000000); //
  118. Object[45] = CreateObject(1236,-2174.0000000,2086.6001000,29.6000000,0.0000000,0.0000000,90.0000000); //
  119. Object[46] = CreateObject(1227,-2357.0000000,1964.4000200,24.0000000,0.0000000,0.0000000,270.0000000); //
  120. Object[47] = CreateObject(1227,-2347.8000500,1956.6999500,24.0000000,0.0000000,0.0000000,0.0000000); //
  121. Object[48] = CreateObject(922,-2355.6999500,1958.5000000,24.0000000,0.0000000,0.0000000,318.0000000); //
  122. Object[49] = CreateObject(942,-2380.3000500,1905.1999500,34.8000000,0.0000000,0.0000000,0.0000000); //
  123. Object[50] = CreateObject(3593,-2351.0000000,1949.9000200,23.7000000,0.0000000,0.0000000,0.0000000); //
  124. Object[51] = CreateObject(3594,-2401.5000000,2009.0000000,23.8000000,0.0000000,0.0000000,160.0000000); //
  125. Object[52] = CreateObject(18246,-2136.8000500,2038.9000200,25.5000000,0.0000000,0.0000000,180.0000000); //
  126. Object[53] = CreateObject(18247,-2155.6001000,2049.8000500,27.9000000,0.0000000,0.0000000,332.0000000); //
  127. Object[54] = CreateObject(10985,-2184.0000000,2059.5000000,23.5000000,0.0000000,0.0000000,114.0000000); //
  128. Object[55] = CreateObject(10985,-2121.3999000,2034.5000000,23.5000000,0.0000000,0.0000000,206.0000000); //
  129. Object[56] = CreateObject(10985,-2145.6992200,1946.0000000,23.5000000,0.0000000,0.0000000,205.9940000); //
  130. Object[57] = CreateObject(10985,-2310.1999500,1936.4000200,23.5000000,0.0000000,0.0000000,57.9990000); //
  131. Object[58] = CreateObject(8229,-2146.1999500,1990.5999800,25.9000000,0.0000000,0.0000000,270.0000000); //
  132. Object[59] = CreateObject(8229,-2116.8994100,2001.6992200,25.9000000,0.0000000,0.0000000,90.0000000); //
  133. Object[60] = CreateObject(8229,-2177.5996100,1963.0000000,25.9000000,0.0000000,0.0000000,0.0000000); //
  134. Object[61] = CreateObject(8229,-2166.5000000,1981.0999800,25.9000000,0.0000000,0.0000000,90.0000000); //
  135. Object[62] = CreateObject(11544,-2169.1001000,1981.6999500,25.1000000,0.0000000,0.0000000,0.0000000); //
  136. Object[63] = CreateObject(11479,-2191.3999000,2010.3000500,23.2000000,0.0000000,0.0000000,180.0000000); //
  137. Object[64] = CreateObject(5463,-2390.3999000,1928.6999500,31.9000000,0.0000000,0.0000000,0.0000000); //
  138. Object[65] = CreateObject(5463,-2390.3999000,1913.6999500,21.9000000,0.0000000,0.0000000,0.0000000); //
  139. Object[66] = CreateObject(1676,-2326.8000500,1960.8000500,24.9000000,0.0000000,0.0000000,0.0000000); //
  140. Object[67] = CreateObject(1676,-2338.8000500,1960.8000500,24.9000000,0.0000000,0.0000000,0.0000000); //
  141. Object[68] = CreateObject(3425,-2387.1001000,1996.9000200,34.6000000,0.0000000,0.0000000,0.0000000); //
  142. Object[69] = CreateObject(8229,-2378.6001000,1994.8000500,25.9000000,0.0000000,0.0000000,90.0000000); //
  143. Object[70] = CreateObject(8229,-2346.6001000,2005.5999800,25.9000000,0.0000000,0.0000000,180.0000000); //
  144. Object[71] = CreateObject(2892,-2378.8000500,2015.9000200,23.0000000,0.0000000,0.0000000,0.0000000); //
  145. Object[72] = CreateObject(1365,-2147.5996100,2041.0000000,24.3000000,0.0000000,0.0000000,289.9950000); //
  146. Object[73] = CreateObject(1365,-2336.8000500,2001.9000200,24.3000000,0.0000000,0.0000000,97.9950000); //
  147. Object[74] = CreateObject(8229,-2389.6992200,2005.8994100,25.9000000,0.0000000,0.0000000,179.9950000); //
  148. Object[75] = CreateObject(8229,-2357.6992200,1994.3994100,25.9000000,0.0000000,0.0000000,269.9950000); //
  149. Object[76] = CreateObject(8229,-2324.3999000,2005.6999500,25.9000000,0.0000000,0.0000000,179.9950000); //
  150. Object[77] = CreateObject(942,-2401.1999500,1935.8000500,44.8000000,0.0000000,0.0000000,90.0000000); //
  151. Object[78] = CreateObject(942,-2400.8999000,1924.0999800,29.9000000,0.0000000,0.0000000,110.0000000); //
  152. Object[79] = CreateObject(3594,-2396.8000500,1961.3000500,23.8000000,0.0000000,0.0000000,23.9940000); //
  153. Object[80] = CreateObject(3594,-2332.0000000,1980.9000200,23.8000000,0.0000000,0.0000000,273.9990000); //
  154. Object[81] = CreateObject(3594,-2388.1999500,1935.0999800,23.8000000,0.0000000,0.0000000,273.9990000); //
  155. Object[82] = CreateObject(1226,-2363.3999000,1956.0000000,26.9000000,0.0000000,0.0000000,0.0000000); //
  156. Object[83] = CreateObject(1226,-2363.3000500,2005.5999800,26.9000000,0.0000000,0.0000000,0.0000000); //
  157. Object[84] = CreateObject(1226,-2363.5000000,1980.4000200,26.9000000,0.0000000,0.0000000,0.0000000); //
  158. Object[85] = CreateObject(1358,-2335.6999500,1934.9000200,24.4000000,0.0000000,0.0000000,359.9990000); //
  159. Object[86] = CreateObject(1358,-2380.1001000,1936.5999800,38.7000000,0.0000000,0.0000000,359.9950000); //
  160. Object[87] = CreateObject(1358,-2395.8999000,1913.8000500,33.6000000,0.0000000,0.0000000,89.9950000); //
  161. Object[88] = CreateObject(1358,-2407.3999000,1998.0999800,24.4000000,0.0000000,0.0000000,139.9950000); //
  162. Object[89] = CreateObject(16084,-2268.8999000,1945.8000500,18.5000000,0.0000000,349.0000000,16.0000000); //
  163. Object[90] = CreateObject(16085,-2086.1999500,1958.5000000,24.0000000,0.0000000,0.0000000,173.9960000); //
  164. Object[91] = CreateObject(18262,-2179.3000500,2002.9000200,30.4000000,0.0000000,0.0000000,90.0000000); //
  165. Object[92] = CreateObject(18451,-2329.6999500,2020.3000500,23.5000000,0.0000000,0.0000000,70.0000000); //
  166. Object[93] = CreateObject(18565,-2414.6001000,2030.6999500,24.4000000,0.0000000,0.0000000,0.0000000); //
  167. Object[94] = CreateObject(18474,-2364.0000000,2040.5999800,25.7000000,0.0000000,0.0000000,38.0000000); //
  168. Object[95] = CreateObject(3286,-2315.8000500,1972.1999500,27.9000000,0.0000000,0.0000000,0.0000000); //
  169. Object[96] = CreateObject(13002,-2347.1001000,2062.1001000,26.9000000,0.0000000,0.0000000,270.0000000); //
  170. Object[97] = CreateObject(13367,-2281.6999500,1958.4000200,35.2000000,0.0000000,0.0000000,0.0000000); //
  171. Object[98] = CreateObject(8229,-2287.6999500,1962.3000500,25.9000000,0.0000000,0.0000000,269.9950000); //
  172. Object[99] = CreateObject(8229,-2276.5000000,1951.1999500,25.5000000,0.0000000,0.0000000,359.9950000); //
  173. Object[100] = CreateObject(16108,-2181.8000500,1924.9000200,27.5000000,0.0000000,0.0000000,270.0000000); //
  174. Object[101] = CreateObject(16406,-2186.8000500,1926.3000500,27.8000000,0.0000000,0.0000000,0.0000000); //
  175. Object[102] = CreateObject(17000,-2192.3000500,1982.4000200,23.0000000,0.0000000,0.0000000,0.0000000); //
  176. Object[103] = CreateObject(17039,-2436.3999000,2034.1999500,23.1000000,0.0000000,0.0000000,0.0000000); //
  177. Object[104] = CreateObject(18565,-2425.6001000,2042.1999500,24.4000000,0.0000000,0.0000000,0.0000000); //
  178. Object[105] = CreateObject(18565,-2446.8000500,2035.0999800,24.4000000,0.0000000,0.0000000,98.0000000); //
  179. Object[106] = CreateObject(18565,-2439.3999000,2055.0000000,24.4000000,0.0000000,0.0000000,185.9980000); //
  180. Object[107] = CreateObject(18565,-2397.6999500,2035.4000200,24.4000000,0.0000000,0.0000000,269.9930000); //
  181. Object[108] = CreateObject(5816,-2147.3999000,1995.8000500,27.7000000,0.0000000,0.0000000,90.0000000); //
  182. Object[109] = CreateObject(3866,-2180.0000000,2043.6999500,31.0000000,0.0000000,0.0000000,180.0000000); //
  183. Object[110] = CreateObject(971,-2171.8000500,2090.3000500,25.0000000,0.0000000,0.0000000,110.0000000); //
  184. Object[111] = CreateObject(4189,-2199.8999000,2070.8000500,23.8000000,0.0000000,0.0000000,324.0000000); //
  185. Object[112] = CreateObject(3095,-2126.8999000,2083.5000000,25.0000000,90.0000000,0.0000000,0.0000000); //
  186. Object[113] = CreateObject(3095,-2117.8994100,2083.5000000,25.0000000,90.0000000,0.0000000,0.0000000); //
  187. Object[114] = CreateObject(3095,-2146.0000000,2083.5000000,25.0000000,90.0000000,0.0000000,0.0000000); //
  188. Object[115] = CreateObject(3095,-2155.0000000,2083.5000000,25.0000000,90.0000000,0.0000000,0.0000000); //
  189. Object[116] = CreateObject(3095,-2113.8999000,2087.5000000,25.0000000,90.0000000,180.0000000,270.0000000); //
  190. Object[117] = CreateObject(3095,-2113.8999000,2096.5000000,25.0000000,90.0000000,179.9950000,270.0000000); //
  191. Object[118] = CreateObject(3095,-2113.8999000,2105.5000000,25.0000000,90.0000000,179.9950000,270.0000000); //
  192. Object[119] = CreateObject(3095,-2113.8999000,2114.3000500,25.0000000,90.0000000,179.9950000,270.0000000); //
  193. Object[120] = CreateObject(3095,-2159.0000000,2087.5000000,25.0000000,90.0000000,180.0050000,90.0000000); //
  194. Object[121] = CreateObject(3095,-2159.0000000,2114.3000500,25.0000000,90.0000000,180.0050000,90.0000000); //
  195. Object[122] = CreateObject(3095,-2159.0000000,2105.3000500,25.0000000,90.0000000,180.0050000,90.0000000); //
  196. Object[123] = CreateObject(3268,-2437.6999500,1979.0000000,23.2000000,0.0000000,0.0000000,180.0000000); //
  197. Object[124] = CreateObject(3271,-2265.5000000,1970.0000000,23.0000000,0.0000000,0.0000000,82.0000000); //
  198. Object[125] = CreateObject(3279,-2127.1999500,2088.3000500,23.0000000,0.0000000,0.0000000,90.0000000); //
  199. Object[126] = CreateObject(3390,-2389.3999000,1958.5000000,23.2000000,0.0000000,0.0000000,180.0000000); //
  200. Object[127] = CreateObject(3391,-2380.5000000,1968.5000000,23.2000000,0.0000000,0.0000000,0.0000000); //
  201. Object[128] = CreateObject(8229,-2396.5000000,1956.1999500,25.9000000,0.0000000,0.0000000,359.9950000); //
  202. Object[129] = CreateObject(8229,-2394.6001000,1956.1999500,25.9000000,0.0000000,0.0000000,359.9890000); //
  203. Object[130] = CreateObject(3791,-2379.6999500,1983.6999500,23.6000000,0.0000000,0.0000000,90.0000000); //
  204. Object[131] = CreateObject(3791,-2379.6999500,1980.4000200,23.6000000,0.0000000,0.0000000,90.0000000); //
  205. Object[132] = CreateObject(3791,-2379.6999500,1981.9000200,24.5000000,0.0000000,0.0000000,90.0000000); //
  206. Object[133] = CreateObject(3791,-2384.1999500,1957.1999500,23.6000000,0.0000000,0.0000000,0.0000000); //
  207. Object[134] = CreateObject(3791,-2384.1992200,1957.1992200,24.5000000,0.0000000,0.0000000,0.0000000); //
  208. Object[135] = CreateObject(16093,-2138.1001000,2112.1001000,23.1000000,0.0000000,0.0000000,0.0000000); //
  209. Object[136] = CreateObject(16641,-2124.0000000,2103.8000500,24.6000000,0.0000000,0.0000000,0.0000000); //
  210. Object[137] = CreateObject(10985,-2261.8999000,2024.8000500,23.5000000,0.0000000,0.0000000,205.9940000); //
  211. Object[138] = CreateObject(8229,-2247.6001000,2017.9000200,25.5000000,0.0000000,0.0000000,180.0000000); //
  212. Object[139] = CreateObject(8229,-2269.6999500,2017.8000500,25.5000000,0.0000000,0.0000000,179.9950000); //
  213. Object[140] = CreateObject(8229,-2236.5000000,2006.8000500,25.9000000,0.0000000,0.0000000,90.0000000); //
  214. Object[141] = CreateObject(8229,-2236.5000000,1962.1999500,25.9000000,0.0000000,0.0000000,90.0000000); //
  215. Object[142] = CreateObject(8229,-2254.3999000,1951.0999800,25.5000000,0.0000000,0.0000000,359.9890000); //
  216. Object[143] = CreateObject(8229,-2247.6001000,1951.0999800,25.5000000,0.0000000,0.0000000,359.9890000); //
  217. Object[144] = CreateObject(13190,-2252.8000500,2007.0000000,26.5000000,0.0000000,0.0000000,90.0000000); //
  218. Object[145] = CreateObject(10985,-2264.5000000,2015.9000200,23.5000000,0.0000000,0.0000000,205.9940000); //
  219. Object[146] = CreateObject(8229,-2288.1001000,2006.6999500,25.9000000,0.0000000,0.0000000,269.9950000); //
  220. Object[147] = CreateObject(8229,-2277.0000000,2017.8000500,25.5000000,0.0000000,0.0000000,179.9950000); //
  221. Object[148] = CreateObject(3578,-2164.1001000,2080.1999500,24.0000000,0.0000000,0.0000000,36.0000000); //
  222. Object[149] = CreateObject(3578,-2144.6999500,2077.6001000,23.8000000,0.0000000,0.0000000,143.9980000); //
  223. Object[150] = CreateObject(3578,-2128.1001000,2077.6999500,23.8000000,0.0000000,0.0000000,203.9920000); //
  224. Object[151] = CreateObject(10985,-2201.6001000,1947.0000000,23.5000000,0.0000000,0.0000000,205.9940000); //
  225. Object[152] = CreateObject(10831,-2082.3000500,1971.9000200,28.1000000,0.0000000,0.0000000,0.0000000); //
  226. Object[153] = CreateObject(7016,-2400.8999000,1843.1999500,23.1000000,0.0000000,0.0000000,0.0000000); //
  227. Object[154] = CreateObject(7017,-2345.6001000,1884.0999800,23.2000000,0.0000000,0.0000000,0.0000000); //
  228. Object[155] = CreateObject(3287,-2400.6001000,1879.9000200,27.8000000,0.0000000,0.0000000,90.0000000); //
  229. Object[156] = CreateObject(3287,-2400.6001000,1874.0000000,27.8000000,0.0000000,0.0000000,90.0000000); //
  230. Object[157] = CreateObject(3287,-2400.6001000,1868.0999800,27.9000000,0.0000000,0.0000000,90.0000000); //
  231. Object[158] = CreateObject(3214,-2377.1999500,1878.8000500,32.2000000,0.0000000,0.0000000,0.0000000); //
  232. Object[159] = CreateObject(3255,-2375.3999000,1861.0000000,23.1000000,0.0000000,0.0000000,90.0000000); //
  233. Object[160] = CreateObject(3256,-2401.0000000,1860.9000200,23.2000000,0.0000000,0.0000000,236.0000000); //
  234. Object[161] = CreateObject(3637,-2330.5000000,1877.0999800,31.3000000,0.0000000,0.0000000,270.0000000); //
  235. Object[162] = CreateObject(16318,-2176.1999500,1960.1999500,25.7000000,0.0000000,0.0000000,0.0000000); //
  236. Object[163] = CreateObject(944,-2092.3999000,1962.0999800,24.1000000,0.0000000,0.0000000,320.0000000); //
  237. Object[164] = CreateObject(942,-2077.1999500,1962.8000500,25.7000000,0.0000000,0.0000000,90.0000000); //
  238. Object[165] = CreateObject(923,-2069.5000000,1964.5999800,24.1000000,0.0000000,0.0000000,0.0000000); //
  239. Object[166] = CreateObject(922,-2079.8999000,1979.8000500,24.1000000,0.0000000,0.0000000,90.0000000); //
  240. Object[167] = CreateObject(3066,-2094.8000500,1979.9000200,24.1000000,0.0000000,0.0000000,0.0000000); //
  241. Object[168] = CreateObject(18260,-2087.1999500,2001.6999500,24.8000000,0.0000000,0.0000000,180.0000000); //
  242. Object[169] = CreateObject(925,-2087.1999500,1959.5000000,24.2000000,0.0000000,0.0000000,90.0000000); //
  243. Object[170] = CreateObject(1348,-2069.6001000,1963.5000000,23.9000000,0.0000000,0.0000000,0.0000000); //
  244. Object[171] = CreateObject(2669,-2069.8999000,1982.5999800,24.5000000,0.0000000,0.0000000,0.0000000); //
  245. Object[172] = CreateObject(3568,-2087.6999500,2005.1999500,25.5000000,0.0000000,0.0000000,270.0000000); //
  246. Object[173] = CreateObject(3565,-2095.8999000,1990.5000000,24.5000000,0.0000000,0.0000000,290.0000000); //
  247. Object[174] = CreateObject(925,-2080.8999000,1983.0999800,24.2000000,0.0000000,0.0000000,180.0000000); //
  248. Object[175] = CreateObject(922,-2070.6999500,1975.5999800,24.1000000,0.0000000,0.0000000,182.0000000); //
  249. Object[176] = CreateObject(922,-2078.6999500,1976.3000500,24.1000000,0.0000000,0.0000000,152.0000000); //
  250. Object[177] = CreateObject(944,-2074.1999500,1969.8000500,24.1000000,0.0000000,0.0000000,19.9990000); //
  251. Object[178] = CreateObject(944,-2084.5000000,1975.9000200,24.1000000,0.0000000,0.0000000,37.9900000); //
  252. Object[179] = CreateObject(3575,-2187.0000000,2041.3994100,25.9000000,0.0000000,0.0000000,179.9950000); //
  253. Object[180] = CreateObject(3574,-2210.0000000,2071.8000500,25.9000000,0.0000000,0.0000000,6.0000000); //
  254. Object[181] = CreateObject(12913,-2155.3000500,2088.0000000,25.7000000,0.0000000,0.0000000,180.0000000); //
  255. Object[182] = CreateObject(12930,-2131.3000500,2031.6999500,23.9000000,0.0000000,0.0000000,24.0000000); //
  256. Object[183] = CreateObject(1365,-2143.1001000,2004.6999500,24.3000000,0.0000000,0.0000000,179.9950000); //
  257. Object[184] = CreateObject(1365,-2143.3000500,2089.3000500,24.2000000,0.0000000,0.0000000,219.9950000); //
  258. Object[185] = CreateObject(1365,-2113.6001000,1940.1999500,24.3000000,0.0000000,0.0000000,189.9900000); //
  259. Object[186] = CreateObject(1365,-2150.0000000,1920.9000200,24.3000000,0.0000000,0.0000000,219.9870000); //
  260. Object[187] = CreateObject(1365,-2377.0000000,1974.1999500,24.3000000,0.0000000,0.0000000,269.9850000); //
  261. Object[188] = CreateObject(1365,-2284.5000000,1997.5000000,24.2000000,0.0000000,0.0000000,189.9840000); //
  262. Object[189] = CreateObject(1365,-2391.5996100,1960.7998000,24.3000000,0.0000000,0.0000000,269.9840000); //
  263. Object[190] = CreateObject(1245,-2213.3999000,2000.0000000,24.7000000,0.0000000,0.0000000,358.0000000); //
  264. Object[191] = CreateObject(11458,-2106.3999000,2084.1999500,22.7000000,0.0000000,0.0000000,336.0000000); //
  265. Object[192] = CreateObject(11458,-2249.3000500,2069.8000500,27.4000000,0.0000000,0.0000000,336.0000000); //
  266. Object[193] = CreateObject(11458,-2243.1999500,1975.1999500,23.0000000,0.0000000,0.0000000,125.9950000); //
  267. Object[194] = CreateObject(3575,-2280.6999500,2008.0999800,25.8000000,0.0000000,0.0000000,179.9950000); //
  268. Object[195] = CreateObject(3575,-2350.6001000,1995.1999500,25.9000000,0.0000000,0.0000000,179.9950000); //
  269. Object[196] = CreateObject(3575,-2326.6001000,1927.5000000,27.0000000,0.0000000,0.0000000,179.9950000); //
  270. Object[197] = CreateObject(3095,-2082.3999000,1939.5999800,23.2000000,90.0000000,180.0000000,0.0000000); //
  271. Object[198] = CreateObject(3095,-2077.8000500,1939.5999800,23.2000000,90.0000000,179.9950000,0.0000000); //
  272. Object[199] = CreateObject(3095,-2095.8000500,1939.5999800,23.2000000,90.0000000,179.9950000,0.0000000); //
  273. Object[200] = CreateObject(3095,-2099.8000500,1935.6999500,23.2000000,90.0000000,179.9950000,90.0000000); //
  274. Object[201] = CreateObject(3095,-2099.8000500,1926.6999500,23.2000000,90.0000000,179.9950000,90.0000000); //
  275. Object[202] = CreateObject(3095,-2099.8000500,1917.8000500,23.2000000,90.0000000,179.9950000,90.0000000); //
  276. Object[203] = CreateObject(3095,-2073.8000500,1935.5999800,23.2000000,90.0000000,180.0050000,270.0000000); //
  277. Object[204] = CreateObject(3095,-2073.8000500,1927.0000000,23.2000000,90.0000000,180.0050000,270.0000000); //
  278. Object[205] = CreateObject(3095,-2073.8000500,1918.0999800,23.2000000,90.0000000,180.0050000,270.0000000); //
  279. Object[206] = CreateObject(3095,-2095.6999500,1935.5999800,27.2000000,0.0000000,0.0000000,0.0000000); //
  280. Object[207] = CreateObject(3095,-2086.6999500,1935.5999800,27.2000000,0.0000000,0.0000000,0.0000000); //
  281. Object[208] = CreateObject(3095,-2077.8000500,1935.5999800,27.2000000,0.0000000,0.0000000,0.0000000); //
  282. Object[209] = CreateObject(3095,-2077.8000500,1926.5999800,27.2000000,0.0000000,0.0000000,0.0000000); //
  283. Object[210] = CreateObject(3095,-2077.8000500,1917.5999800,27.2000000,0.0000000,0.0000000,0.0000000); //
  284. Object[211] = CreateObject(3095,-2095.6999500,1926.5999800,27.2000000,0.0000000,0.0000000,0.0000000); //
  285. Object[212] = CreateObject(3095,-2095.6999500,1917.5999800,27.2000000,0.0000000,0.0000000,0.0000000); //
  286. Object[213] = CreateObject(3095,-2086.6999500,1926.6999500,27.2000000,0.0000000,0.0000000,0.0000000); //
  287. Object[214] = CreateObject(3095,-2086.6999500,1919.1999500,27.2000000,0.0000000,0.0000000,0.0000000); //
  288. Object[215] = CreateObject(1595,-2096.8999000,1938.5999800,33.0000000,0.0000000,0.0000000,180.0000000); //
  289. Object[216] = CreateObject(1694,-2077.1001000,1932.8000500,36.5000000,0.0000000,0.0000000,0.0000000); //
  290. Object[217] = CreateObject(1695,-2097.1001000,1931.5000000,28.2000000,0.0000000,0.0000000,0.0000000); //
  291. Object[218] = CreateObject(1695,-2097.0000000,1927.3000500,28.2000000,0.0000000,0.0000000,0.0000000); //
  292. Object[219] = CreateObject(1695,-2097.0000000,1923.0000000,28.2000000,0.0000000,0.0000000,0.0000000); //
  293. Object[220] = CreateObject(1696,-2087.0000000,1926.9000200,28.8000000,0.0000000,0.0000000,0.0000000); //
  294. Object[221] = CreateObject(3095,-2077.8999000,1928.0999800,23.2000000,90.0000000,179.9950000,0.0000000); //
  295. Object[222] = CreateObject(3791,-2075.6001000,1938.9000200,23.6000000,0.0000000,0.0000000,0.0000000); //
  296. Object[223] = CreateObject(3791,-2074.6001000,1930.4000200,23.6000000,0.0000000,0.0000000,90.0000000); //
  297. Object[224] = CreateObject(3791,-2074.6001000,1933.5999800,23.6000000,0.0000000,0.0000000,90.0000000); //
  298. Object[225] = CreateObject(3791,-2074.6001000,1931.3000500,24.5000000,0.0000000,0.0000000,90.0000000); //
  299. Object[226] = CreateObject(3791,-2079.0000000,1938.6999500,23.6000000,0.0000000,0.0000000,190.0000000); //
  300. Object[227] = CreateObject(3791,-2082.3000500,1931.0000000,23.6000000,0.0000000,0.0000000,119.9980000); //
  301. Object[228] = CreateObject(3397,-2079.3000500,1927.5000000,23.2000000,0.0000000,0.0000000,90.0000000); //
  302. Object[229] = CreateObject(3396,-2074.3999000,1926.3000500,23.2000000,0.0000000,0.0000000,0.0000000); //
  303. Object[230] = CreateObject(3386,-2081.6999500,1927.5000000,23.2000000,0.0000000,0.0000000,88.0000000); //
  304. Object[231] = CreateObject(3388,-2077.1001000,1927.5000000,23.2000000,0.0000000,0.0000000,90.0000000); //
  305. Object[232] = CreateObject(3387,-2074.3999000,1924.0999800,23.2000000,0.0000000,0.0000000,0.0000000); //
  306. Object[233] = CreateObject(3388,-2074.3999000,1923.0000000,23.1000000,0.0000000,0.0000000,0.0000000); //
  307. Object[234] = CreateObject(3389,-2074.3000500,1921.9000200,23.1000000,0.0000000,0.0000000,0.0000000); //
  308. Object[235] = CreateObject(3394,-2079.3000500,1921.4000200,23.2000000,0.0000000,0.0000000,90.0000000); //
  309. Object[236] = CreateObject(3395,-2079.5000000,1922.5999800,23.2000000,0.0000000,0.0000000,270.0000000); //
  310. Object[237] = CreateObject(3095,-2091.8999000,1921.9000200,23.2000000,90.0000000,180.0050000,270.0000000); //
  311. Object[238] = CreateObject(3095,-2095.8000500,1929.3000500,23.2000000,90.0000000,179.9950000,0.0000000); //
  312. Object[239] = CreateObject(1800,-2096.3000500,1920.1999500,23.2000000,0.0000000,0.0000000,92.0000000); //
  313. Object[240] = CreateObject(1800,-2096.3000500,1922.6999500,23.2000000,0.0000000,0.0000000,92.0000000); //
  314. Object[241] = CreateObject(1800,-2096.3000500,1925.0000000,23.2000000,0.0000000,0.0000000,92.0000000); //
  315. Object[242] = CreateObject(1800,-2096.3000500,1927.5000000,23.2000000,0.0000000,0.0000000,92.0000000); //
  316. Object[243] = CreateObject(1800,-2095.3999000,1925.8000500,23.2000000,0.0000000,0.0000000,272.0000000); //
  317. Object[244] = CreateObject(1800,-2095.3999000,1923.1999500,23.2000000,0.0000000,0.0000000,272.0000000); //
  318. Object[245] = CreateObject(1800,-2095.3999000,1920.9000200,23.2000000,0.0000000,0.0000000,272.0000000); //
  319. Object[246] = CreateObject(1742,-2092.6001000,1939.5999800,23.2000000,0.0000000,0.0000000,0.0000000); //
  320. Object[247] = CreateObject(3851,-2091.3999000,1937.8000500,22.0000000,90.0000000,0.0000000,0.0000000); //
  321. Object[248] = CreateObject(3851,-2091.3999000,1931.8000500,22.0000000,90.0000000,0.0000000,0.0000000); //
  322. Object[249] = CreateObject(2608,-2092.6001000,1930.0999800,24.6000000,0.0000000,0.0000000,180.0000000); //
  323. Object[250] = CreateObject(9362,-2097.0000000,1937.3000500,23.9000000,0.0000000,0.0000000,90.0000000); //
  324. Object[251] = CreateObject(2604,-2099.3000500,1932.9000200,24.0000000,0.0000000,0.0000000,90.0000000); //
  325. Object[252] = CreateObject(3095,-2083.3000500,1939.5999800,23.2000000,90.0000000,179.9950000,0.0000000); //
  326. Object[253] = CreateObject(3095,-2094.6999500,1939.5999800,23.2000000,90.0000000,179.9950000,0.0000000); //
  327. Object[254] = CreateObject(11556,-2055.1999500,1932.0000000,27.1000000,0.0000000,0.0000000,266.0000000); //
  328. Object[255] = CreateObject(634,-2096.6001000,2012.5999800,23.2000000,0.0000000,0.0000000,200.0000000); //
  329. Object[256] = CreateObject(634,-2088.3000500,2048.3000500,34.4000000,0.0000000,0.0000000,199.9950000); //
  330. Object[257] = CreateObject(634,-2083.6001000,2020.5000000,32.4000000,0.0000000,0.0000000,199.9950000); //
  331. Object[258] = CreateObject(634,-2083.8000500,2033.0000000,34.4000000,0.0000000,0.0000000,199.9950000); //
  332. Object[259] = CreateObject(634,-2063.3000500,1993.6999500,27.7000000,0.0000000,0.0000000,199.9950000); //
  333. Object[260] = CreateObject(634,-2072.3999000,2000.5000000,29.2000000,0.0000000,0.0000000,199.9950000); //
  334. Object[261] = CreateObject(634,-2101.3999000,2075.1001000,23.2000000,0.0000000,0.0000000,199.9950000); //
  335. Object[262] = CreateObject(634,-2097.6001000,2055.8000500,23.2000000,0.0000000,0.0000000,199.9950000); //
  336. Object[263] = CreateObject(634,-2107.8999000,2095.8999000,23.3000000,0.0000000,0.0000000,199.9950000); //
  337. Object[264] = CreateObject(634,-2099.5000000,2085.6999500,25.0000000,0.0000000,0.0000000,199.9950000); //
  338. Object[265] = CreateObject(634,-2177.6999500,2073.6999500,23.2000000,0.0000000,0.0000000,199.9950000); //
  339. Object[266] = CreateObject(634,-2248.0000000,2091.1001000,28.8000000,0.0000000,0.0000000,289.9950000); //
  340. Object[267] = CreateObject(634,-2235.1001000,2090.3000500,28.7000000,0.0000000,0.0000000,209.9900000); //
  341. Object[268] = CreateObject(634,-2236.6999500,2075.3999000,28.3000000,0.0000000,0.0000000,209.9870000); //
  342. Object[269] = CreateObject(634,-2222.3000500,2051.1999500,23.2000000,0.0000000,0.0000000,279.9870000); //
  343. Object[270] = CreateObject(634,-2280.0000000,2032.9000200,25.6000000,0.0000000,0.0000000,279.9870000); //
  344. Object[271] = CreateObject(634,-2270.3999000,2020.6999500,22.8000000,0.0000000,0.0000000,279.9870000); //
  345. Object[272] = CreateObject(634,-2306.6001000,2025.1999500,23.2000000,0.0000000,0.0000000,239.9870000); //
  346. Object[273] = CreateObject(634,-2356.1999500,2064.3000500,31.3000000,0.0000000,0.0000000,239.9850000); //
  347. Object[274] = CreateObject(634,-2442.8000500,2066.6999500,26.6000000,0.0000000,0.0000000,239.9850000); //
  348. Object[275] = CreateObject(634,-2430.6001000,2066.6001000,27.0000000,0.0000000,0.0000000,239.9850000); //
  349. Object[276] = CreateObject(634,-2402.3000500,2063.8999000,29.8000000,0.0000000,0.0000000,239.9850000); //
  350. Object[277] = CreateObject(634,-2397.8999000,2062.1999500,28.7000000,0.0000000,0.0000000,239.9850000); //
  351. Object[278] = CreateObject(634,-2373.3000500,2065.5000000,32.3000000,0.0000000,0.0000000,239.9850000); //
  352. Object[279] = CreateObject(634,-2409.8000500,2035.8000500,23.2000000,0.0000000,0.0000000,239.9850000); //
  353. Object[280] = CreateObject(634,-2423.5000000,2055.1999500,23.2000000,0.0000000,0.0000000,259.9850000); //
  354. Object[281] = CreateObject(634,-2405.1999500,2053.0000000,23.2000000,0.0000000,0.0000000,229.9800000); //
  355. Object[282] = CreateObject(634,-2374.1999500,2049.8000500,23.2000000,0.0000000,0.0000000,219.9770000); //
  356. Object[283] = CreateObject(634,-2327.1001000,2047.0999800,23.2000000,0.0000000,0.0000000,249.9740000); //
  357. Object[284] = CreateObject(634,-2402.1001000,2045.0000000,23.2000000,0.0000000,0.0000000,279.9720000); //
  358. Object[285] = CreateObject(634,-2434.8000500,1913.5000000,33.9000000,0.0000000,0.0000000,349.9700000); //
  359. Object[286] = CreateObject(634,-2436.8999000,1941.8000500,32.1000000,0.0000000,0.0000000,349.9690000); //
  360. Object[287] = CreateObject(634,-2445.8000500,1961.4000200,30.0000000,0.0000000,0.0000000,359.9690000); //
  361. Object[288] = CreateObject(634,-2442.5000000,1957.5000000,29.7000000,0.0000000,0.0000000,359.9670000); //
  362. Object[289] = CreateObject(634,-2434.0000000,1929.0999800,31.2000000,0.0000000,0.0000000,359.9670000); //
  363. Object[290] = CreateObject(634,-2428.3000500,1950.3000500,23.4000000,0.0000000,0.0000000,339.9670000); //
  364. Object[291] = CreateObject(634,-2432.5000000,1957.6999500,24.0000000,0.0000000,0.0000000,339.9660000); //
  365. Object[292] = CreateObject(634,-2426.8999000,1897.9000200,23.1000000,0.0000000,0.0000000,339.9660000); //
  366. Object[293] = CreateObject(634,-2429.0000000,1921.1999500,23.6000000,0.0000000,0.0000000,339.9660000); //
  367. Object[294] = CreateObject(634,-2426.6001000,1935.5000000,23.2000000,0.0000000,0.0000000,339.9660000); //
  368. Object[295] = CreateObject(634,-2408.3000500,1876.4000200,22.9000000,0.0000000,0.0000000,59.9660000); //
  369. Object[296] = CreateObject(634,-2414.0000000,1887.9000200,23.2000000,0.0000000,0.0000000,19.9630000); //
  370. Object[297] = CreateObject(634,-2361.5000000,1890.0000000,23.2000000,0.0000000,0.0000000,69.9620000); //
  371. Object[298] = CreateObject(634,-2357.6999500,1909.4000200,23.2000000,0.0000000,0.0000000,119.9610000); //
  372. Object[299] = CreateObject(634,-2300.0000000,1899.1999500,24.3000000,0.0000000,0.0000000,119.9600000); //
  373. Object[300] = CreateObject(634,-2269.3999000,1940.0999800,23.6000000,0.0000000,0.0000000,119.9600000); //
  374. Object[301] = CreateObject(634,-2284.1001000,1939.9000200,23.2000000,0.0000000,0.0000000,109.9600000); //
  375. Object[302] = CreateObject(634,-2277.1001000,1926.4000200,24.2000000,0.0000000,0.0000000,109.9570000); //
  376. Object[303] = CreateObject(634,-2239.1001000,1935.4000200,26.9000000,0.0000000,0.0000000,109.9570000); //
  377. Object[304] = CreateObject(634,-2204.8999000,1929.0000000,23.2000000,0.0000000,0.0000000,109.9570000); //
  378. Object[305] = CreateObject(634,-2215.1999500,1943.6999500,23.2000000,0.0000000,0.0000000,109.9570000); //
  379. Object[306] = CreateObject(634,-2228.1999500,1940.0999800,23.2000000,0.0000000,0.0000000,109.9570000); //
  380. Object[307] = CreateObject(634,-2181.8000500,1943.5999800,23.2000000,0.0000000,0.0000000,109.9570000); //
  381. Object[308] = CreateObject(634,-2157.1999500,1919.6999500,23.2000000,0.0000000,0.0000000,109.9570000); //
  382. Object[309] = CreateObject(634,-2138.6001000,1918.4000200,23.2000000,0.0000000,0.0000000,109.9570000); //
  383. Object[310] = CreateObject(634,-2121.6001000,1916.8000500,23.2000000,0.0000000,0.0000000,109.9570000); //
  384. Object[311] = CreateObject(14416,-2390.1999500,1929.9000200,24.1000000,0.0000000,0.0000000,0.0000000); //
  385. Object[312] = CreateObject(14414,-2390.1999500,1930.1999500,29.0000000,0.0000000,0.0000000,180.0000000); //
  386. Object[313] = CreateObject(14414,-2379.8000500,1915.8000500,34.2000000,0.0000000,0.0000000,179.9950000); //
  387. Object[314] = CreateObject(14414,-2396.6999500,1915.8000500,39.1000000,0.0000000,0.0000000,269.9950000); //
  388. Object[315] = CreateObject(2957,-2390.1001000,1916.0000000,37.3000000,90.0000000,180.0000000,269.9990000); //
  389. Object[316] = CreateObject(1226,-2408.6999500,1935.5999800,27.1000000,0.0000000,0.0000000,0.0000000); //
  390. Object[317] = CreateObject(1226,-2408.6999500,1906.0000000,27.1000000,0.0000000,0.0000000,0.0000000); //
  391. Object[318] = CreateObject(1226,-2408.8000500,1956.4000200,27.1000000,0.0000000,0.0000000,0.0000000); //
  392. Object[319] = CreateObject(1226,-2408.8000500,2005.8000500,27.1000000,0.0000000,0.0000000,0.0000000); //
  393. Object[320] = CreateObject(1226,-2358.6999500,1935.6999500,27.1000000,0.0000000,0.0000000,0.0000000); //
  394. }
  395. #endif
  396.  
  397. //==============================================================================
  398. // Basic vars
  399. //==============================================================================
  400.  
  401. new bool:MissionStarted;
  402. new bool:ObjectiveStarted;
  403. new bool:MissionCancelled;
  404.  
  405. native IsValidVehicle(vehicleid);
  406.  
  407. enum teamdata
  408. {
  409. Kills,
  410. Name[32],
  411. Members
  412. };
  413.  
  414. enum playerdata
  415. {
  416. UserName[MAX_PLAYER_NAME],
  417. bool:Counted,
  418. TeamSelection,
  419. PlayerClassID
  420. };
  421.  
  422. new Team[2][teamdata];
  423. new PlayerMissionInfo[MAX_PLAYERS][playerdata];
  424.  
  425. //==============================================================================
  426. // Basic script
  427. //==============================================================================
  428.  
  429. main()
  430. {
  431. print("----------------------------------");
  432. print(" Mission: "MISSION_NAME" started.");
  433. print("----------------------------------\n");
  434. }
  435.  
  436. public OnGameModeInit()
  437. {
  438. MissionStarted= true;
  439.  
  440. format(Team[TEAM_DEFEND][Name],32,"%s",TEAM_DEFEND_NAME);
  441. format(Team[TEAM_ATTACK][Name],32,"%s",TEAM_ATTACK_NAME);
  442.  
  443. if(CallRemoteFunction("GetCurrentMissionCJWalk","")) UsePlayerPedAnims();
  444.  
  445. #if MAX_MAP_OBJECTS != 0
  446. CreateMap();
  447. #endif
  448.  
  449. for(new i=0; i<sizeof(PedInfo); i++)AddPlayerClassEx(PedInfo[i][TeamID],PedInfo[i][Skin],PedInfo[i][SpawnX],PedInfo[i][SpawnY],PedInfo[i][SpawnZ],PedInfo[i][SpawnAngle],0,0,0,0,0,0);
  450.  
  451. #if SINKING == true
  452. MapSkining[0] = SetTimer("SinkMap", 80*1000, false);
  453. #endif
  454.  
  455. for(new i=0; i<MAX_VEHICLES; i++) if(IsValidVehicle(i)) SetVehicleHealth(i,VEHICLE_HEALTH);
  456. for(new i=0; i<MAX_PLAYERS; i++) PlayerMissionInfo[i][TeamSelection]= NO_TEAM;
  457.  
  458. SetTimer("StartMissionFunc",3000,false);
  459. return 1;
  460. }
  461.  
  462. FUNCTION StartMissionFunc()
  463. {
  464. CallRemoteFunction("StartMission","");
  465. ObjectiveStarted= true;
  466. return 1;
  467. }
  468.  
  469. public OnGameModeExit()
  470. {
  471. #if MAX_MAP_OBJECTS != 0
  472. for(new i=0;i<MAX_MAP_OBJECTS;i++) DestroyObject(Object[i]);
  473. #endif
  474. return 1;
  475. }
  476.  
  477. public OnPlayerDisconnect(playerid)
  478. {
  479. if(PlayerMissionInfo[playerid][TeamSelection] != NO_TEAM && PlayerMissionInfo[playerid][Counted])
  480. {
  481. Team[PlayerMissionInfo[playerid][TeamSelection]][Members] --;
  482. PlayerMissionInfo[playerid][Counted] = false;
  483. }
  484. return 1;
  485. }
  486.  
  487. public OnPlayerRequestClass(playerid,classid)
  488. {
  489. SetPlayerPos(playerid,CLASS_POSTION);
  490. SetPlayerCameraPos(playerid,CLASS_CAMERA);
  491. SetPlayerCameraLookAt(playerid,CLASS_POSTION);
  492. SetPlayerFacingAngle(playerid,CLASS_FACING_AGNLE);
  493.  
  494. CallRemoteFunction("TdmHide","i",playerid);
  495. CallRemoteFunction("ShowClassSelection","ddsddd",playerid, PedInfo[classid][TeamID],Team[PedInfo[classid][TeamID]][Name], PedInfo[classid][Weapon1], PedInfo[classid][Weapon2], PedInfo[classid][Weapon3]);
  496. if(PlayerMissionInfo[playerid][Counted] && PlayerMissionInfo[playerid][TeamSelection] != NO_TEAM)
  497. {
  498. Team[PlayerMissionInfo[playerid][TeamSelection]][Members]--;
  499. PlayerMissionInfo[playerid][Counted] = false;
  500. }
  501. PlayerMissionInfo[playerid][TeamSelection] = PedInfo[classid][TeamID];
  502. PlayerMissionInfo[playerid][PlayerClassID]=classid;
  503. return 1;
  504. }
  505.  
  506. public OnPlayerRequestSpawn(playerid)
  507. {
  508. new opp_team = (PlayerMissionInfo[playerid][TeamSelection] == 1)? 0:1;
  509. if(Team[PlayerMissionInfo[playerid][TeamSelection]][Members] > Team[opp_team][Members])
  510. {
  511. CallRemoteFunction("ShowInfoBox", "iisi", playerid, -1,"This Team is full, choose another!",0);
  512. return 0;
  513. }
  514. return 1;
  515. }
  516. public OnPlayerSpawn(playerid)
  517. {
  518. new string[124];
  519. CallRemoteFunction("UpdateAliveState","ii",playerid,1);
  520. CallRemoteFunction("TdmShow","i",playerid);
  521. CallRemoteFunction("TdmUpdate","sssdd","Kills",Team[TEAM_DEFEND][Name],Team[TEAM_ATTACK][Name],Team[TEAM_DEFEND][Kills],Team[TEAM_ATTACK][Kills]);
  522. SetPlayerHealth(playerid,Health);
  523. if(CallRemoteFunction("GetSpectateStatus","d",playerid)) return CallRemoteFunction("SpecOffAdmin","d",playerid);
  524. if(CallRemoteFunction("GetJailedStatus","d",playerid)) CallRemoteFunction("SetJailed","d",playerid);
  525. else
  526. {
  527. SetPlayerPos(playerid,PedInfo[PlayerMissionInfo[playerid][PlayerClassID]][SpawnX],PedInfo[PlayerMissionInfo[playerid][PlayerClassID]][SpawnY],PedInfo[PlayerMissionInfo[playerid][PlayerClassID]][SpawnZ]);
  528. SetPlayerFacingAngle(playerid,PedInfo[PlayerMissionInfo[playerid][PlayerClassID]][SpawnAngle]);
  529. SetPlayerInterior(playerid,PedInfo[PlayerMissionInfo[playerid][PlayerClassID]][SpawnInterior]);
  530. SetPlayerVirtualWorld(playerid,PedInfo[PlayerMissionInfo[playerid][PlayerClassID]][VirtualWorld]);
  531. CallRemoteFunction("GivePlayerWeaponEx","ddd",playerid,PedInfo[PlayerMissionInfo[playerid][PlayerClassID]][Weapon1],PedInfo[PlayerMissionInfo[playerid][PlayerClassID]][Ammo1]);
  532. CallRemoteFunction("GivePlayerWeaponEx","ddd",playerid,PedInfo[PlayerMissionInfo[playerid][PlayerClassID]][Weapon2],PedInfo[PlayerMissionInfo[playerid][PlayerClassID]][Ammo2]);
  533. CallRemoteFunction("GivePlayerWeaponEx","ddd",playerid,PedInfo[PlayerMissionInfo[playerid][PlayerClassID]][Weapon3],PedInfo[PlayerMissionInfo[playerid][PlayerClassID]][Ammo3]);
  534. if(!PlayerMissionInfo[playerid][Counted])
  535. {
  536. Team[PlayerMissionInfo[playerid][TeamSelection]][Members]++;
  537. PlayerMissionInfo[playerid][Counted] = true;
  538. new opp_team = (PlayerMissionInfo[playerid][TeamSelection] == 1)? 0:1;
  539. format(string,sizeof(string),"You have chosen team %s, your mission is to kill %s.",Team[PlayerMissionInfo[playerid][TeamSelection]][Name],Team[opp_team][Name]);
  540. CallRemoteFunction("ShowInfoBox", "iisi", playerid, -1,string,0);
  541. format(string,sizeof(string),"~r~~h~Eliminate ~w~%s.",Team[opp_team][Name]);
  542. CallRemoteFunction("ShowInfoText", "iisi", playerid, -1,string,0);
  543. }
  544. }
  545. SetPlayerTeam(playerid,PlayerMissionInfo[playerid][TeamSelection]);
  546. if(PlayerMissionInfo[playerid][TeamSelection] == TEAM_ATTACK) SetPlayerColor(playerid,COLOR_TEAM_ATTACK);
  547. else SetPlayerColor(playerid,COLOR_TEAM_DEFEND);
  548. #if SPAWN_PROTECTION == true
  549. CallRemoteFunction("SetSpawnProtection","df",playerid,Health);
  550. #endif
  551. return 1;
  552. }
  553.  
  554. public OnPlayerDeath(playerid, killerid, reason)
  555. {
  556. if(killerid != INVALID_PLAYER_ID && PlayerMissionInfo[playerid][TeamSelection] != NO_TEAM && MissionStarted)
  557. {
  558. Team[PlayerMissionInfo[killerid][TeamSelection]][Kills]++;
  559. SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
  560. CallRemoteFunction("TdmUpdate","sssdd","Kills",Team[TEAM_DEFEND][Name],Team[TEAM_ATTACK][Name],Team[TEAM_DEFEND][Kills],Team[TEAM_ATTACK][Kills]);
  561. }
  562. CallRemoteFunction("UpdateAliveState","ii",playerid,0);
  563. return 1;
  564. }
  565.  
  566. public OnVehicleSpawn(vehicleid)
  567. {
  568. SetVehicleHealth(vehicleid,VEHICLE_HEALTH);
  569. return 1;
  570. }
  571.  
  572. FUNCTION EndTheMission()
  573. {
  574. if(!MissionStarted) return 1;
  575. MissionStarted= false;
  576. if(!MissionCancelled)
  577. {
  578. new string[256];
  579. new amount= 10000;
  580. new winning_team;
  581. if(Team[TEAM_DEFEND][Kills] == Team[TEAM_ATTACK][Kills]) { winning_team = 2; }
  582. else if(Team[TEAM_DEFEND][Kills] > Team[TEAM_ATTACK][Kills]) { winning_team = 0; }
  583. else { winning_team = 1; }
  584.  
  585. if(winning_team != 2)
  586. {
  587. amount =amount+(Team[winning_team][Kills]*100);
  588. format(string,sizeof(string),""SERVER_KEY_MSG" %s has won the team deathmatch! Reward: $%d",Team[winning_team][Name],amount);
  589. CallRemoteFunction("IRC_SendMessage","ss",string,IRC_SERVER_COLOR);
  590. SendClientMessageToAll(COLOR_SERVER,string);
  591. format(string,sizeof(string),""SERVER_KEY_MSG" You have received $%i because your team has won the team deathmatch!",amount);
  592. for(new i=0,j=GetPlayerPoolSize(); i <= j; i++)
  593. {
  594. if(PlayerMissionInfo[i][TeamSelection] == winning_team && PlayerMissionInfo[i][Counted])
  595. {
  596. PlayerPlaySound(i,3200,0,0,0);
  597. SendClientMessage(i,COLOR_SERVER,string);
  598. CallRemoteFunction("GivePlayerCash","ii",i,amount);
  599. CallRemoteFunction("PlayerMissionStats","dd",i,0);
  600. CallRemoteFunction("PlayerMissionStats","dd",i,6);
  601. }
  602. if(PlayerMissionInfo[i][TeamSelection] != winning_team && PlayerMissionInfo[i][Counted])
  603. {
  604. PlayerPlaySound(i,17004,0,0,0);
  605. GameTextForPlayer(i,"~R~MISSION FAILED~w~!",3000,3);
  606. CallRemoteFunction("PlayerMissionStats","dd",i,1);
  607. }
  608. }
  609. }
  610. else
  611. {
  612. PlaySoundForAll(1058);
  613. format(string,sizeof(string),""SERVER_KEY_MSG" IT'S A DRAW! No team has won the team-deathmatch.");
  614. SendClientMessageToAll(COLOR_SERVER,string);
  615. CallRemoteFunction("IRC_SendMessage","ss",string,IRC_SERVER_COLOR);
  616. for(new i=0,j=GetPlayerPoolSize(); i <= j; i++) if(IsPlayerConnected(i) && PlayerMissionInfo[i][Counted]) CallRemoteFunction("PlayerMissionStats","dd",i,2);
  617. }
  618. }
  619. else
  620. {
  621. PlaySoundForAll(1058);
  622. SendClientMessageToAll(COLOR_SERVER,""SERVER_KEY_MSG" The mission has been cancelled.");
  623. CallRemoteFunction("IRC_SendMessage","ss",""SERVER_KEY_MSG" The mission has been cancelled.",IRC_SERVER_COLOR);
  624. CallRemoteFunction("ShowInfoBox", "iisi", -1, -1,"The mission has been cancelled.",0);
  625. GameTextForAll("~R~MISSION CANCELLED~w~!",3000,3);
  626. }
  627. return 1;
  628. }
  629.  
  630. //==============================================================================
  631. // Mission functions
  632. //==============================================================================
  633.  
  634. #if SINKING == true
  635. FUNCTION SinkMap()
  636. {
  637. GameTextForAll("~r~the island is sinking!",4000,3);
  638. new Float:X, Float:Y, Float:Z;
  639. new Float:oldRotX, Float:oldRotY, Float:oldRotZ;
  640.  
  641. for(new i = 0; i < MAX_MAP_OBJECTS; i++) { GetObjectPos(Object[i], X, Y, Z), GetObjectRot(Object[i], oldRotX, oldRotY, oldRotZ); MoveObject(Object[i], X, Y, Z-40, 0.6, oldRotX, oldRotY, oldRotZ+0.05); }
  642. MapSkining[0] = SetTimer("ResurfaceMap", 150*1000,false);
  643. return true;
  644. }
  645.  
  646.  
  647. FUNCTION ResurfaceMap()
  648. {
  649. GameTextForAll("~g~the island is resurfacing!",4000,3);
  650. new Float:X, Float:Y, Float:Z;
  651. new Float:oldRotX, Float:oldRotY, Float:oldRotZ;
  652.  
  653. for(new i = 0; i < MAX_MAP_OBJECTS; i++) { GetObjectPos(Object[i], X, Y, Z), GetObjectRot(Object[i], oldRotX, oldRotY, oldRotZ); MoveObject(Object[i], X, Y, Z+40, 0.6, oldRotX, oldRotY, oldRotZ-0.05); }
  654. //MapSkining[1] = SetTimer("SinkMap", 80000,false);
  655. return true;
  656. }
  657. #endif
  658.  
  659. PlaySoundForAll(sound)
  660. {
  661. for (new i=0,j=GetPlayerPoolSize(); i <=j ; i++)
  662. {
  663. if(IsPlayerConnected(i)) PlayerPlaySound(i,sound,0,0,0);
  664. }
  665. }
  666.  
  667. //==============================================================================
  668. // Important functions required
  669. //==============================================================================
  670.  
  671. FUNCTION OnPlayerNameRecieve(playerid,name[])
  672. {
  673. format(PlayerMissionInfo[playerid][UserName],MAX_PLAYER_NAME,"%s",name);
  674. return 1;
  675. }
  676.  
  677.  
  678. FUNCTION CancelTheMission()
  679. {
  680. MissionCancelled= true;
  681. return 1;
  682. }
  683.  
  684. FUNCTION MissionObjectiveStarted() return ObjectiveStarted;
Advertisement
Add Comment
Please, Sign In to add comment