Guest User

Untitled

a guest
Jan 24th, 2017
174
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.25 KB | None | 0 0
  1. #define ZONE_GROVE0 0
  2.  
  3. new iCP[MAX_PLAYERS];
  4. new UnderAttack[30];
  5. new Captured[30];
  6. new CP[30];
  7. new Zone[30];
  8. new timer[MAX_PLAYERS][30];
  9. new CountVar[MAX_PLAYERS] = 25;
  10. new InCP[MAX_PLAYERS][30];
  11. new CountTime[MAX_PLAYERS];
  12. new tCP[MAX_ZONES];
  13.  
  14. public OnGameModeInit()
  15. {
  16. CP[ZONE_GROVE0] = CreateDynamicCP(2136.1829, -1631.1890, 13.5576, 5, -1, -1, -1, 100);
  17. Zone[ZONE_GROVE0] = GangZoneCreate(2036.8926391601562, -1719.9133030176163, 2216.8926391601562, -1539.9133030176163);
  18. UnderAttack[ZONE_GROVE0] = 0;
  19. Captured[ZONE_GROVE0] = -1;
  20. tCP[ZONE_GROVE0] = GANG_GROVE;
  21. return 1;
  22. }
  23.  
  24. public OnPlayerDisconnect(playerid, reason)
  25. {
  26. if(InCP[playerid][ZONE_GROVE0] == 1)
  27. {
  28. UnderAttack[ZONE_GROVE0] = 0;
  29. }
  30. return 1;
  31. }
  32.  
  33. public OnPlayerSpawn(playerid)
  34. {
  35. iCP[playerid] = -1;
  36. InCP[playerid][1] = 0;
  37. if(tCP[ZONE_GROVE0] == GANG_GROVE) GangZoneShowForPlayer(playerid, Zone[ZONE_GROVE0], COLOR_ZONE_GROVE);
  38. else if(tCP[ZONE_GROVE0] == GANG_BALLAS) GangZoneShowForPlayer(playerid, Zone[ZONE_GROVE0], COLOR_ZONE_BALLAS);
  39. else if(tCP[ZONE_GROVE0] == GANG_AZTECAS) GangZoneShowForPlayer(playerid, Zone[ZONE_GROVE0], COLOR_ZONE_AZTECAS);
  40. else if(tCP[ZONE_GROVE0] == GANG_VAGOS) GangZoneShowForPlayer(playerid, Zone[ZONE_GROVE0], COLOR_ZONE_VAGOS);
  41. return 1;
  42. }
  43.  
  44. public OnPlayerDeath(playerid, killerid, reason)
  45. {
  46. KillTimer(timer[playerid][ZONE_GROVE0]);
  47. KillTimer(CountTime[playerid]);
  48. UnderAttack[ZONE_GROVE0] = 0;
  49. return 1;
  50. }
  51.  
  52. public OnPlayerUpdate(playerid)
  53. {
  54. if(UnderAttack[ZONE_GROVE0] == 1)
  55. {
  56. SetTimer("ZoneFlash", 1000, false);
  57. }
  58. return 1;
  59. }
  60.  
  61. public OnPlayerEnterDynamicCP(playerid, checkpointid)
  62. {
  63. if(checkpointid == CP[ZONE_GROVE0])
  64. {
  65. if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, -1, "Wyjdź z pojazdu.");
  66. if(UnderAttack[ZONE_GROVE0] == 1)
  67. {
  68. SendClientMessage(playerid, -1,"This zone is already being captured!");
  69. }
  70. if(gTeam[playerid] == tCP[ZONE_GROVE0])
  71. {
  72. SendClientMessage(playerid, -1,"Twój gang posiada już tą strefę");
  73. }
  74. else
  75. {
  76. UnderAttack[ZONE_GROVE0] = 1;
  77. timer[playerid][ZONE_GROVE0] = SetTimerEx("SetCaptureZone", 25000, false,"i",playerid);
  78. CountTime[playerid] = SetTimerEx("CountDown", 1, false,"i", playerid);
  79. iCP[playerid] = ZONE_GROVE0;
  80. InCP[playerid][ZONE_GROVE0] = 1;
  81. Captured[ZONE_GROVE0] = 0;
  82. if(gTeam[playerid] == GANG_GROVE)
  83. {
  84. GangZoneFlashForAll(Zone[ZONE_GROVE0], COLOR_ZONE_GROVE);
  85. }
  86. else if(gTeam[playerid] == GANG_BALLAS)
  87. {
  88. GangZoneFlashForAll(Zone[ZONE_GROVE0], COLOR_ZONE_BALLAS);
  89. }
  90. else if(gTeam[playerid] == GANG_VAGOS)
  91. {
  92. GangZoneFlashForAll(Zone[ZONE_GROVE0], COLOR_ZONE_VAGOS);
  93. }
  94. else if(gTeam[playerid] == GANG_AZTECAS)
  95. {
  96. GangZoneFlashForAll(Zone[ZONE_GROVE0], COLOR_ZONE_AZTECAS);
  97. }
  98. new string[128], name[MAX_PLAYER_NAME+1];
  99. GetPlayerName(playerid, name, sizeof(name));
  100. format(string, sizeof(string),"%s przejmuje teren GANTON0",name);
  101. SendClientMessageToAll(-1, string);
  102. }
  103. }
  104. return 1;
  105. }
  106.  
  107. public OnPlayerLeaveDynamicCP(playerid, checkpointid)
  108. {
  109. if(checkpointid == CP[ZONE_GROVE0])
  110. {
  111. if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, -1, "Wyjdź z pojazdu.");
  112. if(Captured[ZONE_GROVE0] == 1)
  113. {
  114. GangZoneStopFlashForAll(Zone[ZONE_GROVE0]);
  115. UnderAttack[ZONE_GROVE0] = 0;
  116. InCP[playerid][ZONE_GROVE0] = 0;
  117. tCP[ZONE_GROVE0] = gTeam[playerid];
  118. if(gTeam[playerid] == GANG_GROVE)
  119. {
  120. GangZoneShowForAll(Zone[ZONE_GROVE0], COLOR_ZONE_GROVE);
  121. }
  122. else if(gTeam[playerid] == GANG_BALLAS)
  123. {
  124. GangZoneShowForAll(Zone[ZONE_GROVE0], COLOR_ZONE_BALLAS);
  125. }
  126. else if(gTeam[playerid] == GANG_VAGOS)
  127. {
  128. GangZoneShowForAll(Zone[ZONE_GROVE0], COLOR_ZONE_VAGOS);
  129. }
  130. else if(gTeam[playerid] == GANG_AZTECAS)
  131. {
  132. GangZoneShowForAll(Zone[ZONE_GROVE0], COLOR_ZONE_AZTECAS);
  133. }
  134. KillTimer(timer[playerid][ZONE_GROVE0]);
  135. KillTimer(CountTime[playerid]);
  136. }
  137. else if(Captured[ZONE_GROVE0] == 0)
  138. {
  139. SendClientMessage(playerid, -1,"Opusciles teren, wiec nie zostal on przejety");
  140. UnderAttack[ZONE_GROVE0] = -1;
  141. InCP[playerid][ZONE_GROVE0] = 0;
  142. GangZoneStopFlashForAll(Zone[ZONE_GROVE0]);
  143. KillTimer(timer[playerid][ZONE_GROVE0]);
  144. KillTimer(CountTime[playerid]);
  145. }
  146. }
  147. return 1;
  148. }
  149.  
  150. forward SetCaptureZone(playerid);
  151. public SetCaptureZone(playerid)
  152. {
  153. if(iCP[playerid] == ZONE_GROVE0)
  154. {
  155. SetPlayerScore(playerid, GetPlayerScore(playerid)+5);
  156. GivePlayerCash(playerid, 1000);
  157. new string[128], name[MAX_PLAYER_NAME+1];
  158. GetPlayerName(playerid, name, sizeof(name));
  159. format(string, sizeof(string),"%s przeja teren GANTON0 i dostaje $1000",name);
  160. SendClientMessageToAll(-1, string);
  161. tCP[ZONE_GROVE0] = gTeam[playerid];
  162. if(gTeam[playerid] == GANG_GROVE)
  163. {
  164. GangZoneShowForAll(Zone[ZONE_GROVE0], COLOR_ZONE_GROVE);
  165. }
  166. else if(gTeam[playerid] == GANG_BALLAS)
  167. {
  168. GangZoneShowForAll(Zone[ZONE_GROVE0], COLOR_ZONE_BALLAS);
  169. }
  170. else if(gTeam[playerid] == GANG_VAGOS)
  171. {
  172. GangZoneShowForAll(Zone[ZONE_GROVE0], COLOR_ZONE_VAGOS);
  173. }
  174. else if(gTeam[playerid] == GANG_AZTECAS)
  175. {
  176. GangZoneShowForAll(Zone[ZONE_GROVE0], COLOR_ZONE_AZTECAS);
  177. }
  178. GangZoneStopFlashForAll(Zone[ZONE_GROVE0]);
  179. Captured[ZONE_GROVE0] = 1;
  180. KillTimer(CountTime[playerid]);
  181. KillTimer(timer[playerid][ZONE_GROVE0]);
  182. }
  183. return 1;
  184. }
  185.  
  186. forward CountDown(playerid);
  187. public CountDown(playerid)
  188. {
  189. CountVar[playerid]--;
  190. if(CountVar[playerid] == 0)
  191. {
  192. CountVar[playerid] = 25;
  193. KillTimer(CountTime[playerid]);
  194. }
  195. else
  196. {
  197. new str[124];
  198. format(str, sizeof(str),"~n~~n~~n~~n~~n~~n~~r~%d/~y~25 ~w~Sekund~n~~g~do konca przejcia terenu", CountVar[playerid]);
  199. GameTextForPlayer(playerid, str, 1000, 3);
  200. }
  201. CountTime[playerid] = SetTimerEx("CountDown", 1000, false,"i", playerid);
  202. return 1;
  203. }
  204.  
  205. forward ZoneFlash(playerid);
  206. public ZoneFlash(playerid)
  207. {
  208. if(UnderAttack[ZONE_GROVE0] == 1)
  209. {
  210. if(gTeam[playerid] == GANG_GROVE)
  211. {
  212. GangZoneFlashForAll(Zone[ZONE_GROVE0], COLOR_ZONE_GROVE);
  213. }
  214. else if(gTeam[playerid] == GANG_BALLAS)
  215. {
  216. GangZoneFlashForAll(Zone[ZONE_GROVE0], COLOR_ZONE_BALLAS);
  217. }
  218. else if(gTeam[playerid] == GANG_VAGOS)
  219. {
  220. GangZoneFlashForAll(Zone[ZONE_GROVE0], COLOR_ZONE_VAGOS);
  221. }
  222. else if(gTeam[playerid] == GANG_AZTECAS)
  223. {
  224. GangZoneFlashForAll(Zone[ZONE_GROVE0], COLOR_ZONE_AZTECAS);
  225. }
  226. }
  227. return 1;
  228. }
Advertisement
Add Comment
Please, Sign In to add comment