Advertisement
Lordz

DestroyableObjects

Jan 17th, 2014
1,326
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 23.70 KB | None | 0 0
  1. /*______________________________________________________________________________
  2.  
  3. SA-MP 0.3z Destroyable Objects
  4. By Lordz™.
  5.  
  6. This filterscript has been created to test the callback "OnPlayerWeaponShot"
  7. which gets called when player shoots. In this, it's concentrated on objects.
  8.  
  9. The objects which are created under "CreateObjects" will have 100% hp when the
  10. FS gets loaded. Depending on the fire rate, the object's HP will be losing and
  11. when it reduces completely, the object gets destroyed.
  12.  
  13. I used a map called "Pirate Island" by Deadspirit to test this FS.
  14.  
  15. Issues found within the RC-1 2 of SA-MP 0.3z : <Relating to the script>
  16.  
  17. http://forum.sa-mp.com/showthread.php?t=488219
  18.  
  19. ______________________________________________________________________________*/
  20.  
  21. #define FILTERSCRIPT
  22.  
  23. #include <a_samp>
  24.  
  25. new ObjectHP[MAX_OBJECTS],
  26. bool:FSInit;
  27.  
  28. stock GetName(playerid)
  29. {
  30. new Lname[MAX_PLAYER_NAME];
  31. GetPlayerName(playerid, Lname, sizeof(Lname));
  32. return Lname;
  33. }
  34.  
  35. stock randomEx(minnum = cellmin, maxnum = cellmax) return random(maxnum - minnum + 1) + minnum;
  36.  
  37. stock IsMeleeWeapon(weaponid)
  38. {
  39. if(weaponid >= 0 && weaponid <= 15) return true;
  40. else return false;
  41. }
  42.  
  43. public OnFilterScriptInit()
  44. {
  45. FSInit = false;
  46. CreateObject(10410, -2077.97, -7664.46, 16.15, 0.00, 0.00, 249.99);
  47. CreateObject(6295, -2167.59, -7731.46, 75.98, 0.00, 0.00, 313.99);
  48. CreateObject(8493, -2069.85, -7560.68, 17.75, 0.00, 0.00, 286.00);
  49. CreateObject(9159, -2069.90, -7560.67, 17.66, 0.00, 0.00, 286.00);
  50. CreateObject(3886, -2045.37, -7603.08, 1.17, 0.00, 0.00, 112.00);
  51. CreateObject(3886, -2054.76, -7607.02, 1.17, 0.00, 0.00, 112.00);
  52. CreateObject(3886, -2063.81, -7611.25, 1.17, 0.00, 0.00, 113.99);
  53. CreateObject(3886, -2073.07, -7615.65, 1.17, 0.00, 0.00, 115.99);
  54. CreateObject(3886, -2082.34, -7619.91, 1.17, 0.00, 0.00, 115.99);
  55. CreateObject(3886, -2037.72, -7605.93, -24.58, 180.00, 0.00, 19.99);
  56. CreateObject(3886, -2034.00, -7614.66, -24.58, 179.99, 0.00, 23.98);
  57. CreateObject(3886, -2029.41, -7622.55, -24.58, 179.99, 0.00, 35.98);
  58. CreateObject(3886, -2026.52, -7627.24, -24.58, 179.99, 0.00, 37.98);
  59. CreateObject(3886, -2041.69, -7607.25, -25.08, 179.99, 0.00, 21.98);
  60. CreateObject(3886, -2046.06, -7608.58, -25.08, 179.99, 0.00, 21.98);
  61. CreateObject(3886, -2048.62, -7609.62, -25.08, 179.99, 0.00, 35.98);
  62. CreateObject(3886, -2053.34, -7612.22, -24.83, 179.99, 0.00, 23.97);
  63. CreateObject(3886, -2057.36, -7613.09, -24.83, 179.99, 0.00, 15.97);
  64. CreateObject(3886, -2058.91, -7614.17, -24.83, 179.99, 0.00, 43.97);
  65. CreateObject(3886, -2063.58, -7616.35, -24.83, 179.99, 0.00, 19.97);
  66. CreateObject(3886, -2067.72, -7617.73, -24.83, 179.99, 0.00, 19.96);
  67. CreateObject(3886, -2071.55, -7619.26, -24.83, 179.99, 0.00, 23.96);
  68. CreateObject(3886, -2074.91, -7620.97, -24.83, 179.99, 0.00, 27.96);
  69. CreateObject(3886, -2079.52, -7622.90, -24.83, 179.99, 0.00, 21.96);
  70. CreateObject(3886, -2084.46, -7623.97, -24.83, 179.99, 0.00, 11.96);
  71. CreateObject(3886, -2082.42, -7622.48, -37.58, 179.99, 0.00, 33.95);
  72. CreateObject(3886, -2079.69, -7621.20, -37.58, 179.99, 0.00, 17.95);
  73. CreateObject(3886, -2075.49, -7619.32, -37.58, 179.99, 0.00, 25.95);
  74. CreateObject(3886, -2072.36, -7617.98, -37.58, 179.99, 0.00, 21.95);
  75. CreateObject(3886, -2084.94, -7623.42, -37.58, 179.99, 0.00, 31.95);
  76. CreateObject(11245, -2168.12, -7732.64, 102.32, 0.00, 289.99, 0.00);
  77. CreateObject(16410, -2104.77, -7654.68, 16.91, 0.00, 0.00, 8.00);
  78. CreateObject(3249, -2067.42, -7629.32, 1.82, 0.00, 0.00, 205.99);
  79. CreateObject(16690, -2041.82, -7650.43, 5.23, 0.00, 0.00, 25.99);
  80. CreateObject(16051, -2063.61, -7621.02, 5.32, 0.00, 0.00, 296.00);
  81. CreateObject(16105, -2054.06, -7619.60, 3.71, 0.00, 0.00, 294.00);
  82. CreateObject(711, -2051.69, -7614.59, 7.42, 0.00, 0.00, 0.00);
  83. CreateObject(711, -2074.21, -7630.26, 8.17, 0.00, 0.00, 0.00);
  84. CreateObject(711, -2039.92, -7614.29, 7.92, 0.00, 0.00, 0.00);
  85. CreateObject(837, -2048.89, -7618.19, 2.70, 0.00, 0.00, 291.99);
  86. CreateObject(711, -2058.12, -7637.76, 8.67, 0.00, 0.00, 0.00);
  87. CreateObject(711, -2085.12, -7656.40, 22.17, 0.00, 0.00, 0.00);
  88. CreateObject(711, -2079.04, -7670.51, 17.77, 0.00, 0.00, 0.00);
  89. CreateObject(746, -2042.10, -7608.63, 2.04, 0.00, 0.00, 18.00);
  90. CreateObject(750, -2094.10, -7639.22, 16.50, 0.00, 0.00, 0.00);
  91. CreateObject(855, -2122.52, -7604.04, 0.68, 0.00, 0.00, 0.00);
  92. CreateObject(855, -2118.81, -7604.04, -0.82, 0.00, 0.00, 0.00);
  93. CreateObject(855, -2114.67, -7606.59, 1.68, 0.00, 0.00, 0.00);
  94. CreateObject(855, -2110.87, -7606.36, 1.68, 0.00, 0.00, 0.00);
  95. CreateObject(855, -2113.22, -7605.51, 1.68, 0.00, 0.00, 0.00);
  96. CreateObject(855, -2116.52, -7604.33, 1.68, 0.00, 0.00, 0.00);
  97. CreateObject(855, -2121.70, -7606.19, 1.68, 0.00, 0.00, 0.00);
  98. CreateObject(855, -2121.00, -7610.16, 1.68, 0.00, 0.00, 0.00);
  99. CreateObject(855, -2107.17, -7609.73, 1.43, 0.00, 0.00, 0.00);
  100. CreateObject(855, -2108.31, -7608.01, 0.18, 0.00, 0.00, 0.00);
  101. CreateObject(855, -2104.99, -7611.04, 0.18, 0.00, 0.00, 0.00);
  102. CreateObject(855, -2106.84, -7613.07, 0.18, 0.00, 0.00, 0.00);
  103. CreateObject(855, -2111.08, -7613.27, 0.18, 0.00, 0.00, 0.00);
  104. CreateObject(855, -2116.23, -7612.97, 0.18, 0.00, 0.00, 0.00);
  105. CreateObject(855, -2115.89, -7612.60, 2.93, 0.00, 0.00, 0.00);
  106. CreateObject(855, -2113.02, -7609.46, 2.93, 0.00, 0.00, 0.00);
  107. CreateObject(855, -2110.45, -7611.47, 2.93, 0.00, 0.00, 0.00);
  108. CreateObject(855, -2104.06, -7615.44, 2.93, 0.00, 0.00, 0.00);
  109. CreateObject(855, -2105.83, -7618.55, 0.93, 0.00, 0.00, 0.00);
  110. CreateObject(855, -2109.57, -7618.22, 5.18, 0.00, 0.00, 0.00);
  111. CreateObject(855, -2107.70, -7614.50, 5.18, 0.00, 0.00, 0.00);
  112. CreateObject(855, -2107.70, -7614.50, 5.18, 0.00, 0.00, 0.00);
  113. CreateObject(1610, -2050.08, -7609.03, 1.70, 0.00, 0.00, 0.00);
  114. CreateObject(2782, -2094.12, -7639.89, 21.43, 0.00, 0.00, 338.00);
  115. CreateObject(711, -2100.20, -7637.92, 22.17, 0.00, 0.00, 0.00);
  116. CreateObject(711, -2111.62, -7697.52, 24.59, 0.00, 0.00, 0.00);
  117. CreateObject(711, -2092.01, -7699.61, 24.59, 0.00, 0.00, 0.00);
  118. CreateObject(711, -2118.54, -7644.17, 18.59, 0.00, 0.00, 0.00);
  119. CreateObject(3461, -2100.02, -7726.35, 32.75, 0.00, 0.00, 0.00);
  120. CreateObject(3461, -2093.30, -7728.35, 33.09, 0.00, 0.00, 0.00);
  121. CreateObject(3461, -2093.85, -7712.72, 26.67, 0.00, 0.00, 0.00);
  122. CreateObject(3461, -2088.64, -7714.66, 26.82, 0.00, 0.00, 0.00);
  123. CreateObject(3461, -2090.41, -7703.03, 22.48, 0.00, 0.00, 0.00);
  124. CreateObject(3461, -2077.82, -7686.26, 16.67, 0.00, 0.00, 0.00);
  125. CreateObject(3461, -2085.73, -7704.87, 22.38, 0.00, 0.00, 0.00);
  126. CreateObject(3461, -2082.08, -7684.87, 16.52, 0.00, 0.00, 0.00);
  127. CreateObject(3461, -2075.26, -7670.10, 12.92, 0.00, 0.00, 0.00);
  128. CreateObject(3461, -2069.68, -7671.35, 13.20, 0.00, 0.00, 0.00);
  129. CreateObject(3524, -2072.08, -7662.64, 11.63, 0.00, 0.00, 150.00);
  130. CreateObject(3524, -2066.39, -7665.21, 11.63, 0.00, 0.00, 155.99);
  131. CreateObject(711, -2111.62, -7697.52, 24.59, 0.00, 0.00, 0.00);
  132. CreateObject(711, -2128.17, -7723.98, 37.83, 0.00, 0.00, 0.00);
  133. CreateObject(2906, -2026.52, -7636.03, 0.23, 70.00, 0.00, 106.00);
  134. CreateObject(855, -2100.13, -7616.80, 1.68, 0.00, 0.00, 0.00);
  135. CreateObject(855, -2101.38, -7621.28, 1.68, 0.00, 0.00, 0.00);
  136. CreateObject(855, -2099.84, -7623.25, 1.68, 0.00, 0.00, 0.00);
  137. CreateObject(855, -2095.71, -7624.46, 1.68, 0.00, 0.00, 0.00);
  138. CreateObject(855, -2096.33, -7623.67, 1.68, 0.00, 0.00, 0.00);
  139. CreateObject(855, -2098.64, -7621.34, 2.68, 0.00, 0.00, 0.00);
  140. CreateObject(855, -2101.32, -7624.95, 2.68, 0.00, 0.00, 0.00);
  141. CreateObject(855, -2105.17, -7621.70, 3.68, 0.00, 0.00, 0.00);
  142. CreateObject(10409, -2105.54, -7727.36, 27.33, 0.00, 0.00, 252.00);
  143. CreateObject(10409, -2104.59, -7725.89, 19.67, 0.00, 0.00, 252.00);
  144. CreateObject(10409, -2103.37, -7732.86, 18.17, 0.00, 0.00, 252.00);
  145. CreateObject(18228, -2042.41, -7764.88, 0.00, 0.00, 0.00, 36.00);
  146. CreateObject(18228, -2058.57, -7795.75, 0.00, 0.00, 0.00, 358.00);
  147. CreateObject(18228, -2127.44, -7627.25, -4.25, 0.00, 0.00, 233.99);
  148. CreateObject(18228, -2023.91, -7709.11, -12.25, 0.00, 0.00, 39.99);
  149. CreateObject(18228, -2022.96, -7686.87, -3.89, 0.00, 0.00, 31.99);
  150. CreateObject(18228, -2128.08, -7653.04, -4.25, 0.00, 0.00, 237.99);
  151. CreateObject(18228, -2127.66, -7667.83, -1.50, 0.00, 0.00, 237.99);
  152. CreateObject(18228, -2130.26, -7694.27, -6.00, 0.00, 0.00, 237.99);
  153. CreateObject(18228, -2130.26, -7694.27, 0.75, 0.00, 0.00, 237.99);
  154. CreateObject(18228, -2132.85, -7702.26, 0.75, 0.00, 0.00, 229.99);
  155. CreateObject(18228, -2153.67, -7713.76, 14.25, 0.00, 0.00, 179.99);
  156. CreateObject(18228, -2159.62, -7702.87, 1.25, 0.00, 0.00, 179.98);
  157. CreateObject(18228, -2159.62, -7702.87, 1.25, 0.00, 0.00, 179.98);
  158. CreateObject(18228, -2163.27, -7714.20, 12.00, 0.00, 0.00, 199.98);
  159. CreateObject(18228, -2166.04, -7706.16, 1.50, 0.00, 0.00, 199.97);
  160. CreateObject(18228, -2171.84, -7719.27, 11.50, 0.00, 0.00, 199.98);
  161. CreateObject(18228, -2178.36, -7719.03, 29.75, 0.00, 0.00, 199.98);
  162. CreateObject(18228, -2180.43, -7710.43, 17.25, 0.00, 0.00, 199.98);
  163. CreateObject(18228, -2183.39, -7704.64, 10.25, 0.00, 0.00, 199.98);
  164. CreateObject(18228, -2186.91, -7697.74, 2.25, 0.00, 0.00, 199.98);
  165. CreateObject(18228, -2193.09, -7727.74, 18.50, 0.00, 0.00, 199.98);
  166. CreateObject(18228, -2201.84, -7727.96, 2.50, 0.00, 0.00, 199.98);
  167. CreateObject(18228, -2180.67, -7725.22, 37.50, 0.00, 0.00, 199.97);
  168. CreateObject(18228, -2173.78, -7748.95, 37.50, 0.00, 0.00, 259.98);
  169. CreateObject(18228, -2190.52, -7757.55, 19.25, 0.00, 0.00, 259.97);
  170. CreateObject(18228, -2202.40, -7762.47, 1.00, 0.00, 0.00, 259.97);
  171. CreateObject(18228, -2179.99, -7759.43, 1.00, 0.00, 0.00, 289.97);
  172. CreateObject(18228, -2177.27, -7707.10, 11.50, 0.00, 0.00, 199.97);
  173. CreateObject(18228, -2199.97, -7712.99, 14.75, 0.00, 0.00, 199.98);
  174. CreateObject(18228, -2208.20, -7701.68, 7.50, 0.00, 0.00, 199.97);
  175. CreateObject(18228, -2209.39, -7742.42, 5.50, 0.00, 0.00, 259.97);
  176. CreateObject(18228, -2160.81, -7714.95, 14.25, 0.00, 0.00, 177.98);
  177. CreateObject(18228, -2062.86, -7794.79, 10.25, 0.00, 0.00, 330.00);
  178. CreateObject(18228, -2089.48, -7797.66, 4.75, 0.00, 0.00, 330.00);
  179. CreateObject(18228, -2088.34, -7787.84, 18.75, 0.00, 0.00, 309.99);
  180. CreateObject(18228, -2108.85, -7757.39, 30.50, 0.00, 0.00, 39.99);
  181. CreateObject(18228, -2130.23, -7777.92, 24.50, 0.00, 0.00, 289.99);
  182. CreateObject(18228, -2137.99, -7795.25, 5.25, 0.00, 0.00, 289.98);
  183. CreateObject(18228, -2153.73, -7772.89, 5.25, 0.00, 0.00, 293.98);
  184. CreateObject(18228, -2168.76, -7785.05, 5.25, 0.00, 0.00, 307.98);
  185. CreateObject(18228, -2058.45, -7805.57, -1.75, 0.00, 0.00, 330.00);
  186. CreateObject(18228, -2162.16, -7766.62, 20.00, 0.00, 0.00, 305.97);
  187. CreateObject(18228, -2165.20, -7760.41, 28.75, 0.00, 0.00, 319.97);
  188. CreateObject(18228, -2170.50, -7753.71, 36.25, 0.00, 0.00, 319.97);
  189. CreateObject(18228, -2164.37, -7750.52, 36.25, 0.00, 0.00, 329.97);
  190. CreateObject(18228, -2175.98, -7763.43, 28.00, 0.00, 0.00, 305.97);
  191. CreateObject(18228, -2194.35, -7773.49, 13.00, 0.00, 0.00, 305.96);
  192. CreateObject(18228, -2204.53, -7782.02, 3.75, 0.00, 0.00, 293.96);
  193. CreateObject(18228, -2023.91, -7709.11, -12.25, 0.00, 0.00, 39.99);
  194. CreateObject(18228, -2032.90, -7729.96, 0.00, 0.00, 0.00, 39.99);
  195. CreateObject(18228, -2014.35, -7657.48, -9.64, 0.00, 0.00, 83.98);
  196. CreateObject(8483, -2141.61, -7748.52, 38.98, 0.00, 0.00, 73.98);
  197. CreateObject(18228, -2117.08, -7765.72, 30.50, 0.00, 0.00, 279.99);
  198. CreateObject(18228, -2131.99, -7768.18, 35.25, 0.00, 0.00, 279.99);
  199. CreateObject(18228, -2128.20, -7782.67, 19.75, 0.00, 0.00, 279.99);
  200. CreateObject(18228, -2112.23, -7612.62, -9.50, 0.00, 0.00, 117.99);
  201. CreateObject(18228, -2121.45, -7608.68, -9.50, 0.00, 0.00, 127.99);
  202. CreateObject(3434, -2140.03, -7741.95, 44.88, 0.00, 0.00, 161.99);
  203. CreateObject(1431, -2049.57, -7615.00, 2.74, 0.00, 0.00, 0.00);
  204. CreateObject(935, -2066.36, -7620.18, 2.52, 0.00, 0.00, 0.00);
  205. CreateObject(3243, -2105.42, -7647.03, 17.86, 0.00, 0.00, 221.99);
  206. CreateObject(3243, -2086.43, -7651.65, 17.36, 0.00, 0.00, 107.99);
  207. CreateObject(11427, -2066.43, -7724.34, 23.33, 0.00, 0.00, 273.99);
  208. CreateObject(5777, -2099.60, -7639.82, 17.93, 0.00, 0.00, 256.00);
  209. CreateObject(2895, -2099.82, -7640.59, 17.63, 0.00, 0.00, 0.00);
  210. CreateObject(16689, -2071.94, -7762.65, 36.08, 0.00, 0.00, 11.99);
  211. CreateObject(3461, -2094.71, -7740.53, 34.86, 0.00, 0.00, 0.00);
  212. CreateObject(3461, -2104.88, -7735.29, 34.32, 0.00, 0.00, 0.00);
  213. CreateObject(18228, -2109.48, -7765.70, 30.50, 0.00, 0.00, 271.98);
  214. CreateObject(16285, -2063.80, -7777.70, 33.10, 0.00, 0.00, 0.00);
  215. CreateObject(2780, -2144.34, -7742.71, 34.25, 0.00, 0.00, 0.00);
  216. CreateObject(2780, -2130.42, -7744.83, 34.25, 0.00, 0.00, 0.00);
  217. CreateObject(2780, -2138.88, -7743.75, 33.50, 0.00, 0.00, 0.00);
  218. CreateObject(2780, -2140.33, -7746.93, 47.75, 0.00, 0.00, 0.00);
  219. CreateObject(3524, -2139.05, -7742.75, 32.93, 0.00, 0.00, 170.00);
  220. CreateObject(3528, -2137.83, -7744.98, 41.92, 0.00, 344.99, 54.00);
  221. CreateObject(3528, -2140.74, -7744.37, 41.67, 0.00, 344.99, 76.00);
  222. CreateObject(14608, -2121.40, -7718.55, 23.33, 0.00, 0.00, 289.99);
  223. CreateObject(1313, -2077.86, -7753.56, 35.89, 0.00, 0.00, 0.00);
  224. CreateObject(2045, -2137.14, -7734.17, 33.10, 0.00, 0.00, 0.00);
  225. CreateObject(3364, -2038.80, -7662.40, 13.50, 4.00, 0.00, 216.00);
  226. CreateObject(16502, -2015.94, -7661.86, 11.33, 0.00, 0.00, 24.00);
  227. CreateObject(749, -2007.61, -7667.93, -3.09, 0.00, 0.00, 0.00);
  228. CreateObject(749, -2010.85, -7667.85, -3.34, 0.00, 0.00, 0.00);
  229. CreateObject(758, -2118.47, -7731.05, 31.74, 0.00, 0.00, 0.00);
  230. CreateObject(711, -2121.72, -7736.25, 39.18, 0.00, 0.00, 0.00);
  231. CreateObject(711, -2157.23, -7710.05, 57.16, 0.00, 0.00, 0.00);
  232. CreateObject(711, -2154.92, -7721.26, 57.20, 0.00, 0.00, 0.00);
  233. CreateObject(711, -2159.97, -7743.56, 58.33, 0.00, 0.00, 0.00);
  234. CreateObject(711, -2169.95, -7723.77, 58.16, 0.00, 0.00, 0.00);
  235. CreateObject(711, -2151.00, -7736.64, 57.77, 0.00, 0.00, 0.00);
  236. CreateObject(711, -2146.40, -7740.42, 49.35, 0.00, 0.00, 0.00);
  237. CreateObject(711, -2091.79, -7738.08, 39.39, 0.00, 0.00, 0.00);
  238. CreateObject(711, -2070.86, -7772.67, 38.86, 0.00, 0.00, 0.00);
  239. CreateObject(711, -2068.60, -7746.27, 38.73, 0.00, 0.00, 0.00);
  240. CreateObject(711, -2122.67, -7681.60, 23.98, 0.00, 0.00, 0.00);
  241. CreateObject(711, -2026.03, -7655.13, 17.96, 0.00, 0.00, 0.00);
  242. CreateObject(711, -2052.13, -7662.27, 19.23, 0.00, 0.00, 0.00);
  243. CreateObject(711, -2047.26, -7722.52, 21.59, 0.00, 0.00, 0.00);
  244. CreateObject(711, -2031.19, -7686.14, 19.00, 0.00, 0.00, 0.00);
  245. CreateObject(711, -2044.94, -7680.76, 19.88, 0.00, 0.00, 0.00);
  246. CreateObject(803, -2086.78, -7660.24, 18.90, 0.00, 0.00, 0.00);
  247. CreateObject(808, -2076.26, -7643.58, 4.46, 0.00, 0.00, 0.00);
  248. CreateObject(808, -2047.86, -7722.44, 16.94, 0.00, 0.00, 0.00);
  249. CreateObject(808, -2038.78, -7626.19, 3.55, 0.00, 0.00, 0.00);
  250. CreateObject(808, -2027.21, -7654.23, 14.04, 0.00, 0.00, 0.00);
  251. CreateObject(808, -2135.18, -7721.78, 35.17, 0.00, 0.00, 0.00);
  252. CreateObject(808, -2089.78, -7762.76, 34.86, 0.00, 0.00, 0.00);
  253. CreateObject(648, -2207.27, -7694.20, 14.49, 0.00, 41.00, 128.00);
  254. CreateObject(710, -2031.87, -7644.26, 16.71, 0.00, 0.00, 0.00);
  255. CreateObject(18228, -2180.62, -7742.37, 37.50, 0.00, 0.00, 243.97);
  256. CreateObject(3461, -2124.33, -7716.42, 23.18, 0.00, 0.00, 0.00);
  257. CreateObject(3461, -2117.53, -7719.12, 22.96, 0.00, 0.00, 0.00);
  258. CreateObject(2631, -2120.31, -7716.64, 21.68, 0.00, 0.00, 335.99);
  259. CreateObject(2869, -2120.27, -7717.03, 21.74, 0.00, 0.00, 302.00);
  260. CreateObject(14705, -2121.70, -7716.80, 21.90, 0.00, 0.00, 0.00);
  261. CreateObject(2096, -2080.10, -7753.02, 33.30, 0.00, 0.00, 130.00);
  262. CreateObject(838, -2048.98, -7743.14, 18.54, 0.00, 0.00, 0.00);
  263. CreateObject(18228, -2213.20, -7693.69, 1.25, 0.00, 0.00, 181.98);
  264. CreateObject(710, -2090.98, -7777.92, 47.72, 0.00, 0.00, 0.00);
  265. CreateObject(710, -2170.99, -7719.15, 64.05, 0.00, 0.00, 0.00);
  266. CreateObject(9831, -2122.89, -7721.57, 23.33, 0.00, 0.00, 332.00);
  267. CreateObject(9831, -2120.66, -7721.39, 23.33, 0.00, 0.00, 331.99);
  268. CreateObject(9831, -2123.51, -7719.75, 22.83, 0.00, 0.00, 31.99);
  269. CreateObject(1517, -2079.76, -7753.23, 32.75, 0.00, 0.00, 0.00);
  270. CreateObject(1520, -2066.32, -7620.07, 3.08, 0.00, 0.00, 0.00);
  271. CreateObject(1667, -2066.47, -7620.16, 3.15, 0.00, 0.00, 0.00);
  272. CreateObject(1736, -2079.12, -7753.83, 34.89, 0.00, 0.00, 208.00);
  273. CreateObject(1828, -2054.87, -7617.05, 1.61, 0.00, 0.00, 0.00);
  274. CreateObject(18228, -2046.07, -7789.42, -5.00, 0.00, 0.00, 330.00);
  275. CreateObject(18228, -2025.41, -7771.08, -15.25, 0.00, 0.00, 27.99);
  276. CreateObject(18228, -2217.64, -7732.85, -7.50, 0.00, 0.00, 271.97);
  277. CreateObject(18228, -2218.62, -7766.58, -7.50, 0.00, 0.00, 285.97);
  278. CreateObject(18228, -2216.17, -7776.45, -7.50, 0.00, 0.00, 319.97);
  279. CreateObject(18228, -2208.53, -7779.44, -7.50, 0.00, 0.00, 7.97);
  280. CreateObject(18228, -2188.69, -7787.85, -7.50, 0.00, 0.00, 27.97);
  281. CreateObject(18228, -2111.20, -7761.45, 30.50, 0.00, 0.00, 25.99);
  282. CreateObject(18228, -2110.34, -7770.38, 30.50, 0.00, 0.00, 269.98);
  283. CreateObject(18228, -2081.45, -7789.58, 18.75, 0.00, 0.00, 297.99);
  284. CreateObject(18228, -2187.14, -7745.08, 28.50, 0.00, 0.00, 243.97);
  285. CreateObject(18228, -2197.64, -7744.93, 14.75, 0.00, 0.00, 243.97);
  286. CreateObject(18228, -2211.18, -7693.79, -2.25, 0.00, 0.00, 199.97);
  287. CreateObject(18228, -2187.55, -7718.17, 25.25, 0.00, 0.00, 199.98);
  288. CreateObject(18228, -2215.04, -7750.00, 1.75, 0.00, 0.00, 259.97);
  289. CreateObject(18228, -2231.04, -7754.53, -12.00, 0.00, 0.00, 259.97);
  290. CreateObject(3872, -2171.26, -7726.15, 94.34, 0.00, 0.00, 300.00);
  291. CreateObject(18228, -2166.89, -7702.44, 1.75, 0.00, 0.00, 221.97);
  292. CreateObject(18228, -2158.60, -7707.25, 1.75, 0.00, 0.00, 207.97);
  293. CreateObject(900, -2157.60, -7665.80, -6.00, 0.00, 0.00, 0.00);
  294. CreateObject(900, -2151.10, -7648.97, -6.00, 0.00, 0.00, 0.00);
  295. CreateObject(900, -2135.69, -7661.19, -6.00, 0.00, 0.00, 344.00);
  296. CreateObject(900, -2140.20, -7671.99, -5.25, 0.00, 0.00, 352.00);
  297. CreateObject(900, -2139.60, -7659.26, -5.00, 0.00, 0.00, 0.00);
  298. CreateObject(18228, -2138.77, -7648.42, -9.50, 0.00, 0.00, 231.96);
  299. CreateObject(18228, -2125.25, -7794.01, 6.25, 0.00, 0.00, 279.99);
  300. CreateObject(18228, -2181.06, -7732.59, 36.00, 0.00, 0.00, 213.97);
  301. CreateObject(18228, -2164.67, -7753.12, 41.50, 0.00, 0.00, 335.97);
  302. CreateObject(18228, -2170.48, -7762.63, 29.50, 0.00, 0.00, 335.97);
  303. CreateObject(18228, -2182.95, -7750.86, 23.50, 0.00, 0.00, 327.96);
  304. CreateObject(18228, -2173.01, -7769.80, 18.75, 0.00, 0.00, 335.96);
  305. CreateObject(18228, -2011.50, -7662.16, -9.64, 0.00, 0.00, 83.99);
  306. CreateObject(622, -2156.67, -7797.49, 13.59, 0.00, 0.00, 248.00);
  307. CreateObject(18228, -2081.46, -7807.16, 0.25, 0.00, 0.00, 309.99);
  308. CreateObject(18228, -2133.17, -7812.24, -13.25, 0.00, 0.00, 279.99);
  309. CreateObject(18228, -2091.62, -7817.55, -13.25, 0.00, 0.00, 331.99);
  310. CreateObject(18228, -2047.77, -7805.03, -13.25, 0.00, 0.00, 5.98);
  311. CreateObject(18228, -2012.70, -7728.90, -16.25, 0.00, 0.00, 61.98);
  312. CreateObject(1458, -2048.98, -7626.10, 2.47, 0.00, 0.00, 342.00);
  313. CreateObject(16406, -2200.05, -7794.86, 16.23, 0.00, 0.00, 40.00);
  314. CreateObject(18228, -2192.60, -7757.65, 8.25, 0.00, 0.00, 327.96);
  315. CreateObject(18228, -2173.41, -7771.43, 16.50, 0.00, 0.00, 335.96);
  316. CreateObject(16404, -2112.30, -7677.04, 20.02, 0.00, 0.00, 0.00);
  317. CreateObject(1451, -2060.26, -7766.20, 33.68, 0.00, 0.00, 0.00);
  318. CreateObject(1454, -2086.55, -7770.07, 33.50, 0.00, 0.00, 0.00);
  319. CreateObject(6865, -2145.10, -7725.32, 42.47, 0.00, 0.00, 128.00);
  320. CreateObject(1486, -2098.75, -7571.04, 10.21, 0.00, 0.00, 0.00);
  321. CreateObject(1433, -2100.48, -7568.82, 9.12, 0.00, 0.00, 0.00);
  322. CreateObject(1609, -2013.29, -7648.17, 0.00, 0.00, 0.00, 0.00);
  323. CreateObject(18228, -2024.53, -7634.94, -15.64, 0.00, 0.00, 77.98);
  324. CreateObject(18228, -2032.51, -7611.65, -18.14, 0.00, 0.00, 77.98);
  325. CreateObject(18228, -2029.38, -7622.06, -15.64, 0.00, 0.00, 77.98);
  326. CreateObject(18228, -2037.00, -7603.05, -18.64, 0.00, 0.00, 85.98);
  327. CreateObject(18228, -2039.14, -7602.02, -18.64, 0.00, 0.00, 93.98);
  328. CreateObject(18228, -2126.34, -7657.73, -4.25, 0.00, 0.00, 237.99);
  329. CreateObject(18228, -2132.95, -7706.51, 4.25, 0.00, 0.00, 229.99);
  330. CreateObject(18228, -2132.95, -7716.77, 6.25, 0.00, 0.00, 229.99);
  331. CreateObject(18228, -2061.39, -7791.88, 14.75, 0.00, 0.00, 330.00);
  332. CreateObject(18228, -2070.94, -7791.34, 17.50, 0.00, 0.00, 314.00);
  333. CreateObject(18228, -2129.08, -7767.17, 35.25, 0.00, 0.00, 279.99);
  334. SetTimer("RefilObjectHP", 10000, false); //Giving some time to load any objects if not added :)
  335. SendClientMessageToAll(-1, "SA-MP 0.3z : Loading filterscript \"Destroyable Objects\"...");
  336. printf("Filterscript \"DestroyableObjects\" is getting loaded...");
  337. return 1;
  338. }
  339.  
  340. forward RefilObjectHP();
  341.  
  342. public RefilObjectHP()
  343. {
  344. for(new i; i< MAX_OBJECTS; i++) {
  345. if(!IsValidObject(i)) continue;
  346. ObjectHP[i] = 100;
  347. }
  348. FSInit = true;
  349. printf("DestroyableObjects have been completely loaded!");
  350. //To the players who all are connected.
  351. SendClientMessageToAll(-1, "SA-MP 0.3z : Destroyable object system loaded! Shoot down \"CreateObject\" type objects to destroy them!");
  352. SendClientMessageToAll(-1, "SA-MP 0.3z : Note that each \"CreateObject\" related objects got it's own hp and will be displayed to you.");
  353. return 1;
  354. }
  355.  
  356. public OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ)
  357. {
  358. if(FSInit == true) {
  359. switch(hittype) {
  360. case BULLET_HIT_TYPE_OBJECT: {
  361. if(IsValidObject(hitid)) {
  362. if(IsMeleeWeapon(weaponid)) {
  363. ObjectHP[hitid] -= 1; //Lesser damage.
  364. if(ObjectHP[hitid] >= 0) {
  365. new str[128];
  366. format(str, sizeof(str), "~G~DAMAGE DONE~N~~Y~OBJECTID~W~ :~G~ %d~N~~Y~HP LEFT ~W~: ~G~ %d", hitid, ObjectHP[hitid]);
  367. GameTextForPlayer(playerid, str, 1800, 3);
  368. }
  369. }
  370. else {
  371. ObjectHP[hitid] -= randomEx(2, 8);
  372. if(ObjectHP[hitid] >= 0) {
  373. new str[128];
  374. format(str, sizeof(str), "~G~DAMAGE DONE~N~~Y~OBJECTID~W~ :~G~ %d~N~~Y~HP LEFT ~W~: ~G~ %d", hitid, ObjectHP[hitid]);
  375. GameTextForPlayer(playerid, str, 1800, 3);
  376. }
  377. }
  378. if(ObjectHP[hitid] <= 0)
  379. {
  380. DestroyObject(hitid);
  381. new str[128];
  382. format(str, sizeof(str), "SA-MP 0.3z : You have destroyed object id %d !", hitid);
  383. SendClientMessage(playerid, -1, str);
  384. format(str, sizeof(str), "SA-MP 0.3z : \"%s\" (ID:%d) has destroyed the object %d", GetName(playerid), playerid, hitid);
  385. for(new i; i< GetMaxPlayers(); i++) {
  386. if(!IsPlayerConnected(i)) continue;
  387. if(i == playerid) continue;
  388. SendClientMessageToAll(-1, str);
  389. }
  390. }
  391. }
  392. }
  393. }
  394. }
  395. return 1;
  396. }
  397.  
  398.  
  399. public OnPlayerCommandText(playerid, cmdtext[])
  400. {
  401. if(!IsPlayerAdmin(playerid)) return 0; //Only RCON admins can access the following cmds (Meant for debugging purposes)
  402. if(!strcmp(cmdtext, "/sawnoff")) return GivePlayerWeapon(playerid, 26, 99999);
  403. if(!strcmp(cmdtext, "/deagle")) return GivePlayerWeapon(playerid, 24, 99999);
  404. if(!strcmp(cmdtext, "/minigun")) return GivePlayerWeapon(playerid, 38, 99999);
  405. if(!strcmp(cmdtext, "/knuckles")) return GivePlayerWeapon(playerid, 1, 1);
  406. if(!strcmp(cmdtext, "/knife")) return GivePlayerWeapon(playerid, 2, 1);
  407. if(!strcmp(cmdtext, "/shotgun")) return GivePlayerWeapon(playerid, 25, 99999);
  408. if(!strcmp(cmdtext, "/kill")) return SetPlayerHealth(playerid, 0.0);
  409. if(!strcmp(cmdtext, "/lcmds"))
  410. {
  411. SendClientMessage(playerid, 0xFF0000FF, "-------------------------------------------------------------");
  412. SendClientMessage(playerid, 0xFF0000, "SA-MP 0.3z - Destroyable Object Test by Lordz.");
  413. SendClientMessage(playerid, -1, "/sawnoff, /deagle, /minigun, /knuckles, /knife, /shotgun, /kill, /island");
  414. return SendClientMessage(playerid, 0xFF0000FF, "-------------------------------------------------------------");
  415. }
  416. if(!strcmp(cmdtext, "/island")) return SetPlayerPos (playerid,-2050.0810547,-7609.0312500,2.2020721);
  417. return 0;
  418. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement