Advertisement
Guest User

Untitled

a guest
Sep 20th, 2017
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 29.98 KB | None | 0 0
  1. //---------------------------------------------------------
  2.  
  3. //
  4.  
  5. // Destroy The Tower Plant Bomb in to The Check Point.
  6.  
  7. //
  8.  
  9. //---------------------------------------------------------
  10.  
  11. #define S1 8
  12. #define S2 10
  13. #define S3 11
  14.  
  15. new Float:X,Float:Y,Float:Z,Float:Angle;
  16. new aCar;
  17.  
  18. #include <a_samp>
  19.  
  20. #pragma tabsize 0
  21.  
  22. #define TEAM_ATTACK 1
  23.  
  24. #define TEAM_DEFENCE 2
  25.  
  26. #define CHECKPOINT_NONE 0
  27.  
  28. #define CHECKPOINT_PLANE 1
  29. #if !defined PURPLE
  30. #define PURPLE \
  31. 0xBF60FFFF
  32. #endif
  33. #define CHECKPOINT_AREA51 2
  34.  
  35. #define LIGHTBLUE 0x0BBF6AA
  36. #define Loop(%0,%1) \
  37. for(new %0 = 0; %0 != %1; %0++)
  38.  
  39. #define DEFENCE_WIN 0
  40. #if !defined GREEN
  41. #define GREEN \
  42. 0x94D317FF
  43. #endif
  44. #define ATTACK_WIN 1
  45.  
  46.  
  47.  
  48. #define COLOR_GREY 0xAFAFAFAA
  49.  
  50. #define COLOR_GREEN 0x33AA33AA
  51.  
  52. #define COLOR_RED 0xAA3333AA
  53.  
  54. #define COLOR_YELLOW 0xFFFF00AA
  55.  
  56.  
  57.  
  58.  
  59. forward DefenceWin();
  60.  
  61. forward GameModeExitFunc();
  62.  
  63. new IsPlanted[MAX_PLAYERS] = 0;
  64.  
  65. new gTeam[MAX_PLAYERS];
  66. new Text:shop;
  67. new gPlayerClass[MAX_PLAYERS];
  68.  
  69. new gPlayerCheckpointStatus[MAX_PLAYERS];
  70.  
  71. new gRoundTimer;
  72. //new IsPlanted[MAX_PLAYERS];
  73.  
  74. // If the army defend the lab for this amount of time, they win.
  75.  
  76. //new gRoundTime = 1200000; // Round time - 20 mins
  77.  
  78. //new gRoundTime = 900000; // Round time - 15 mins
  79.  
  80. //new gRoundTime = 600000; // Round time - 10 mins
  81.  
  82. new gRoundTime = 300000; // Round time - 5 mins
  83.  
  84. //new gRoundTime = 120000; // Round time - 2 mins
  85.  
  86. //new gRoundTime = 60000; // Round time - 1 min
  87.  
  88.  
  89. new BombCP[5];
  90.  
  91.  
  92. //---------------------------------------------------------
  93.  
  94. //Killing ranks
  95.  
  96. new First[MAX_PLAYERS];
  97. new Double[MAX_PLAYERS];
  98. new Spree[MAX_PLAYERS];
  99. new Four[MAX_PLAYERS];
  100. new Dominat[MAX_PLAYERS];
  101. new Rampage[MAX_PLAYERS];
  102. new Monster[MAX_PLAYERS];
  103. new Six[MAX_PLAYERS];
  104.  
  105. main()
  106.  
  107. {
  108.  
  109. print("\n----------------------------------");
  110.  
  111. print(" Destroy The Tower \n GM No: 1 \n Date Created: 12/5/2011");
  112.  
  113. print("----------------------------------\n");
  114.  
  115. }
  116. new
  117. xCharacters[][] =
  118. {
  119. "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"
  120. },
  121. xChars[4] = ""
  122.  
  123. ;
  124.  
  125.  
  126.  
  127. //---------------------------------------------------------
  128.  
  129.  
  130.  
  131. public OnGameModeInit()
  132.  
  133. {
  134.  
  135.  
  136. for(new i;i<15;++i)
  137. {
  138. SendClientMessageToAll(COLOR_RED," ");
  139. }
  140. SetGameModeText("Destroy Da Navy HQ ");
  141.  
  142. SetWorldTime(7);
  143.  
  144. UsePlayerPedAnims();
  145.  
  146. shop = TextDrawCreate(513.000000, 435.000000, "shop is enabled [use /shop]");
  147. TextDrawAlignment(shop, 2);
  148. TextDrawBackgroundColor(shop, 255);
  149. TextDrawFont(shop, 3);
  150. TextDrawLetterSize(shop, 0.500000, 1.000000);
  151. TextDrawColor(shop, -16776961);
  152. TextDrawSetOutline(shop, 1);
  153. TextDrawSetProportional(shop, 1);
  154. // Attack team
  155.  
  156. AddPlayerClass(24,-2934.7056,472.6286,4.9066,89.1346,29,999,31,999,5,6); // Attack 1
  157. AddPlayerClass(25,-2934.7056,472.6286,4.9066,89.1346,29,999,31,999,5,6); // Attack 1
  158.  
  159. // Defence team
  160. //
  161. AddPlayerClass(266,-3505.9282,445.8270,26.5670,276.3082,24,6999,31,6999,27,6999); // Defend 1
  162. AddPlayerClass(267,-3505.9282,445.8270,26.5670,276.3082,24,6999,31,6999,27,6999); // Defend 1
  163.  
  164.  
  165. gRoundTimer = SetTimer("DefenceWin", gRoundTime, 0);
  166.  
  167. CreateObject(3997, -3481.9609375, 505.42074584961, 5.202880859375, 0, 0, 356, 300);
  168. CreateObject(3997, -3490.115234375, 386.02062988281, 5.078971862793, 0, 0, 175.99548339844, 300);
  169. CreateObject(3997, -3473.861328125, 623.66015625, 5.202880859375, 0, 0, 175.98999023438, 300);
  170. CreateObject(3997, -3319.7709960938, 612.83447265625, 5.9154801368713, 0, 0, 175.98999023438, 300);
  171. CreateObject(3997, -3325.1611328125, 495.396484375, 5.7124900817871, 0, 0, 355.98999023438, 300);
  172. CreateObject(3997, -3331.0336914063, 376.59783935547, 5.4783449172974, 0, 0, 175.98999023438, 300);
  173. CreateObject(4002, -3500.5927734375, 518.462890625, 28.765348434448, 0, 0, 267.99499511719, 300);
  174. CreateObject(4602, -3531.5786132813, 668.02770996094, 66.655838012695, 0, 0, 356, 300);
  175. CreateObject(4602, -3256.7719726563, 650.88525390625, 64.146347045898, 0, 0, 356.24548339844, 300);
  176. CreateObject(4602, -3273.1186523438, 331.58615112305, 63.937469482422, 0, 0, 356.24267578125, 300);
  177. CreateObject(4602, -3555.0270996094, 350.68728637695, 23.663566589355, 0, 0, 356.24267578125, 300);
  178. CreateObject(4114, -3505.91015625, 451.94097900391, 15.449764251709, 0, 0, 14, 300);
  179. CreateObject(3361, -3505.9501953125, 453.98828125, 27.640846252441, 0, 0, 275.99304199219, 300);
  180. CreateObject(5822, -3503.3984375, 471.783203125, 37.714813232422, 0, 0, 7.9925537109375, 300);
  181. CreateObject(4023, -3490.8195800781, 668.82147216797, 16.868936538696, 0, 0, 356, 300);
  182. CreateObject(4023, -3447.1696777344, 665.68878173828, 16.918954849243, 0, 0, 355.99548339844, 300);
  183. CreateObject(4023, -3403.4243164063, 662.57086181641, 17.093952178955, 0, 0, 355.99548339844, 300);
  184. CreateObject(4023, -3359.8715820313, 659.49755859375, 17.08154296875, 0, 0, 355.99548339844, 300);
  185. CreateObject(4023, -3316.2446289063, 656.08673095703, 17.08154296875, 0, 0, 355.99548339844, 300);
  186. CreateObject(4023, -3273.15234375, 653.50061035156, 17.084203720093, 0, 0, 355.99548339844, 300);
  187. CreateObject(4007, -3301.802734375, 334.79382324219, 6.6469879150391, 0, 0, 88, 300);
  188. CreateObject(4007, -3347.5944824219, 338.64266967773, 9.0566520690918, 0, 0, 277.99499511719, 300);
  189. CreateObject(4007, -3371.7316894531, 340.99664306641, 17.633785247803, 0, 0, 91.992553710938, 300);
  190. CreateObject(4007, -3408.7338867188, 343.23303222656, 17.326992034912, 0, 0, 85.992553710938, 300);
  191. CreateObject(4007, -3443.3784179688, 348.83212280273, 21.532892227173, 0, 0, 85.989990234375, 300);
  192. CreateObject(4007, -3478.05859375, 354.02035522461, 16.510286331177, 0, 0, 85.989990234375, 300);
  193. CreateObject(4007, -3512.8894042969, 358.77328491211, 18.938217163086, 0, 0, 85.989990234375, 300);
  194. CreateObject(4550, -3558.2829589844, 624.05059814453, 6.2798690795898, 0, 0, 0, 300);
  195. CreateObject(4550, -3562.2685546875, 582.4892578125, 25.190116882324, 0, 0, 0, 300);
  196. CreateObject(4550, -3556.6799316406, 547.36798095703, 43.463077545166, 0, 0, 0, 300);
  197. CreateObject(4550, -3568.8623046875, 506.70114135742, 3.0935211181641, 0, 0, 0, 300);
  198. CreateObject(4550, -3572.9304199219, 456.21572875977, 18.506050109863, 0, 0, 0, 300);
  199. CreateObject(4550, -3563.1083984375, 407.6474609375, 37.614959716797, 0, 0, 0, 300);
  200. CreateObject(4550, -3546.1708984375, 384.79150390625, 55.286430358887, 0, 0, 0, 300);
  201. CreateObject(4550, -3536.5720214844, 648.00408935547, 26.480537414551, 0, 0, 0, 300);
  202. CreateObject(8395, -3302.9680175781, 568.1689453125, 48.235134124756, 0, 0, 356, 300);
  203. CreateObject(8395, -3313.7275390625, 419.20040893555, 48.603218078613, 0, 0, 355.99548339844, 300);
  204. CreateObject(5184, -3180.2509765625, 476.3994140625, 17.902681350708, 0, 5.99853515625, 357.99499511719, 300);
  205. CreateObject(5822, -3489.0844726563, 447.3173828125, 20.282426834106, 0, 0, 183.998046875, 300);
  206. CreateObject(3361, -3483.9587402344, 473.26986694336, 5.9767475128174, 0, 0, 85.99853515625, 300);
  207. CreateObject(3361, -3484.3679199219, 465.02770996094, 10.226769447327, 0, 0, 85.995971679688, 300);
  208. CreateObject(3988, -3429.75, 585.2939453125, 13.636026382446, 0, 0, 261.99645996094, 300);
  209. CreateObject(4028, -3425.6560058594, 524.07257080078, 18.640472412109, 0, 0, 266, 300);
  210. CreateObject(3884, -3261.0122070313, 515.98986816406, 27.266555786133, 0, 0, 258, 300);
  211. CreateObject(3884, -3267.8957519531, 466.57830810547, 25.892803192139, 0, 0, 257.99743652344, 300);
  212. CreateObject(2985, -3213.5881347656, 513.92602539063, 2.5547475814819, 0, 0, 0, 300);
  213. CreateObject(3279, -3195.0935058594, 517.46350097656, 0.67784690856934, 0, 0, 174, 300);
  214. CreateObject(3279, -3192.3698730469, 457.31051635742, -0.26833915710449, 0, 0, 180, 300);
  215. CreateObject(3279, -3514.3076171875, 437.00720214844, 25.566951751709, 0, 0, 355.99597167969, 300);
  216. CreateObject(3279, -3500.3920898438, 436.6559753418, 25.566951751709, 0, 0, 359.99548339844, 300);
  217. CreateObject(8534, -3436.6020507813, 400.03936767578, 14.946851730347, 0, 0, 352, 300);
  218. CreateObject(8535, -3403.126953125, 437.10888671875, 11.781775474548, 0, 0, 350, 300);
  219. CreateObject(8498, -2877.4228515625, 485.62387084961, 17.465007781982, 0, 0, 162, 300);
  220. CreateObject(8499, -2890.0004882813, 393.27563476563, 21.987617492676, 0, 0, 224, 300);
  221. CreateVehicle(446, -2982.4169921875, 491.25390625, 0, 88, -1, -1, 1000);
  222. CreateVehicle(446, -2983.0007324219, 495.67333984375, 0, 87.994995117188, -1, -1, 1000);
  223. CreateVehicle(446, -2983.9128417969, 499.94338989258, 0, 87.994995117188, -1, -1, 1000);
  224. CreateVehicle(446, -2983.5759277344, 503.94384765625, 0, 87.994995117188, -1, -1, 1000);
  225. CreateVehicle(446, -2954.6206054688, 490.65606689453, 0, 87.994995117188, -1, -1, 1000);
  226. CreateVehicle(446, -2955.5310058594, 494.90905761719, 0, 87.994995117188, -1, -1, 1000);
  227. CreateVehicle(446, -2955.6975097656, 499.17977905273, 0, 87.994995117188, -1, -1, 1000);
  228. CreateVehicle(446, -2955.6674804688, 503.41491699219, 0, 87.994995117188, -1, -1, 1000);
  229. CreateVehicle(446, -2999.2985839844, 504.5071105957, 0, 87.994995117188, -1, -1, 1000);
  230. CreateVehicle(446, -2999.7546386719, 499.72787475586, 0, 87.994995117188, -1, -1, 1000);
  231. CreateVehicle(446, -2999.1567382813, 494.83392333984, 0.21525831520557, 87.994995117188, -1, -1, 1000);
  232. CreateVehicle(446, -2998.0986328125, 489.82232666016, 0, 87.994995117188, -1, -1, 1000);
  233. CreateVehicle(493, -2987.6284179688, 451.59356689453, 0, 90, -1, -1, 1000);
  234. CreateVehicle(493, -2972.9892578125, 451.69281005859, 0, 90, -1, -1, 1000);
  235. CreateVehicle(493, -3004.8498535156, 455.99520874023, 0.88006210327148, 90, -1, -1, 1000);
  236. CreateVehicle(493, -3003.1596679688, 451.55822753906, -0.39475181698799, 90, -1, -1, 1000);
  237. CreateVehicle(493, -3003.6025390625, 461.134765625, -0.096138000488281, 90, -1, -1, 1000);
  238. CreateVehicle(493, -3003.5390625, 465.63598632813, 0.25, 90, -1, -1, 1000);
  239. CreateVehicle(493, -3003.8051757813, 471.41616821289, 0.58865356445313, 90, -1, -1, 1000);
  240. CreateVehicle(493, -3003.5483398438, 478.09674072266, -0.10109408944845, 90, -1, -1, 1000);
  241. CreateVehicle(493, -3002.5922851563, 484.02816772461, -0.24597930908203, 90, -1, -1, 1000);
  242.  
  243.  
  244.  
  245.  
  246. return 1;
  247.  
  248. }
  249. forward hack(playerid);
  250. public hack(playerid)
  251. {
  252. new
  253. xLength = (random(8) + 2),
  254. string[128]
  255. ;
  256. new
  257. pName[MAX_PLAYER_NAME]
  258. ;
  259. GetPlayerName(playerid, pName, sizeof(pName));
  260. format(xChars, sizeof(xChars), "");
  261. Loop(x, xLength) format(xChars, sizeof(xChars), "%s%s", xChars, xCharacters[random(sizeof(xCharacters))][0]);
  262. format(string, sizeof(string), "« hacker %s has been hacked the code and the code is %s »", pName, xChars);
  263. SendClientMessageToAll(PURPLE, string);
  264.  
  265. for(new i;i<MAX_PLAYERS;i++)
  266. {
  267. {
  268. DisablePlayerCheckpoint(i);
  269. }
  270. }
  271.  
  272. SetTimerEx("hack1", 100, false, "i", playerid);
  273.  
  274. return 1;
  275. }
  276. public OnPlayerText(playerid, text[])
  277. {
  278.  
  279.  
  280.  
  281. if(gTeam[playerid] == TEAM_ATTACK)
  282.  
  283. if(!strcmp(xChars, text, false))
  284. SendClientMessage(playerid,COLOR_RED,"Enter Code In Checkpoint ");
  285.  
  286. if (IsPlayerInCheckpoint(playerid))
  287. if(gTeam[playerid] == TEAM_ATTACK)
  288. {
  289. new
  290. string[128],
  291. pName[MAX_PLAYER_NAME]
  292. ;
  293. GetPlayerName(playerid, pName, sizeof(pName));
  294. format(string, sizeof(string), "« \%s\'s Code Accepted Gate Will Be Open In 10 Seconds »", pName);
  295. SendClientMessageToAll(GREEN, string);
  296. for(new i;i<MAX_PLAYERS;i++)
  297.  
  298.  
  299.  
  300. {
  301. {
  302. DisablePlayerCheckpoint(i);
  303. if(gTeam[playerid] == TEAM_DEFENCE)
  304. GameTextForPlayer(playerid,"~w~Defend The ~r~Check Point",3000,3);
  305.  
  306. }
  307. }
  308.  
  309.  
  310. }
  311. return 1;
  312. }
  313. //---------------------------------------------------------
  314. forward hack1(playerid);
  315. public hack1(playerid)
  316. {
  317. for(new i;i<MAX_PLAYERS;i++)
  318. {
  319. {
  320. DisablePlayerCheckpoint(i);
  321. }
  322. }
  323. for(new i;i<MAX_PLAYERS;i++)
  324. {
  325. {
  326. SetPlayerCheckpoint(i, -3505.3398,446.9947,26.5670, 3.0);
  327. }
  328. }
  329.  
  330. return 1;
  331. }
  332. forward hack2(playerid);
  333. public hack2(playerid)
  334. {
  335. GameTextForPlayer(playerid,"~r~Enter The Code To Open Gate",4000,1);
  336.  
  337. return 1;
  338. }
  339. public DefenceWin() {
  340.  
  341. EndTheRound(DEFENCE_WIN);
  342.  
  343. }
  344.  
  345.  
  346.  
  347. //---------------------------------------------------------
  348.  
  349.  
  350.  
  351. public OnPlayerConnect(playerid)
  352.  
  353. {
  354.  
  355. GameTextForPlayer(playerid,"~w~Destroy ~y~da ~b~Navy HQ~w~ !",4000,1);
  356.  
  357. SetPlayerColor(playerid,COLOR_GREY);
  358.  
  359. return 1;
  360.  
  361. }
  362.  
  363.  
  364.  
  365. //---------------------------------------------------------
  366.  
  367.  
  368.  
  369. SetupPlayerForClassSelection(playerid)
  370.  
  371. {
  372.  
  373. SetPlayerInterior(playerid,11);
  374. SetPlayerPos(playerid,508.7362,-87.4335,998.9609);
  375. SetPlayerCameraPos(playerid,508.7362,-83.4335,998.9609);
  376. SetPlayerCameraLookAt(playerid,508.7362,-87.4335,998.9609);
  377. SetPlayerFacingAngle(playerid,0.0);
  378. return;
  379.  
  380. }
  381.  
  382.  
  383.  
  384. //---------------------------------------------------------
  385.  
  386.  
  387.  
  388. SetPlayerTeamFromClass(playerid, classid) {
  389.  
  390. if(classid == 0 || classid == 1) {
  391.  
  392. gTeam[playerid] = TEAM_ATTACK;
  393.  
  394. } else if(classid == 2 || classid == 3) {
  395.  
  396. gTeam[playerid] = TEAM_DEFENCE;
  397.  
  398. }
  399.  
  400. }
  401.  
  402.  
  403.  
  404. //---------------------------------------------------------
  405.  
  406.  
  407.  
  408. public OnPlayerRequestClass(playerid, classid)
  409.  
  410. { SetPlayerInterior(playerid,0);
  411.  
  412. SetPlayerTeamFromClass(playerid, classid);
  413.  
  414. SetupPlayerForClassSelection(playerid);
  415.  
  416.  
  417.  
  418. gPlayerClass[playerid] = classid;
  419.  
  420. switch (classid) {
  421.  
  422. case 0,1:
  423.  
  424. {
  425.  
  426. GameTextForPlayer(playerid, "~r~Red ~w~Team", 1000, 3);
  427.  
  428. }
  429.  
  430. case 2, 3:
  431.  
  432. {
  433.  
  434. GameTextForPlayer(playerid, "~g~Green ~w~Team", 1000, 3);
  435.  
  436. }
  437.  
  438. }
  439.  
  440. return 1;
  441.  
  442. }
  443.  
  444.  
  445.  
  446.  
  447. public OnPlayerSpawn(playerid)
  448.  
  449. {
  450.  
  451. TextDrawShowForPlayer(playerid,shop);
  452. SetCameraBehindPlayer(playerid);
  453. SetPlayerToTeamColour(playerid);
  454. SetPlayerInterior(playerid,0);
  455. SetPlayerCheckpoint(playerid,-3502.5039,486.8727,49.8706, 3.0);
  456.  
  457.  
  458.  
  459. switch (gPlayerClass[playerid]) {
  460.  
  461. case 0,1:
  462.  
  463. {
  464.  
  465. gPlayerCheckpointStatus[playerid] = CHECKPOINT_AREA51;
  466.  
  467. //SetPlayerCheckpoint(playerid,2836.7930,-3001.6560,11.4468, 5.0);
  468.  
  469. GameTextForPlayer(playerid,"~r~Attack ~w~The Navy HQ",2000, 5);
  470. SendClientMessage(playerid,COLOR_RED,"Attack The Navy HQ ! ");
  471.  
  472. SetPlayerTeam(playerid,1);
  473. }
  474.  
  475. case 2, 3:
  476.  
  477. {
  478.  
  479. gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE;
  480.  
  481. GameTextForPlayer(playerid, "~g~Defend ~w~ The Navy", 2000, 5);
  482. SendClientMessage(playerid,COLOR_RED,"Defend The Navy ! ");
  483. SetPlayerInterior(playerid,0);
  484. SetPlayerTeam(playerid,2);
  485. }
  486.  
  487. }
  488.  
  489. return 1;
  490.  
  491. }
  492.  
  493.  
  494.  
  495. SetPlayerToTeamColour(playerid) {
  496.  
  497. if(gTeam[playerid] == TEAM_ATTACK) {
  498.  
  499. SetPlayerColor(playerid,COLOR_RED); // Red
  500.  
  501. } else if(gTeam[playerid] == TEAM_DEFENCE) {
  502.  
  503. SetPlayerColor(playerid,COLOR_GREEN); // Green
  504.  
  505. }
  506.  
  507. }
  508.  
  509.  
  510.  
  511. //---------------------------------------------------------
  512.  
  513.  
  514.  
  515. public OnPlayerEnterCheckpoint(playerid) {
  516.  
  517.  
  518.  
  519. if(gTeam[playerid] == TEAM_ATTACK)
  520. {
  521. if(IsPlanted[playerid] == 0)
  522. {
  523. BombCP[0] = SetTimerEx("BombCP1",15000,false,"i",playerid);
  524. SetTimerEx("hack", 100, false, "i", playerid);
  525. //KillC = SetTimer("CountDown",100,0);
  526.  
  527. IsPlanted[playerid] = 1;
  528. }
  529. else if(IsPlanted[playerid] == 1)
  530. {
  531. SetTimerEx("hack2", 100, false, "i", playerid);
  532. }
  533. }
  534.  
  535.  
  536. if(gTeam[playerid] == TEAM_DEFENCE)
  537. {
  538. GameTextForPlayer(playerid,"~w~Defend The ~r~Check Point",3000,3);
  539. }
  540.  
  541.  
  542. return 1;
  543.  
  544. }
  545.  
  546.  
  547.  
  548.  
  549. //---------------------------------------------------------
  550.  
  551.  
  552.  
  553. public OnPlayerDeath(playerid, killerid, reason)
  554. {
  555.  
  556. SetPlayerWantedLevel(playerid, 0);
  557. if(killerid == INVALID_PLAYER_ID) {
  558. SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
  559. } else {
  560. if(gTeam[killerid] != gTeam[playerid]) {
  561. // Valid kill
  562. SendDeathMessage(killerid,playerid,reason);
  563. SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
  564. GivePlayerMoney(killerid,3000);
  565. GivePlayerMoney(playerid,-1000);
  566. }
  567. else {
  568. // Team kill
  569. SendDeathMessage(killerid,playerid,reason);
  570. }
  571. }
  572. if(gTeam[playerid] == TEAM_ATTACK)
  573. {
  574. DisablePlayerCheckpoint(playerid);KillTimer(BombCP[0]);
  575. }
  576. //Killing ranks
  577.  
  578. First[killerid] ++;
  579. First[playerid] = 0;
  580.  
  581. Spree[killerid] ++;
  582. Spree[playerid] = 0;
  583.  
  584. Double[killerid] ++;
  585. Double[playerid] = 0;
  586.  
  587. Dominat[killerid] ++;
  588. Dominat[playerid] = 0;
  589.  
  590. Rampage[killerid] ++;
  591. Rampage[playerid] = 0;
  592.  
  593. Monster[killerid] ++;
  594. Monster[playerid] = 0;
  595.  
  596. Six[killerid] ++;
  597. Six[playerid] = 0;
  598.  
  599. Four[killerid] ++;
  600. Four[playerid] = 0;
  601.  
  602. if(First[killerid] == 1)
  603. {
  604. SetPlayerWantedLevel(killerid, 1);
  605.  
  606. }
  607. if(Double[killerid] == 2)
  608. {
  609. new str2[128];
  610. new kname[MAX_PLAYER_NAME];
  611. GetPlayerName(killerid,kname,sizeof(kname));
  612. format(str2,sizeof(str2), " %s(%d) Double Killing",kname,killerid);
  613. GameTextForAll(str2,4000,3);
  614. SendClientMessageToAll(LIGHTBLUE,str2);
  615. SetPlayerWantedLevel(killerid, 2);
  616. }
  617. if(Spree[killerid] == 3)
  618. {
  619. new str2[128];
  620. new kname[MAX_PLAYER_NAME];
  621. GetPlayerName(killerid,kname,sizeof(kname));
  622. format(str2,sizeof(str2), " %s(%d) Killing Spree",kname,killerid);
  623. GameTextForAll(str2,4000,3);
  624. SendClientMessageToAll(LIGHTBLUE,str2);
  625. SetPlayerWantedLevel(killerid, 3);
  626. GivePlayerMoney(killerid,4000);
  627. }
  628. if(Four[killerid] == 4)
  629. {
  630. SetPlayerWantedLevel(killerid, 4);
  631. }
  632. if(Dominat[killerid] == 5)
  633. {
  634. new str2[128];
  635. new kname[MAX_PLAYER_NAME];
  636. GetPlayerName(killerid,kname,sizeof(kname));
  637. format(str2,sizeof(str2), " %s(%d) Dominating",kname,killerid);
  638. GameTextForAll(str2,4000,3);
  639. SendClientMessageToAll(LIGHTBLUE,str2);
  640. SetPlayerWantedLevel(killerid, 5);
  641. GivePlayerMoney(killerid,6000);
  642. }
  643. if(Six[killerid] == 6)
  644. {
  645. SetPlayerWantedLevel(killerid, 6);
  646. }
  647. if(Rampage[killerid] == 8)
  648. {
  649. new str2[128];
  650. new kname[MAX_PLAYER_NAME];
  651. GetPlayerName(killerid,kname,sizeof(kname));
  652. format(str2,sizeof(str2), " %s(%d) Rampage Killing",kname,killerid);
  653. GameTextForAll(str2,4000,3);
  654. SendClientMessageToAll(LIGHTBLUE,str2);
  655. SetPlayerWantedLevel(killerid, 6);
  656. GivePlayerMoney(killerid,8000);
  657. }
  658.  
  659. if(Monster[killerid] == 12)
  660. {
  661. new str2[128];
  662. new kname[MAX_PLAYER_NAME];
  663. GetPlayerName(killerid,kname,sizeof(kname));
  664. format(str2,sizeof(str2), " %s(%d) Monster Killing",kname,killerid);
  665. GameTextForAll(str2,4000,3);
  666. SendClientMessageToAll(LIGHTBLUE,str2);
  667. SetPlayerWantedLevel(killerid, 6);
  668. GivePlayerMoney(killerid,10000);
  669.  
  670. }
  671. return 1;
  672.  
  673. }
  674.  
  675. //---------------------------------------------------------
  676.  
  677. forward Finish(playerid);
  678. public Finish(playerid)
  679. {
  680. DisablePlayerCheckpoint(playerid);
  681. EndTheRound(ATTACK_WIN);
  682. }
  683. EndTheRound(winner) {
  684.  
  685. switch (winner) {
  686.  
  687. case ATTACK_WIN:
  688.  
  689. {
  690.  
  691. GameTextForAll("~b~The Navy HQ Has Been ~r~Destroyed~w~+10000", 2000, 5);
  692. for(new i;i<MAX_PLAYERS;i++)
  693. {
  694. if(gTeam[i] == TEAM_ATTACK)
  695. {
  696. GivePlayerMoney(i,10000);
  697. }
  698. }
  699. KillTimer(gRoundTimer);
  700.  
  701. }
  702.  
  703. case DEFENCE_WIN:
  704.  
  705. {
  706.  
  707. GameTextForAll("~g~Navy HQ Has Been~y~Successfully Defended ~w~+10000", 2000, 5);
  708. for(new i;i<MAX_PLAYERS;i++)
  709. {
  710. if(gTeam[i] == TEAM_DEFENCE)
  711. {
  712. GivePlayerMoney(i,10000);
  713. }
  714. }
  715. }
  716.  
  717. }
  718.  
  719. SetTimer("GameModeExitFunc", 5000, 0);
  720.  
  721. }
  722.  
  723.  
  724.  
  725. //---------------------------------------------------------
  726. public OnPlayerCommandText(playerid, cmdtext[])
  727. {
  728. if(!strcmp(cmdtext, "/shop", true))
  729. {
  730. ShowPlayerDialog(playerid,S1,DIALOG_STYLE_LIST,"Shop","Weapons\nVehicles","Select","Cancel");
  731. return 1;
  732. }
  733. return 0;
  734. }
  735. //---------------------------------------------------------
  736.  
  737.  
  738. public GameModeExitFunc()
  739.  
  740. {
  741. GameTextForAll("~y~Changing Game ~n~ ~w~Please Wait....",5000,1);
  742. SendRconCommand("changemode GM1");
  743. for(new i;i<15;++i)
  744. {
  745. SendClientMessageToAll(COLOR_GREEN," ");
  746. }
  747. SendClientMessageToAll(COLOR_GREY,"Please Donate For Our Server");
  748. }
  749. //---------------------------------------------------------
  750.  
  751. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  752. {
  753.  
  754. if(response)
  755. {
  756. switch(dialogid == S1)
  757. {
  758. case 1:
  759. {
  760. switch(listitem)
  761. {
  762. case 0:
  763. {
  764. ShowPlayerDialog(playerid,S2,DIALOG_STYLE_LIST,"Weapons Shop","Knife ($1000)\nChainsaw ($10000)\nGrenade ($20000)\nMolotov Cocktail ($15000)\nSilenced 9mm ($3000)\nDesert Eagle ($5000)\nShotgun ($10000)\nSawn-off Shotgun ($15000)\nCombat Shotgun ($6000)\nAK-47 ($10000)\nM4 ($15000)\nTec9 ($15000)\nSniper Rifle ($20000)","Select","Cancel");
  765. }
  766. case 1:
  767. {
  768. ShowPlayerDialog(playerid,S3,DIALOG_STYLE_LIST,"Vehicles Shop","BF-400 ($9000)\nElegy ($12000)\nHydra ($1000000)\nMaverick ($30000)\nSanchez ($10000)\nPhoenix ($17000)\nNRG-500 ($11000)","Select","Cancel");
  769. }
  770. }
  771. }
  772. }
  773. }
  774. if(response)
  775. {
  776. switch(dialogid == S3)
  777. {
  778. case 1:
  779. {
  780. switch(listitem)
  781. {
  782. case 0:
  783. {
  784. if(GetPlayerMoney(playerid) < 9000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  785. GetPlayerPos(playerid,X,Y,Z);
  786. GetPlayerPos(playerid,X,Y,Z);
  787. GetPlayerFacingAngle(playerid,Angle);
  788. aCar = CreateVehicle(581,X,Y,Z,Angle,1,-1,-1);
  789. PutPlayerInVehicle(playerid,aCar,0);
  790. SetVehicleVirtualWorld(aCar, GetPlayerVirtualWorld(playerid));
  791. LinkVehicleToInterior(aCar, GetPlayerInterior(playerid));
  792. GivePlayerMoney(playerid,-9000);
  793. }
  794. case 1:
  795. {
  796. if(GetPlayerMoney(playerid) < 12000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  797. GetPlayerPos(playerid,X,Y,Z);
  798. GetPlayerPos(playerid,X,Y,Z);
  799. GetPlayerFacingAngle(playerid,Angle);
  800. aCar = CreateVehicle(562,X,Y,Z,Angle,1,-1,-1);
  801. PutPlayerInVehicle(playerid,aCar,0);
  802. SetVehicleVirtualWorld(aCar, GetPlayerVirtualWorld(playerid));
  803. LinkVehicleToInterior(aCar, GetPlayerInterior(playerid));
  804. GivePlayerMoney(playerid,-12000);
  805. }
  806. case 2:
  807. {
  808. if(GetPlayerMoney(playerid) < 1000000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  809. GetPlayerPos(playerid,X,Y,Z);
  810. GetPlayerPos(playerid,X,Y,Z);
  811. GetPlayerFacingAngle(playerid,Angle);
  812. aCar = CreateVehicle(520,X,Y,Z,Angle,1,-1,-1);
  813. PutPlayerInVehicle(playerid,aCar,0);
  814. SetVehicleVirtualWorld(aCar, GetPlayerVirtualWorld(playerid));
  815. LinkVehicleToInterior(aCar, GetPlayerInterior(playerid));
  816. GivePlayerMoney(playerid,-1000000);
  817. }
  818. case 3:
  819. {
  820. if(GetPlayerMoney(playerid) < 30000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  821. GetPlayerPos(playerid,X,Y,Z);
  822. GetPlayerPos(playerid,X,Y,Z);
  823. GetPlayerFacingAngle(playerid,Angle);
  824. aCar = CreateVehicle(487,X,Y,Z,Angle,1,-1,-1);
  825. PutPlayerInVehicle(playerid,aCar,0);
  826. SetVehicleVirtualWorld(aCar, GetPlayerVirtualWorld(playerid));
  827. LinkVehicleToInterior(aCar, GetPlayerInterior(playerid));
  828. GivePlayerMoney(playerid,-30000);
  829. }
  830. case 4:
  831. {
  832. if(GetPlayerMoney(playerid) < 10000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  833. GetPlayerPos(playerid,X,Y,Z);
  834. GetPlayerPos(playerid,X,Y,Z);
  835. GetPlayerFacingAngle(playerid,Angle);
  836. aCar = CreateVehicle(468,X,Y,Z,Angle,1,-1,-1);
  837. PutPlayerInVehicle(playerid,aCar,0);
  838. SetVehicleVirtualWorld(aCar, GetPlayerVirtualWorld(playerid));
  839. LinkVehicleToInterior(aCar, GetPlayerInterior(playerid));
  840. GivePlayerMoney(playerid,-10000);
  841. }
  842. case 5:
  843. {
  844. if(GetPlayerMoney(playerid) < 17000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  845. GetPlayerPos(playerid,X,Y,Z);
  846. GetPlayerPos(playerid,X,Y,Z);
  847. GetPlayerFacingAngle(playerid,Angle);
  848. aCar = CreateVehicle(603,X,Y,Z,Angle,1,-1,-1);
  849. PutPlayerInVehicle(playerid,aCar,0);
  850. SetVehicleVirtualWorld(aCar, GetPlayerVirtualWorld(playerid));
  851. LinkVehicleToInterior(aCar, GetPlayerInterior(playerid));
  852. GivePlayerMoney(playerid,-17000);
  853. }
  854. case 6:
  855. {
  856. if(GetPlayerMoney(playerid) < 11000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  857. GetPlayerPos(playerid,X,Y,Z);
  858. GetPlayerPos(playerid,X,Y,Z);
  859. GetPlayerFacingAngle(playerid,Angle);
  860. aCar = CreateVehicle(522,X,Y,Z,Angle,1,-1,-1);
  861. PutPlayerInVehicle(playerid,aCar,0);
  862. SetVehicleVirtualWorld(aCar, GetPlayerVirtualWorld(playerid));
  863. LinkVehicleToInterior(aCar, GetPlayerInterior(playerid));
  864. GivePlayerMoney(playerid,-11000);
  865. }
  866. }
  867. }
  868. }
  869. }
  870. if(response)//they pressed the first button
  871. {
  872. switch(dialogid == S2)//if your using only one dialog this isn't needed but you never know.
  873. {
  874. case 1://our dialog
  875. {
  876. switch(listitem)//wich listitem is chosen
  877. {
  878. case 0://the first item in the list
  879. {
  880. if(GetPlayerMoney(playerid) < 1000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  881. GivePlayerMoney(playerid, -1000);
  882. GivePlayerWeapon(playerid,4,1);
  883.  
  884. }
  885. case 1:
  886. {
  887. if(GetPlayerMoney(playerid) < 10000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  888. GivePlayerMoney(playerid, -10000);
  889. GivePlayerWeapon(playerid,9,1);
  890. }
  891. case 2:
  892. {
  893. if(GetPlayerMoney(playerid) < 20000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  894. GivePlayerMoney(playerid, -20000);
  895. GivePlayerWeapon(playerid,16,5);
  896. }
  897. case 3:
  898. {
  899. if(GetPlayerMoney(playerid) < 15000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  900. GivePlayerMoney(playerid, -15000);
  901. GivePlayerWeapon(playerid,18,28);
  902.  
  903. }
  904. case 4:
  905. {
  906. if(GetPlayerMoney(playerid) < 3000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  907. GivePlayerMoney(playerid, -3000);
  908. GivePlayerWeapon(playerid,23,200);
  909. }
  910. case 5:
  911. {
  912. if(GetPlayerMoney(playerid) < 5000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  913. GivePlayerMoney(playerid, -5000);
  914. GivePlayerWeapon(playerid,24,230);
  915. }
  916. case 6:
  917. {
  918. if(GetPlayerMoney(playerid) < 10000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  919. GivePlayerMoney(playerid, -10000);
  920. GivePlayerWeapon(playerid,25,230);
  921.  
  922. }
  923. case 7:
  924. {
  925. if(GetPlayerMoney(playerid) < 15000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  926. GivePlayerMoney(playerid, -15000);
  927. GivePlayerWeapon(playerid,26,850);
  928.  
  929. }
  930. case 8:
  931. {
  932. if(GetPlayerMoney(playerid) < 600) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  933. GivePlayerMoney(playerid, -600);
  934. GivePlayerWeapon(playerid,27,250);
  935. }
  936. case 9:
  937. {
  938. if(GetPlayerMoney(playerid) < 10000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  939. GivePlayerMoney(playerid, -10000);
  940. GivePlayerWeapon(playerid,30,850);
  941.  
  942. }
  943. case 10:
  944. {
  945. if(GetPlayerMoney(playerid) < 15000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  946. GivePlayerMoney(playerid, -15000);
  947. GivePlayerWeapon(playerid,31,950);
  948.  
  949. }
  950. case 11:
  951. {
  952. if(GetPlayerMoney(playerid) < 15000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  953. GivePlayerMoney(playerid, -15000);
  954. GivePlayerWeapon(playerid,32,1050);
  955.  
  956. }
  957. case 12:
  958. {
  959. if(GetPlayerMoney(playerid) < 20000) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FF3300} >E-R-R-O-R<", "{33FFCC} You Don't Have Enough Cash .","OK","Cancel");
  960. GivePlayerMoney(playerid, -20000);
  961. GivePlayerWeapon(playerid,34,1450);
  962.  
  963. }
  964. }
  965. }
  966. }
  967. }
  968. return 1;
  969. }
  970.  
  971. //---------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement