Advertisement
Guest User

hazdog

a guest
Mar 20th, 2009
392
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 23.78 KB | None | 0 0
  1. //---INCLUDE-----
  2. #include <a_samp>
  3.  
  4. //----CORE---------
  5. #define REQUIRED_KILLS 25 //Number of kills to end the gm if above is set to false.
  6.  
  7. //----FORWARD sink----
  8. forward sink1();
  9. forward sink2();
  10.  
  11. //--------GM EXIT----------
  12. forward GameModeExitFunc();
  13.  
  14. //POLICE C EXPLOSION----
  15. forward Explosion1p();
  16. forward Explosion2p();
  17. forward Explosion1s();
  18.  
  19. //----Game Over---
  20. forward OVER();
  21.  
  22. //---TEAMS-----
  23. #define TEAM_1 0
  24. #define TEAM_2 1
  25. #define TEAM_3 2
  26. #define TEAM_4 3
  27. #define TEAM_5 4
  28. #define TEAM_6 5
  29.  
  30. //--TEAM DEFINE------
  31. new Team[MAX_PLAYERS];
  32.  
  33. //---------------COLOURS----------------
  34. #define WHITE_COLOR 0xFFFFFFAA // white
  35. #define BLUE_COLOR 0x0000BBAA // blue
  36. #define COLOR_RED 0xAA3333AA //red
  37.  
  38. //------CARRIER------
  39. new c1;
  40. new c2;
  41. new c3;
  42. new c4;
  43. new c5;
  44. new c6;
  45.  
  46. //---OTH CARRIER-----
  47. new b1;
  48. new b2;
  49. new b3;
  50. new b4;
  51. new b5;
  52. new b6;
  53.  
  54. //FENCES---------
  55. new f1;
  56. new f2;
  57. new f3;
  58. new f4;
  59. new f5;
  60. new f6;
  61. new f7;
  62.  
  63. //oTH FENCE----
  64. new g1;
  65. new g2;
  66. new g3;
  67. new g4;
  68. new g5;
  69. new g6;
  70. new g7;
  71.  
  72. //-----TANKS-----
  73. new Tank1;
  74. new Tank2;
  75. new Tank3;
  76. new Tank4;
  77.  
  78. //--ENUMS-----
  79. enum PlayerData
  80. {
  81. Spawns,
  82. };
  83.  
  84. //---PINFO-------
  85. new PlayerInfo[MAX_PLAYERS][PlayerData];
  86.  
  87. //--SCORE----
  88. new score[3];
  89.  
  90.  
  91. main()
  92. {
  93. print("\n---------------(C)------------------");
  94. print("hazdog's CArrier Dm");
  95. print("----------------------------------\n");
  96. }
  97.  
  98.  
  99.  
  100. public OnGameModeInit()
  101. {
  102. SetGameModeText("Carrier DM");
  103.  
  104. //-------10 minutes-----------
  105. SetTimer("OVER", 600000, 0);
  106.  
  107. //------------------------PLAYER CLASSES-----------------------------------------
  108. AddPlayerClass(280,2266.2720,-3382.4773,3.2083,179.7563,31,1000,26,100,34,200);
  109. AddPlayerClass(286,2347.8186,-3403.1665,11.3472,342.6913,31,1000,26,100,34,200);
  110. AddPlayerClass(287,2312.5295,-3395.5505,21.2063,353.9714,31,1000,26,100,34,200);
  111. AddPlayerClass(121,2303.5332,-3336.7229,11.4613,236.6386,30,500,27,200,33,100);
  112. AddPlayerClass(122,2390.1924,-3358.4133,3.2063,353.6814,30,500,27,200,33,100);
  113. AddPlayerClass(123,2341.5168,-3345.7141,21.4773,180.2849,30,500,27,200,33,100);
  114.  
  115. //-----------------------SINKABLE CARRIER PARTS(POLICE)-------------
  116. c1 = CreateObject(10771,2314.462,-3391.682,5.605,0.0,0.0,0.0);
  117. c2 = CreateObject(11145,2251.555,-3391.678,4.427,0.0,0.0,0.0);
  118. c3 = CreateObject(11146,2305.470,-3391.056,12.441,0.0,0.0,0.0);
  119. c4 = CreateObject(10770,2317.675,-3399.164,38.636,0.0,0.0,0.0);
  120. c5 = CreateObject(11149,2308.336,-3396.871,12.172,0.0,0.0,0.0);
  121. c6 = CreateObject(11237,2317.533,-3399.137,38.343,0.0,0.0,0.0);
  122.  
  123. //--------------------------SINKABLE CARRIER PARTS(SMUGGLERS)--------
  124. b1 = CreateObject(10771,2339.772,-3348.845,5.674,0.0,0.0,180.000);
  125. b2 = CreateObject(11145,2402.685,-3348.854,4.425,0.0,0.0,180.000);
  126. b3 = CreateObject(11146,2348.900,-3349.472,12.555,0.0,0.0,180.000);
  127. b4 = CreateObject(10770,2336.472,-3341.340,38.907,0.0,0.0,180.000);
  128. b5 = CreateObject(11237,2336.677,-3341.357,38.504,0.0,0.0,180.000);
  129. b6 = CreateObject(11149,2345.781,-3343.640,12.114,0.0,0.0,180.000);
  130.  
  131. //-------------------------------TANKS-------------------------
  132. Tank1 = AddStaticVehicle(432,2348.072,-3398.354,21.306,0.0,-1,-1);
  133. Tank2 = AddStaticVehicle(432,2280.479,-3398.320,18.494,0.0,-1,-1);
  134. Tank3 = AddStaticVehicle(432,2306.427,-3341.565,21.576,181.0,-1,-1);
  135. Tank4 = AddStaticVehicle(432,2372.846,-3341.381,18.562,181.0,-1,-1);
  136.  
  137. //------------------------------DINGY's-------------------------------
  138. AddStaticVehicle(473,2232.2073,-3388.3469,-0.1894,90.6335,0,4);
  139. AddStaticVehicle(473,2235.5740,-3388.7671,-0.7971,90.0293,0,4);
  140. AddStaticVehicle(473,2229.2903,-3388.8125,-0.4480,88.3016,0,4);
  141. AddStaticVehicle(473,2222.6899,-3388.8389,-0.6665,88.5090,0,4);
  142. AddStaticVehicle(473,2229.9927,-3401.0313,-0.0616,92.5579,0,4);
  143. AddStaticVehicle(473,2222.0537,-3400.8330,-0.7102,90.3719,0,4);
  144. AddStaticVehicle(473,2214.8914,-3400.7388,0.2570,93.8335,0,4);
  145. AddStaticVehicle(473,2210.5181,-3400.9246,-0.0013,96.2668,0,4);
  146. AddStaticVehicle(473,2229.0129,-3394.2310,0.0043,91.8499,0,4);
  147. AddStaticVehicle(473,2221.6738,-3394.1760,-0.1906,88.4868,0,4);
  148.  
  149. //------------------------------DECK VEHICLES POLICE--------------------
  150. AddStaticVehicle(563,2417.5259,-3391.6008,19.1015,89.2939,0,1); //CHOPPEr
  151. AddStaticVehicle(476,2405.7007,-3397.5574,19.0969,90.8328,0,1); //RUsTLER
  152. AddStaticVehicle(476,2405.6775,-3387.2925,19.4191,90.8781,0,1); //RUSTLER
  153. AddStaticVehicle(476,2395.1731,-3398.2939,19.0962,90.7318,0,1); //
  154. AddStaticVehicle(476,2393.5898,-3385.9836,19.1106,88.0987,0,1); //
  155.  
  156. //-------------------------Fences's-----------------------------
  157. f1 = CreateObject(969,2350.440,-3402.980,20.373,0.0,0.0,90.000);
  158. f2 = CreateObject(969,2345.952,-3402.716,20.377,0.0,0.0,114.064);
  159. f3 = CreateObject(969,2343.567,-3403.063,20.373,0.0,0.0,0.0);
  160. f4 = CreateObject(969,2341.846,-3393.413,18.936,0.0,0.0,0.0);
  161. f5 = CreateObject(969,2277.979,-3403.436,17.561,0.0,0.0,0.0);
  162. f6 = CreateObject(969,2284.652,-3393.705,16.231,0.0,0.0,180.628);
  163. f7 = CreateObject(979,2276.552,-3398.321,18.235,0.0,0.0,101.250);
  164.  
  165. //-------------------------OTHER------------------------------------
  166. CreateObject(16644,2330.918,-3370.652,10.208,0.0,0.0,90.000);
  167. CreateObject(16644,2315.603,-3370.001,10.194,0.0,0.0,90.000);
  168.  
  169. //----------------------SECOND FENCES-------------------------------
  170. g1 = CreateObject(969,2366.894,-3336.819,17.202,0.0,0.0,0.0);
  171. g2 = CreateObject(969,2376.775,-3345.437,17.380,0.0,0.0,97.735);
  172. g3 = CreateObject(969,2376.628,-3345.626,16.125,0.0,0.0,190.236);
  173. g4 = CreateObject(969,2303.844,-3336.994,20.530,0.0,0.0,269.845);
  174. g5 = CreateObject(969,2303.844,-3345.918,19.269,0.0,0.0,359.846);
  175. g6 = CreateObject(969,2303.944,-3336.993,20.647,0.0,0.0,359.846);
  176. g7 = CreateObject(969,2312.735,-3337.221,20.422,0.0,0.0,-90.936);
  177. return 1;
  178. }
  179.  
  180. public OnGameModeExit()
  181. {
  182. return 1;
  183. }
  184.  
  185. stock SetPlayerGameObjective(playerid)
  186. {
  187. if(Team[playerid] == TEAM_1)
  188. {
  189. SetPlayerColor(playerid, WHITE_COLOR);
  190. }
  191. else if(Team[playerid] == TEAM_2)
  192. {
  193. SetPlayerColor(playerid, WHITE_COLOR);
  194. }
  195. else if(Team[playerid] == TEAM_3)
  196. {
  197. SetPlayerColor(playerid, WHITE_COLOR);
  198. }
  199. else if(Team[playerid] == TEAM_4)
  200. {
  201. SetPlayerColor(playerid, BLUE_COLOR);
  202. }
  203. else if(Team[playerid] == TEAM_5)
  204. {
  205. SetPlayerColor(playerid, BLUE_COLOR);
  206. }
  207. else if(Team[playerid] == TEAM_6)
  208. {
  209. SetPlayerColor(playerid, BLUE_COLOR);
  210. }
  211.  
  212. }
  213.  
  214.  
  215. public OnPlayerRequestClass(playerid, classid)
  216. {
  217. //-----------------CAMERA SETUP-----------------------------------
  218. SetPlayerPos(playerid, 1644.4078,-1133.8214,58.2172);
  219. SetPlayerCameraPos(playerid, 1647.6301,-1134.5725,58.2489);
  220. SetPlayerCameraLookAt(playerid, 1644.4078,-1133.8214,58.2172);
  221. SetPlayerFacingAngle(playerid,258.5584);
  222.  
  223.  
  224. //---------------------TEAM SELECTION-----------------------------------
  225. if(classid == 0)
  226. {
  227. GameTextForPlayer(playerid, "~W~ POLICE SEAFARERS", 9000, 3);
  228. Team[playerid] = TEAM_1;
  229. }
  230. else if(classid == 1)
  231. {
  232. GameTextForPlayer(playerid, "~W~ POLICE CREWMEN", 9000, 3);
  233. Team[playerid] = TEAM_2;
  234. }
  235. else if(classid == 2)
  236. {
  237. GameTextForPlayer(playerid, "~W~ POLICE DECKMEN", 9000, 3);
  238. Team[playerid] = TEAM_3;
  239. }
  240. else if(classid == 3)
  241. {
  242. GameTextForPlayer(playerid, "~B~ SMUGGLERS CREWMAN", 9000, 3);
  243. Team[playerid] = TEAM_4;
  244. }
  245. else if(classid == 4)
  246. {
  247. GameTextForPlayer(playerid, "~B~ SMUGGLERS SEAFARERS", 9000, 3);
  248. Team[playerid] = TEAM_5;
  249. }
  250. else if(classid == 5)
  251. {
  252. GameTextForPlayer(playerid, "~B~ SMUGGLERS DECKMEN", 9000, 3);
  253. Team[playerid] = TEAM_6;
  254. }
  255. return 1;
  256. }
  257.  
  258. public OnPlayerRequestSpawn(playerid)
  259. {
  260. return 1;
  261. }
  262.  
  263. public OnPlayerConnect(playerid)
  264. {
  265. //---------------------WELCOME MESSAGE-----------------------------
  266. SendClientMessage(playerid,WHITE_COLOR, "Server: (your server here)");
  267. SendClientMessage(playerid,WHITE_COLOR, "GameMode: CARRIER DM");
  268. SendClientMessage(playerid,WHITE_COLOR, "Author: Hazdog");
  269. SendClientMessage(playerid,WHITE_COLOR, "Idea: Liberator_XIII");
  270. SendClientMessage(playerid,WHITE_COLOR, "Site: (your site here)");
  271. return 1;
  272. }
  273.  
  274. public OnPlayerDisconnect(playerid, reason)
  275. {
  276. return 1;
  277. }
  278.  
  279. public OnPlayerSpawn(playerid)
  280. {
  281. //-----------TEAM STUFF------------
  282. SetPlayerGameObjective(playerid);
  283.  
  284. //---------FS BUG TEMP FIX--------
  285. SetGameModeText("CARRIER DM");
  286. return 1;
  287. }
  288.  
  289. public OnPlayerDeath(playerid, killerid, reason)
  290. {
  291.  
  292.  
  293. //-------------TEAM SCORE----------------
  294. if(Team[killerid] == TEAM_1)
  295. {
  296. score[0] += 1;
  297. }
  298.  
  299. if(Team[killerid] == TEAM_2)
  300. {
  301. score[0] += 1;
  302. }
  303.  
  304. if(Team[killerid] == TEAM_3)
  305. {
  306. score[0] += 1;
  307. }
  308. if(Team[killerid] == TEAM_4)
  309. {
  310. score[1] += 1;
  311. }
  312.  
  313. if(Team[killerid] == TEAM_5)
  314. {
  315. score[1] += 1;
  316. }
  317.  
  318. if(Team[killerid] == TEAM_6)
  319. {
  320. score[1] += 1;
  321. }
  322.  
  323. //------SCOREECHECK--------
  324.  
  325. ScoreCheck();
  326.  
  327. //------------ANTI TK--------------------
  328. if(Team[playerid] == TEAM_1 && Team[killerid] == TEAM_2)
  329. {
  330. GameTextForPlayer(killerid, "~R~ Don't Kill Friends", 10000, 0);
  331. ResetPlayerWeapons(killerid);
  332. SetPlayerHealth(killerid, 1);
  333. GivePlayerWeapon(killerid, 10, 0);
  334. GivePlayerMoney(playerid,100);
  335. SetPlayerScore(killerid,GetPlayerScore(killerid)-1);
  336. }
  337. if(Team[playerid] == TEAM_1 && Team[killerid] == TEAM_3)
  338. {
  339. GameTextForPlayer(killerid, "~R~ Don't Kill Friends", 10000, 0);
  340. ResetPlayerWeapons(killerid);
  341. SetPlayerHealth(killerid, 1);
  342. GivePlayerWeapon(killerid, 10, 0);
  343. GivePlayerMoney(playerid,100);
  344. SetPlayerScore(killerid,GetPlayerScore(killerid)-1);
  345. }
  346. if(Team[playerid] == TEAM_2 && Team[killerid] == TEAM_1)
  347. {
  348. GameTextForPlayer(killerid, "~R~ Don't Kill Friends", 10000, 0);
  349. ResetPlayerWeapons(killerid);
  350. SetPlayerHealth(killerid, 1);
  351. GivePlayerWeapon(killerid, 10, 0);
  352. GivePlayerMoney(playerid,100);
  353. SetPlayerScore(killerid,GetPlayerScore(killerid)-1);
  354. }
  355. if(Team[playerid] == TEAM_2 && Team[killerid] == TEAM_3)
  356. {
  357. GameTextForPlayer(killerid, "~R~ Don't Kill Friends", 10000, 0);
  358. ResetPlayerWeapons(killerid);
  359. SetPlayerHealth(killerid, 1);
  360. GivePlayerWeapon(killerid, 10, 0);
  361. GivePlayerMoney(playerid,100);
  362. SetPlayerScore(killerid,GetPlayerScore(killerid)-1);
  363. }
  364. if(Team[playerid] == TEAM_3 && Team[killerid] == TEAM_1)
  365. {
  366. GameTextForPlayer(killerid, "~R~ Don't Kill Friends", 10000, 0);
  367. ResetPlayerWeapons(killerid);
  368. SetPlayerHealth(killerid, 1);
  369. GivePlayerWeapon(killerid, 10, 0);
  370. GivePlayerMoney(playerid,100);
  371. SetPlayerScore(killerid,GetPlayerScore(killerid)-1);
  372. }
  373. if(Team[playerid] == TEAM_3 && Team[killerid] == TEAM_2)
  374. {
  375. GameTextForPlayer(killerid, "~R~ Don't Kill Friends", 10000, 0);
  376. ResetPlayerWeapons(killerid);
  377. SetPlayerHealth(killerid, 1);
  378. GivePlayerWeapon(killerid, 10, 0);
  379. GivePlayerMoney(playerid,100);
  380. SetPlayerScore(killerid,GetPlayerScore(killerid)-1);
  381. }
  382. if(Team[playerid] == TEAM_4 && Team[killerid] == TEAM_5)
  383. {
  384. GameTextForPlayer(killerid, "~R~ Don't Kill Friends", 10000, 0);
  385. ResetPlayerWeapons(killerid);
  386. SetPlayerHealth(killerid, 1);
  387. GivePlayerWeapon(killerid, 10, 0);
  388. GivePlayerMoney(playerid,100);
  389. SetPlayerScore(killerid,GetPlayerScore(killerid)-1);
  390. }
  391. if(Team[playerid] == TEAM_4 && Team[killerid] == TEAM_6)
  392. {
  393. GameTextForPlayer(killerid, "~R~ Don't Kill Friends", 10000, 0);
  394. ResetPlayerWeapons(killerid);
  395. SetPlayerHealth(killerid, 1);
  396. GivePlayerWeapon(killerid, 10, 0);
  397. GivePlayerMoney(playerid,100);
  398. SetPlayerScore(killerid,GetPlayerScore(killerid)-1);
  399. }
  400. if(Team[playerid] == TEAM_5 && Team[killerid] == TEAM_4)
  401. {
  402. GameTextForPlayer(killerid, "~R~ Don't Kill Friends", 10000, 0);
  403. ResetPlayerWeapons(killerid);
  404. SetPlayerHealth(killerid, 1);
  405. GivePlayerWeapon(killerid, 10, 0);
  406. GivePlayerMoney(playerid,100);
  407. SetPlayerScore(killerid,GetPlayerScore(killerid)-1);
  408. }
  409. if(Team[playerid] == TEAM_5 && Team[killerid] == TEAM_6)
  410. {
  411. GameTextForPlayer(killerid, "~R~ Don't Kill Friends", 10000, 0);
  412. ResetPlayerWeapons(killerid);
  413. SetPlayerHealth(killerid, 1);
  414. GivePlayerWeapon(killerid, 10, 0);
  415. GivePlayerMoney(playerid,100);
  416. SetPlayerScore(killerid,GetPlayerScore(killerid)-1);
  417. }
  418. if(Team[playerid] == TEAM_6 && Team[killerid] == TEAM_4)
  419. {
  420. GameTextForPlayer(killerid, "~R~ Don't Kill Friends", 10000, 0);
  421. ResetPlayerWeapons(killerid);
  422. SetPlayerHealth(killerid, 1);
  423. GivePlayerWeapon(killerid, 10, 0);
  424. GivePlayerMoney(playerid,100);
  425. SetPlayerScore(killerid,GetPlayerScore(killerid)-1);
  426. }
  427. if(Team[playerid] == TEAM_6 && Team[killerid] == TEAM_5)
  428. {
  429. GameTextForPlayer(killerid, "~R~ Don't Kill Friends", 10000, 0);
  430. ResetPlayerWeapons(killerid);
  431. SetPlayerHealth(killerid, 1);
  432. GivePlayerWeapon(killerid, 10, 0);
  433. GivePlayerMoney(playerid,100);
  434. SetPlayerScore(killerid,GetPlayerScore(killerid)-1);
  435. }
  436.  
  437. //-----------COLOR DEATH-----------------
  438. SetPlayerColor(playerid, 0xAAAAAAAA);
  439.  
  440. //----------------SPECTATION SENSATION-------------------------------------
  441. if(reason == 31)
  442. {
  443. TogglePlayerSpectating(playerid,1);
  444. PlayerSpectatePlayer(playerid, killerid);
  445. //-------------Allowed to Spawn---------
  446. PlayerInfo[playerid][Spawns] += 1;
  447. SendClientMessage(playerid, WHITE_COLOR, "To Spawn Just Press Fire");
  448. }
  449. if(reason == 35)
  450. {
  451. new pName[MAX_PLAYER_NAME];
  452. new string[70];
  453. GetPlayerName(playerid, pName, sizeof(pName));
  454. format(string, sizeof(string), "System Has Banned %s. [[REASON: Cheating With Rocket]]", pName);
  455. SendClientMessageToAll(0xAAAAAAAA, string);
  456. }
  457. if(reason == 26)
  458. {
  459. TogglePlayerSpectating(playerid,1);
  460. PlayerSpectatePlayer(playerid, killerid);
  461. //------------Allowed To Spawn-----------
  462. PlayerInfo[playerid][Spawns] += 1;
  463. SendClientMessage(playerid, WHITE_COLOR, "To Spawn Just Press Fire");
  464. }
  465. if(reason == 30)
  466. {
  467. TogglePlayerSpectating(playerid,1);
  468. PlayerSpectatePlayer(playerid, killerid);
  469. //------------Allowed To Spawn-----------
  470. PlayerInfo[playerid][Spawns] += 1;
  471. SendClientMessage(playerid, WHITE_COLOR, "To Spawn Just Press Fire");
  472. }
  473. if(reason == 34)
  474. {
  475. TogglePlayerSpectating(playerid,1);
  476. PlayerSpectatePlayer(playerid, killerid);
  477. //------------Allowed To Spawn-----------
  478. PlayerInfo[playerid][Spawns] += 1;
  479. SendClientMessage(playerid, WHITE_COLOR, "To Spawn Just Press Fire");
  480. }
  481. if(reason == 27)
  482. {
  483. TogglePlayerSpectating(playerid,1);
  484. PlayerSpectatePlayer(playerid, killerid);
  485. //------------Allowed To Spawn-----------
  486. PlayerInfo[playerid][Spawns] += 1;
  487. SendClientMessage(playerid, WHITE_COLOR, "To Spawn Just Press Fire");
  488. }
  489. if(reason == 51 && GetPlayerVehicleID(killerid) == Tank1)
  490. {
  491. TogglePlayerSpectating(playerid,1);
  492. PlayerSpectateVehicle(playerid, Tank1, SPECTATE_MODE_NORMAL);
  493. //------------Allowed To Spawn-----------
  494. PlayerInfo[playerid][Spawns] += 1;
  495. SendClientMessage(playerid, WHITE_COLOR, "To Spawn Just Press Fire");
  496. }
  497. if(reason == 51 && GetPlayerVehicleID(killerid) == Tank2)
  498. {
  499. TogglePlayerSpectating(playerid,1);
  500. PlayerSpectateVehicle(playerid, Tank1, SPECTATE_MODE_NORMAL);
  501. //------------Allowed To Spawn-----------
  502. PlayerInfo[playerid][Spawns] += 1;
  503. SendClientMessage(playerid, WHITE_COLOR, "To Spawn Just Press Fire");
  504. }
  505. if(reason == 51 && GetPlayerVehicleID(killerid) == Tank3)
  506. {
  507. TogglePlayerSpectating(playerid,1);
  508. PlayerSpectateVehicle(playerid, Tank1, SPECTATE_MODE_NORMAL);
  509. //------------Allowed To Spawn-----------
  510. PlayerInfo[playerid][Spawns] += 1;
  511. SendClientMessage(playerid, WHITE_COLOR, "To Spawn Just Press Fire");
  512. }
  513. if(reason == 51 && GetPlayerVehicleID(killerid) == Tank4)
  514. {
  515. TogglePlayerSpectating(playerid,1);
  516. PlayerSpectateVehicle(playerid, Tank1, SPECTATE_MODE_NORMAL);
  517. //------------Allowed To Spawn-----------
  518. PlayerInfo[playerid][Spawns] += 1;
  519. SendClientMessage(playerid, WHITE_COLOR, "To Spawn Just Press Fire");
  520. }
  521.  
  522.  
  523. //-------------------SCORE STUFF--------------------
  524. SendDeathMessage(killerid,playerid,reason);
  525. SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
  526. }
  527. ScoreCheck()
  528. {
  529. if (score[0] == REQUIRED_KILLS)
  530. {
  531. GameTextForAll("~R~POLICE~W~ HAVE WON",6000,1);
  532. SetTimer("sink2", 5000, 0);
  533. SetTimer("Explosion1s", 3000, 0);
  534. }
  535. if (score[1] == REQUIRED_KILLS)
  536. {
  537. SendClientMessageToAll(COLOR_RED,"Smugglers Blew Up The Police's Carrier!");
  538. //---------SINKING THE CARRIER(POLICE)
  539. SetTimer("sink1", 7000, 0);
  540. SetTimer("Explosion1p", 4000, 0);
  541. SetTimer("Explosion2p", 3000, 0);
  542. }
  543. return 1;
  544. }
  545.  
  546.  
  547. public OnVehicleSpawn(vehicleid)
  548. {
  549. return 1;
  550. }
  551.  
  552. public OnVehicleDeath(vehicleid, killerid)
  553. {
  554. return 1;
  555. }
  556.  
  557. public OnPlayerText(playerid, text[])
  558. {
  559. return 1;
  560. }
  561.  
  562. public OnPlayerPrivmsg(playerid, recieverid, text[])
  563. {
  564. return 1;
  565. }
  566.  
  567. public OnPlayerCommandText(playerid, cmdtext[])
  568. {
  569. //-------------------INFORMATION-----------------------------
  570. if (strcmp("/info", cmdtext, true, 10) == 0)
  571. {
  572. SendClientMessage(playerid,WHITE_COLOR,"||===================INFORMATION===================================||");
  573. SendClientMessage(playerid,WHITE_COLOR,"In This GameMode There Are Two Teams, Pirates And Police");
  574. SendClientMessage(playerid,WHITE_COLOR,"First team to get to 25 kills wins.,");
  575. SendClientMessage(playerid,WHITE_COLOR,"If there is no winner after 10 minutes, both carriers sink");
  576. SendClientMessage(playerid,WHITE_COLOR,"||=================================================================||");
  577. return 1;
  578. }
  579.  
  580. //-------------------KILL CMD-------------------
  581. if (strcmp("/kill", cmdtext, true, 10) == 0)
  582. {
  583. SetPlayerHealth(playerid,0);
  584. return 1;
  585. }
  586. return 0;
  587. }
  588.  
  589. public OnPlayerInfoChange(playerid)
  590. {
  591. return 1;
  592. }
  593.  
  594. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  595. {
  596. return 1;
  597. }
  598.  
  599. public OnPlayerExitVehicle(playerid, vehicleid)
  600. {
  601. return 1;
  602. }
  603.  
  604. public OnPlayerStateChange(playerid, newstate, oldstate)
  605. {
  606. return 1;
  607. }
  608.  
  609. public OnPlayerLeaveCheckpoint(playerid)
  610. {
  611. return 1;
  612. }
  613.  
  614. public OnPlayerEnterRaceCheckpoint(playerid)
  615. {
  616. return 1;
  617. }
  618.  
  619. public OnPlayerLeaveRaceCheckpoint(playerid)
  620. {
  621. return 1;
  622. }
  623.  
  624. public OnRconCommand(cmd[])
  625. {
  626. return 1;
  627. }
  628.  
  629.  
  630.  
  631. public OnPlayerObjectMoved(playerid, objectid)
  632. {
  633. return 1;
  634. }
  635.  
  636. public OnPlayerPickUpPickup(playerid, pickupid)
  637. {
  638. return 1;
  639. }
  640.  
  641. public OnPlayerSelectedMenuRow(playerid, row)
  642. {
  643. return 1;
  644. }
  645.  
  646. public OnPlayerExitedMenu(playerid)
  647. {
  648. return 1;
  649. }
  650.  
  651.  
  652.  
  653.  
  654.  
  655. public OnObjectMoved(objectid)
  656. {
  657. if(objectid == c6)
  658. {
  659. SendClientMessageToAll(WHITE_COLOR,"THE SMUGGLERS WIN!");
  660. GameTextForAll("~G~SMUGGLERS~W~ WIN!", 10000, 0);
  661. SetTimer("GameModeExitFunc", 10000, 0);
  662. }
  663. if(objectid == b6)
  664. {
  665. SendClientMessageToAll(COLOR_RED,"THE POLICE WIN!");
  666. GameTextForAll("~R~POLICE~W~ WIN!", 10000, 0);
  667. SetTimer("GameModeExitFunc", 10000, 0);
  668. }
  669. return 1;
  670. }
  671.  
  672.  
  673. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  674. {
  675. if ((newkeys & (KEY_FIRE)) == (KEY_FIRE))
  676. {
  677. if(PlayerInfo[playerid][Spawns] == 1)
  678. {
  679. TogglePlayerSpectating(playerid,0);
  680. SetPlayerGameObjective(playerid);
  681. PlayerInfo[playerid][Spawns] -= 1;
  682. if(Team[playerid] == TEAM_1)
  683. {
  684. SetPlayerPos(playerid,2266.2720,-3382.4773,3.2083);
  685. SetCameraBehindPlayer(playerid);
  686. }
  687. if(Team[playerid] == TEAM_2)
  688. {
  689. SetPlayerPos(playerid,2347.8186,-3403.1665,11.3472);
  690. SetCameraBehindPlayer(playerid);
  691. }
  692. if(Team[playerid] == TEAM_3)
  693. {
  694. SetPlayerPos(playerid,2312.5295,-3395.5505,21.2063);
  695. SetCameraBehindPlayer(playerid);
  696. }
  697. if(Team[playerid] == TEAM_4)
  698. {
  699. SetPlayerPos(playerid,2303.5332,-3336.7229,11.4613);
  700. SetCameraBehindPlayer(playerid);
  701. }
  702. if(Team[playerid] == TEAM_5)
  703. {
  704. SetPlayerPos(playerid,-3358.4133,3.2063,353.6814);
  705. SetCameraBehindPlayer(playerid);
  706. }
  707. if(Team[playerid] == TEAM_6)
  708. {
  709. SetPlayerPos(playerid,2341.5168,-3345.7141,21.4773);
  710. SetCameraBehindPlayer(playerid);
  711. }
  712. }
  713. }
  714. }
  715.  
  716. public sink1()
  717. {
  718. MoveObject(c1,2314.462,-3391.682,-34.395,0.5);
  719. MoveObject(c2,2251.555,-3391.678,-35.573,0.5);
  720. MoveObject(c3,2305.470,-3391.056,-27.559,0.5);
  721. MoveObject(c4,2317.675,-3399.164,-1.364,0.5);
  722. MoveObject(c5,2308.336,-3396.871,-27.828,0.5);
  723. MoveObject(c6,2317.533,-3399.137,-1.657,0.5);
  724. MoveObject(f1,2350.440,-3402.980,-19.627,0.5);
  725. MoveObject(f2,2345.952,-3402.716,-19.627,0.5);
  726. MoveObject(f3,2343.567,-3403.063,-19.627,0.5);
  727. MoveObject(f4,2341.846,-3393.413,-21.604,0.5);
  728. MoveObject(f5,2277.979,-3403.436,-22.439,0.5);
  729. MoveObject(f6,2284.652,-3393.705,-23.769,0.5);
  730. MoveObject(f7,2276.552,-3398.321,-21.765,0.5);
  731. }
  732.  
  733. public sink2()
  734. {
  735. MoveObject(b1,2339.772,-3348.845,-34.326,0.5);
  736. MoveObject(b2,2402.685,-3348.854,-35.575,0.5);
  737. MoveObject(b3,2348.900,-3349.472,-27.445,0.5);
  738. MoveObject(b4,2336.472,-3341.340,-1.093,0.5);
  739. MoveObject(b5,2336.677,-3341.357,-1.496,0.5);
  740. MoveObject(b6,2345.781,-3343.640,-27.886,0.5);
  741. MoveObject(g1,2366.894,-3336.819,-22.798,0.5);
  742. MoveObject(g2,2376.775,-3345.437,-22.62,0.5);
  743. MoveObject(g3,2376.628,-3345.626,-23.875,0.5);
  744. MoveObject(g4,2303.844,-3336.994,-19.47,0.5);
  745. MoveObject(g5,2303.844,-3345.918,-20.731,0.5);
  746. MoveObject(g6,2303.944,-3336.993,-19.353,0.5);
  747. MoveObject(g7,2312.735,-3337.221,-19.578,0.5);
  748. }
  749.  
  750. public GameModeExitFunc()
  751. {
  752. GameModeExit();
  753. }
  754.  
  755. public Explosion1p()
  756. {
  757. CreateExplosion(2334.2830,-3393.0117,18.3941,4,10); //
  758. CreateExplosion(2313.8696,-3395.8875,21.2063,5,10); //
  759. CreateExplosion(2247.6677,-3378.8633,10.1676,6,10); //
  760. CreateExplosion(2279.4460,-3391.2307,11.3472,4,10); //
  761. CreateExplosion(2309.8965,-3378.1326,0.0905,5,10); //
  762. CreateExplosion(2333.5991,-3377.5571,-0.2503,6,10); //
  763. CreateExplosion(2341.0366,-3391.1177,11.3472,4,10); //
  764. CreateExplosion(2334.3079,-3377.2087,11.3568,5,10); //
  765. CreateExplosion(2300.3362,-3377.2974,11.3568,6,10); //
  766. CreateExplosion(2284.1580,-3404.3755,3.2083,4,10); //
  767. }
  768.  
  769. public Explosion2p()
  770. {
  771. CreateExplosion(2275.8918,-3393.3066,18.3941,4,10); //
  772. CreateExplosion(2317.4460,-3377.2012,11.3568,4,10); //
  773. CreateExplosion(2291.4932,-3377.8533,0.0901,4,10); //
  774. CreateExplosion(2334.8718,-3395.9197,21.2096,4,10); //
  775. CreateExplosion(2320.7625,-3398.3154,18.4220,4,10); //
  776. CreateExplosion(2314.5254,-3402.5911,11.3829,4,10); //
  777. CreateExplosion(2319.1672,-3395.4966,11.3829,5,10); //
  778. CreateExplosion(2351.7607,-3404.6931,11.3472,5,10); //
  779. CreateExplosion(2301.3276,-3391.2581,11.3472,5,10); //
  780. CreateExplosion(2250.9797,-3392.9932,3.2083,5,10); //
  781. CreateExplosion(2239.4685,-3378.8652,3.2106,5,10); //
  782. }
  783.  
  784. public Explosion1s()
  785. {
  786. CreateExplosion(2322.1130,-3348.0083,11.4613,4,10); //
  787. CreateExplosion(2351.8215,-3362.5859,11.4162,4,10); //
  788. CreateExplosion(2363.9824,-3349.3601,11.4613,4,10); //
  789. CreateExplosion(2384.9341,-3361.4900,11.4613,5,10); //
  790. CreateExplosion(2342.3813,-3337.9197,11.3249,5,10); //
  791. CreateExplosion(2303.8328,-3347.3003,18.4631,5,10); //
  792. CreateExplosion(2297.9954,-3361.9795,-1.1021,5,10); //
  793. CreateExplosion(2344.0562,-3362.2524,-1.2094,5,10); //
  794. CreateExplosion(2368.4072,-3341.1184,3.1687,5,10); //
  795. CreateExplosion(2403.0300,-3348.0767,3.2063,5,10); //
  796. }
  797.  
  798. public OVER()
  799. {
  800. SendClientMessageToAll(COLOR_RED,"TIME UP! No clear winner, so both carriers are sinking!");
  801. SetTimer("Explosion1p", 2000, 0);
  802. SetTimer("Explosion1s", 3000, 0);
  803. SetTimer("Explosion2p", 2500, 0);
  804. SetTimer("sink1", 5000, 0);
  805. SetTimer("sink2", 5000, 0);
  806. }
  807.  
  808.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement