JPeedro

Untitled

Oct 26th, 2016
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.15 KB | None | 0 0
  1. // # Definições #
  2.  
  3. #define MAX_ZUMBIS (100) // Quantidade de zumbis
  4.  
  5. // # Variaveis #
  6.  
  7. new STA_ZUMBIS[MAX_ZUMBIS];
  8.  
  9. // # Forwards #
  10.  
  11. forward RespawnZumbis();
  12. forward Float:GetDistanceBetweenPlayers(playerid,targetplayerid);
  13.  
  14. // # Arrays #
  15.  
  16. new Float:ZumbiSpawns[][] =
  17. {
  18. {2795.4009,-436.1411,22.2657}, // Los Santos
  19. {2873.8997,-835.2676,11.1063}, // Los Santos
  20. {2864.7012,-1699.4677,11.5506}, // Los Santos
  21. {2820.2788,-2064.2935,11.2351}, // Los Santos
  22. {2652.3008,-1841.4071,10.7951}, // Los Santos
  23. {2521.5166,-1732.6139,13.6257}, // Los Santos
  24. {2383.5044,-1658.8802,13.1066}, // Los Santos
  25. {2341.3047,-1497.8413,23.6418}, // Los Santos
  26. {2116.7825,-1387.2661,23.9221}, // Los Santos
  27. {2085.8745,-1765.4282,13.2995}, // Los Santos
  28. {1961.5449,-1932.6660,14.0881}, // Los Santos
  29. {2009.2513,-2193.2358,14.5548}, // Los Santos
  30. {1483.6113,-2243.9805,14.0360}, // Los Santos
  31. {1186.9801,-2035.4069,69.0561}, // Los Santos
  32. {1253.1837,-1921.1403,31.4873}, // Los Santos
  33. {1472.0094,-1715.6829,14.6291}, // Los Santos
  34. {1192.7866,-1408.6003,13.7366}, // Los Santos
  35. {1153.8406,-1039.8510,31.5726}, // Los Santos
  36. {1527.1754,-963.0836,36.2564}, // Los Santos
  37. {1715.0190,-623.2297,40.3370}, // Los Santos
  38. {1326.8386,-703.5694,92.8390}, // Los Santos
  39. {705.1436,-1007.5642,52.4416}, // Los Santos
  40. {641.7177,-1206.3488,18.0685}, // Los Santos
  41. {632.4083,-1586.0122,15.4125}, // Los Santos
  42. {330.6803,-1584.4789,33.2355}, // Los Santos
  43. {221.9603,-1733.1564,3.9693}, // Los Santos
  44. {196.3114,-1817.5830,4.4084}, // Los Santos
  45. {677.4689,-1826.2697,6.6453}, // Los Santos
  46. {363.3442,-1369.0387,14.2355}, // Los Santos
  47. {920.3784,-1105.6799,24.7024}, // Los Santos
  48. {1216.8064,-1063.4531,30.6276}, // Los Santos
  49. {1588.4250,-1025.1344,23.7300}, // Los Santos
  50. {1944.7889,-1047.5945,24.1410}, // Los Santos
  51. {2163.6750,-1005.1782,62.6009}, // Los Santos
  52. {2440.1726,-1036.7185,56.1447}, // Los Santos
  53. {2456.0291,-953.2324,80.4687}, // Los Santos
  54. {2694.4724,-1184.9235,69.1866}, // Los Santos
  55. {2455.9585,-1256.0237,24.0482}, // Los Santos
  56. {2291.0239,-1522.0126,26.9425}, // Los Santos
  57. {1950.2036,-1512.1504,3.3349}, // Los Santos
  58. {1579.7814,-1621.7145,13.7102}, // Los Santos
  59. {1483.0782,-1766.4390,18.7962}, // Los Santos
  60. {1151.6876,-1754.6912,13.7557}, // Los Santos
  61. {-64.0552,-1604.7864,3.5075}, // Zona Rural
  62. {-98.6526,-1132.2614,1.2138}, // Zona Rural
  63. {-242.5832,-899.9987,44.5898}, // Zona Rural
  64. {-56.3941,-440.9500,1.7910}, // Zona Rural
  65. {1.9080,-257.8446,5.7870}, // Zona Rural
  66. {137.6751,-147.3443,1.3107}, // Zona Rural
  67. {325.4643,-73.9733,1.5767}, // Zona Rural
  68. {736.3733,-161.3227,19.5150}, // Zona Rural
  69. {1278.8867,-94.5722,37.2816}, // Zona Rural
  70. {1277.3042,180.5284,20.0196}, // Zona Rural
  71. {1277.8903,334.9183,19.8938}, // Zona Rural
  72. {1383.8292,441.5166,20.0126}, // Zona Rural
  73. {1870.4825,362.1830,19.9273}, // Zona Rural
  74. {2341.4365,202.2076,26.3088}, // Zona Rural
  75. {2266.9641,40.0717,26.1251}, // Zona Rural
  76. {2277.1172,-100.6083,26.3139}, // Zona Rural
  77. {2149.2014,-80.7472,3.1330}, // Zona Rural
  78. {2458.5222,45.7472,26.8033}, // Zona Rural
  79. {2766.5596,150.0098,22.2194}, // Zona Rural
  80. {1888.9232,-15.4289,34.7899}, // Zona Rural
  81. {1552.8644,29.4204,24.8265}, // Zona Rural
  82. {646.9158,-551.8610,16.8681}, // Zona Rural
  83. {679.9328,-682.6618,15.8883}, // Zona Rural
  84. {843.0929,-563.1314,16.6052}, // Zona Rural
  85. {-47.6468,-1146.2418,1.6537}, // Zona Rural
  86. {-269.8525,-1962.4736,30.6417}, // Zona Rural
  87. {-278.5058,-2186.4653,28.9446}, // Zona Rural
  88. {-194.2959,-2386.6855,34.4886}, // Zona Rural
  89. {-18.7354,-2511.1570,37.1079}, // Zona Rural
  90. {-237.8520,-2856.2354,39.5464}, // Zona Rural
  91. {-871.2178,-2857.3674,62.0685}, // Zona Rural
  92. {-1569.2678,-2742.0234,48.8670}, // Zona Rural
  93. {-1763.6296,-2622.8889,50.2272}, // Zona Rural
  94. {-2062.3228,-2515.2295,31.2404}, // Zona Rural
  95. {-2150.0974,-2414.7437,30.4463}, // Zona Rural
  96. {-2169.8186,-2300.5308,30.6707}, // Zona Rural
  97. {-2444.9302,-2293.8450,15.3148}, // Zona Rural
  98. {-2930.1387,-1707.5583,18.0961}, // Zona Rural
  99. {-582.7748,-2260.7571,25.9801}, // Zona Rural
  100. {-2900.6377,-815.8029,8.5892}, // Zona Rural
  101. {-2792.7156,-489.7506,7.4086}, // Zona Rural
  102. {-2769.1543,-312.4209,8.2807}, // San Fierro
  103. {-2708.6401,-133.2507,4.3003}, // San Fierro
  104. {-2577.6660,-33.9526,8.2263}, // San Fierro
  105. {-2366.6045,101.0116,36.1917}, // San Fierro
  106. {-2363.9109,367.5241,35.3167}, // San Fierro
  107. {-2255.5132,548.7615,35.4196}, // San Fierro
  108. {-2439.6968,738.4038,35.4694}, // San Fierro
  109. {-2652.7073,612.2782,14.8821}, // San Fierro
  110. {-2750.3289,777.0749,54.1215}, // San Fierro
  111. {-2606.4106,1000.2979,78.2489}, // San Fierro
  112. {-2422.4773,1095.1322,55.6750}, // San Fierro
  113. {-1950.2863,1074.0146,54.5959}, // San Fierro
  114. {-1793.0676,1185.9556,25.4003}, // San Fierro
  115. {-1597.9189,1126.0699,7.0802}, // San Fierro
  116. {-1554.8429,802.0918,7.5215}, // San Fierro
  117. {-1620.8597,674.4463,8.0587}, // San Fierro
  118. {-1724.6707,622.1673,24.6914}, // San Fierro
  119. {-1976.4135,571.6899,35.0319}, // San Fierro
  120. {-1981.8943,450.4902,36.1943}, // San Fierro
  121. {-2054.1313,217.0414,35.7041}, // San Fierro
  122. {-2008.6234,105.5976,27.2300}, // San Fierro
  123. {-2045.3480,-70.6174,35.5887}, // San Fierro
  124. {-2260.2886,-185.4810,35.4363}, // San Fierro
  125. {-2122.7148,-339.2209,35.0778}, // San Fierro
  126. {-2061.1938,-579.2495,29.5582}, // San Fierro
  127. {-1761.2820,-587.8341,16.3282}, // San Fierro
  128. {-1549.5500,-435.0923,6.2841}, // San Fierro
  129. {-1520.1268,-198.9575,13.9851}, // San Fierro
  130. {-1212.8049,-202.1554,14.2359}, // San Fierro
  131. {-966.3928,-321.0261,37.3397}, // San Fierro
  132. {-671.3246,-245.1222,63.6382}, // San Fierro
  133. {-516.3409,-180.6767,77.6744}, // San Fierro
  134. {-470.6407,204.4323,8.2628}, // San Fierro
  135. {-1281.5859,461.7553,7.5398}, // San Fierro
  136. {-1447.7528,305.5912,7.8077}, // San Fierro
  137. {-1629.2167,63.6011,5.2415}, // San Fierro
  138. {-1808.2897,-116.9125,5.3516}, // San Fierro
  139. {-1836.6230,-238.2350,19.0076}, // San Fierro
  140. {-1937.0448,-242.2486,38.7758}, // San Fierro
  141. {-1882.1913,137.3312,38.8489}, // San Fierro
  142. {-1701.2637,503.1810,39.6528}, // San Fierro
  143. {-1654.9154,401.9948,7.2620}, // San Fierro
  144. {-1694.0715,924.2968,25.2894}, // San Fierro
  145. {-2623.7881,1385.1246,7.8403}, // San Fierro
  146. {-2881.8538,1183.7288,9.0235}, // San Fierro
  147. {-2730.5181,384.0411,5.6000}, // San Fierro
  148. {-2678.0913,1389.3193,55.5176}, // San Fierro
  149. {-2737.5181,2353.4497,72.0852}, // San Fierro
  150. {-2517.3789,2435.9790,17.2557}, // San Fierro
  151. {-2258.2749,2330.3579,5.3778}, // San Fierro
  152. {-2493.6841,2258.1172,5.2525}, // San Fierro
  153. {-2426.2603,2499.8555,13.7315}, // San Fierro
  154. {-2345.5774,2636.1714,55.0858}, // San Fierro
  155. {-1858.2524,2656.7341,54.7487}, // Las Venturas
  156. {-1788.2550,2250.9387,24.4708}, // Las Venturas
  157. {-1513.3121,1843.3047,30.0686}, // Las Venturas
  158. {-1319.0692,1856.4763,39.1949}, // Las Venturas
  159. {-1122.9033,1604.9918,27.5040}, // Las Venturas
  160. {-1136.8154,1094.5460,38.9326}, // Las Venturas
  161. {-860.9340,1049.0911,26.2214}, // Las Venturas
  162. {-703.1524,950.7838,12.7051}, // Las Venturas
  163. {-604.3333,638.5847,16.8527}, // Las Venturas
  164. {-156.8124,572.1144,16.1154}, // Las Venturas
  165. {-147.2195,455.6111,12.3344}, // Las Venturas
  166. {206.2825,729.0777,5.9127}, // Las Venturas
  167. {651.4494,880.7445,-41.6622}, // Las Venturas
  168. {854.9787,856.6353,13.4107}, // Las Venturas
  169. {662.2150,1090.1860,29.1290}, // Las Venturas
  170. {294.3615,1252.8156,15.3084}, // Las Venturas
  171. {114.3131,1081.4100,13.7876}, // Las Venturas
  172. {-107.1165,1096.8320,19.5692}, // Las Venturas
  173. {-270.2360,1209.8297,20.4946}, // Las Venturas
  174. {-314.7569,1062.9000,19.6786}, // Las Venturas
  175. {74.2123,1170.0914,19.1552}, // Las Venturas
  176. {267.5610,1428.5962,11.2935}, // Las Venturas
  177. {368.9716,1483.4789,8.8927}, // Las Venturas
  178. {220.6830,1748.3926,18.0140}, // Las Venturas
  179. {73.3711,1913.9170,17.6624}, // Las Venturas
  180. {220.0237,1911.1189,17.6987}, // Las Venturas
  181. {216.6860,1821.3010,18.2923}, // Las Venturas
  182. {304.7970,1847.7047,17.5132}, // Las Venturas
  183. {274.4986,1997.1270,17.4887}, // Las Venturas
  184. {352.7440,2129.7629,17.4487}, // Las Venturas
  185. {-77.8385,1365.6025,10.7899}, // Las Venturas
  186. {30.4688,1539.2644,13.3147}, // Las Venturas
  187. {-389.8145,1767.2087,45.9440}, // Las Venturas
  188. {-280.2015,1884.5236,44.1960}, // Las Venturas
  189. {-335.9843,2218.8560,42.8114}, // Las Venturas
  190. {-388.4366,2250.0950,41.8624}, // Las Venturas
  191. {-513.4664,1988.6299,61.0005}, // Las Venturas
  192. {-835.7363,2028.1357,62.1660}, // Las Venturas
  193. {-884.6630,1803.4282,60.4767}, // Las Venturas
  194. {-858.0242,1608.9351,27.6993}, // Las Venturas
  195. {-782.9390,1491.1061,23.1620}, // Las Venturas
  196. {-829.8999,1392.6544,13.8062}, // Las Venturas
  197. {-1029.9946,1441.7839,38.6877}, // Las Venturas
  198. {-765.1415,1561.7739,28.2970}, // Las Venturas
  199. {-1104.7635,1543.7177,26.7938}, // Las Venturas
  200. {-1072.2887,2214.4358,89.6808}, // Las Venturas
  201. {-1307.7382,2684.3979,50.0583}, // Las Venturas
  202. {-1483.0747,2661.4226,55.8338}, // Las Venturas
  203. {-1544.6085,2550.7935,55.7279}, // Las Venturas
  204. {-1634.2478,2702.7310,57.5965}, // Las Venturas
  205. {-908.7076,2721.4912,46.1715}, // Las Venturas
  206. {-589.5245,2746.5273,61.8688}, // Las Venturas
  207. {-328.9026,2699.2397,62.6936}, // Las Venturas
  208. {-177.3747,2636.5662,63.4715}, // Las Venturas
  209. {180.0673,2745.9978,57.3490}, // Las Venturas
  210. {302.5261,2582.2942,17.8217}, // Las Venturas
  211. {207.3371,2490.4155,16.8865}, // Las Venturas
  212. {515.0314,2375.0391,30.8081}, // Las Venturas
  213. {907.0261,2195.3560,10.9188}, // Las Venturas
  214. {999.1251,1951.2949,11.0071}, // Las Venturas
  215. {1145.2195,1813.5844,11.1553}, // Las Venturas
  216. {1223.8323,1512.3269,6.9719}, // Las Venturas
  217. {1324.0117,1355.2445,11.7083}, // Las Venturas
  218. {1493.0984,1130.3723,10.7465}, // Las Venturas
  219. {1793.9469,1057.6093,6.7166}, // Las Venturas
  220. {1793.4781,799.4873,10.9302}, // Las Venturas
  221. {2116.6956,753.7172,10.5259}, // Las Venturas
  222. {2379.6841,851.7058,7.9503}, // Las Venturas
  223. {2562.1765,1015.8214,11.3124}, // Las Venturas
  224. {2638.9219,1097.0680,10.7032}, // Las Venturas
  225. {2632.3145,1316.8766,11.1813}, // Las Venturas
  226. {2725.1560,1384.8284,7.2210}, // Las Venturas
  227. {2736.2893,1951.4791,13.7261}, // Las Venturas
  228. {2492.7175,1971.8624,10.8585}, // Las Venturas
  229. {2525.9526,2334.8870,11.7619}, // Las Venturas
  230. {2608.1321,2510.8301,6.8548}, // Las Venturas
  231. {2385.7202,2691.9978,11.0281}, // Las Venturas
  232. {2141.4980,2769.9314,11.6631}, // Las Venturas
  233. {1742.3196,2712.5088,11.3399}, // Las Venturas
  234. {1624.8938,2486.1760,7.0972}, // Las Venturas
  235. {1538.6361,2210.9807,12.0116}, // Las Venturas
  236. {1338.2235,2055.3032,10.8921}, // Las Venturas
  237. {1356.0677,2158.8645,10.9146}, // Las Venturas
  238. {1611.1847,1848.8713,11.1195}, // Las Venturas
  239. {2046.8578,1672.9048,10.3590}, // Las Venturas
  240. {2094.1716,1298.5135,11.5234}, // Las Venturas
  241. {2028.5369,1007.5620,10.8508}, // Las Venturas
  242. {2176.6917,911.5197,11.3571} // Las Venturas
  243. };
  244.  
  245. // # Callbacks e Stocks #
  246.  
  247. stock CriarZumbis()
  248. {
  249. new str[30];
  250. for(new i = 0; i < MAX_ZUMBIS; i++)
  251. {
  252. format(str, sizeof(str), "[STA]Zombie_%i", i);
  253. STA_ZUMBIS[i] = FCNPC_Create(str);
  254. SetPlayerColor(STA_ZUMBIS[i], 0xCC2929FF);
  255. }
  256. return 1;
  257. }
  258.  
  259. public RespawnZumbis()
  260. {
  261. for(new i = 0; i < MAX_ZUMBIS; i++)
  262. {
  263. if(FCNPC_IsDead(i))
  264. {
  265. FCNPC_Respawn(i);
  266. }
  267. }
  268. print("| INFO |: Os Zumbis foram respawnados.");
  269. return 1;
  270. }
  271.  
  272. public FCNPC_OnDeath(npcid, killerid, weaponid)
  273. {
  274. if(killerid != INVALID_PLAYER_ID && IsPlayerConnected(killerid))
  275. {
  276. pInfo[killerid][pZombieKills]++;
  277. GameTextForPlayer(killerid, "~w~(Zombie Kill)~n~+5 EXP", 2500, 3);
  278. AddEXP(killerid, 5);
  279. }
  280. return 1;
  281. }
  282.  
  283. public FCNPC_OnCreate(npcid)
  284. {
  285. new rand = random(sizeof(ZumbiSpawns));
  286. FCNPC_Spawn(npcid, 162, ZumbiSpawns[rand][0],ZumbiSpawns[rand][1], ZumbiSpawns[rand][2]);
  287. FCNPC_SetInvulnerable(npcid, false);
  288. return 1;
  289. }
  290.  
  291. public FCNPC_OnSpawn(npcid)
  292. {
  293. new Float:ZombiePos[3];
  294. FCNPC_GetPosition(npcid, ZombiePos[0], ZombiePos[1], ZombiePos[2]);
  295. FCNPC_GoTo(npcid, ZombiePos[0]+random(50), ZombiePos[1]+random(25), ZombiePos[2], MOVE_TYPE_WALK, 0.5, true, 0.0, true);
  296.  
  297. SetPlayerAttachedObject(npcid, 0, 2908, 2, 0.0800, 0.0690, 0.0000, 180.0000, 0.0999, 88.9000, 1.2860, 1.1280, 1.1540, 0xFFFFFFFF, 0xFFFFFFFF);
  298. SetPlayerAttachedObject(npcid, 1, 2907, 1, 0.1060, 0.0359, 0.0259, -88.9999, 0.9000, 88.6999, 1.0000, 0.6489, 1.1440, 0xFFFFFFFF, 0xFFFFFFFF);
  299. return 1;
  300. }
  301.  
  302. public FCNPC_OnUpdate(npcid)
  303. {
  304. foreach(new i : Player)
  305. {
  306. if(!IsPlayerNPC(i) && IsPlayerConnected(i))
  307. {
  308. static Float:zP[3], Float:pP[3];
  309. GetPlayerPos(npcid, zP[0], zP[1], zP[2]);
  310. GetPlayerPos(i, pP[0], pP[1], pP[2]);
  311. if(IsPlayerInRangeOfPoint(i, 20.0, zP[0], zP[1], zP[2]))
  312. {
  313. if(GetPlayerState(i) == PLAYER_STATE_ONFOOT)
  314. {
  315. FCNPC_GoToFixZ(npcid, pP[0], pP[1], pP[2], MOVE_TYPE_RUN, 0.5, true, 0.0, true, 0.1);
  316. if(GetDistanceBetweenPlayers(npcid, i) < 1.2)
  317. {
  318. FCNPC_Stop(npcid);
  319. FCNPC_MeleeAttack(npcid, -1, true);
  320. return 1;
  321. }
  322. else FCNPC_StopAttack(npcid);
  323. }
  324. }
  325. }
  326. }
  327. return 1;
  328. }
  329.  
  330. // # Função feita por Bruno da Silva "ipsBruno", editada por JPedro
  331. stock FCNPC_GoToFixZ ( n, Float:x, Float:y, Float:z, type = MOVE_TYPE_AUTO, Float: speed, bool: mapAndreas = true, Float:radius = 0.0, bool:getangle = true, Float: pitch = 0.1) {
  332.  
  333. mapAndreas = true;
  334.  
  335. static
  336. Float:a[3],
  337. Float:b[3];
  338.  
  339. FCNPC_GetPosition(n, a[0], a[1], a[2]);
  340.  
  341. b[0] = x, b[1] = y, b[2] = z;
  342.  
  343. static Float:c[3];
  344. static Float:d[3];
  345.  
  346. static Float:angle;
  347.  
  348. angle = (atan2(a[0]-b[0], a[1]-b[1]))+180.0;
  349.  
  350. if(angle > 360.0) angle -= 360.0;
  351.  
  352. static Float: i;
  353.  
  354. i = pitch;
  355.  
  356. static Float: j;
  357.  
  358. j = VectorSize(a[0]-b[0], a[1]-b[1], 0.0);
  359.  
  360. while( i <= (j) ) {
  361.  
  362. c[0]=a[0]+(i*floatsin(angle,degrees));
  363. c[1]=a[1]+(i*floatcos(angle,degrees));
  364.  
  365. d[0]=a[0]+((i-pitch)*floatsin(angle,degrees));
  366. d[1]=a[1]+((i-pitch)*floatcos(angle,degrees));
  367.  
  368. c[2] = a[2]+(i*( (a[2]-b[2]==0.0?0.0000001:a[2]-b[2])/j));
  369. CA_FindZ_For2DCoord(d[0],d[1],d[2]);
  370.  
  371. i += pitch;
  372.  
  373. if ( d[2] - c[2] > 1.0 ) {
  374. mapAndreas = false;
  375. break;
  376. }
  377.  
  378. }
  379.  
  380. return FCNPC_GoTo( n, x, y, z, type, speed, mapAndreas, radius, getangle);
  381. }
Advertisement
Add Comment
Please, Sign In to add comment