Advertisement
Oblivion_UFF

CS FIX

Feb 20th, 2020
341
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.97 KB | None | 0 0
  1. #include <a_samp>
  2. #include <streamer>
  3. #include <foreach>
  4.  
  5. #define TEAM_RED 1
  6. #define TEAM_BLUE 2
  7.  
  8. #define COLOR_RED 0xAA3333AA
  9. #define COLOR_BLUE 0x33CCFFAA
  10. #define COLOR_ERROR 0xFF6A6AFF
  11. #define COLOR_BOMB 0x96BD6AFF
  12.  
  13. new gTeam[MAX_PLAYERS];
  14. new IsPlanted= 0;
  15. new BombTimer;
  16. new DefuseTimer;
  17. new BombC;
  18. new InCS[MAX_PLAYERS];
  19. new Defusing = 0;
  20.  
  21. public OnFilterScriptInit()
  22. {
  23. print("\n=========================================");
  24. print(" Counter Strike Minigame by Xaviour212");
  25. print("=========================================\n");
  26. //
  27. CreateDynamicObject(4843, 3788.556640625, -1007, 22.800483703613, 2.4224853515625, 14.26025390625, 359.37927246094);
  28. CreateDynamicObject(18450, 3788.0417480469, -1074.3570556641, 28.603553771973, 271.82019042969, 105.94512939453, 105.95275878906);
  29. CreateDynamicObject(18450, 3752.2565917969, -1034.466796875, 30.965980529785, 271.81823730469, 105.94110107422, 9.951904296875);
  30. CreateDynamicObject(18450, 3795.3010253906, -994.7861328125, 30.988925933838, 87.696228027344, 130.62664794922, 229.35363769531);
  31. CreateDynamicObject(18450, 3829.0361328125, -1033.736328125, 28.466419219971, 87.698364257813, 40.512084960938, 223.51135253906);
  32. CreateDynamicObject(5836, 3762.46875, -1060.9654541016, 33.749580383301, 0, 0, 0);
  33. CreateDynamicObject(3244, 3817.2033691406, -1006.7029418945, 23.351663589478, 0, 0, 0);
  34. CreateDynamicObject(11426, 3763.2980957031, -1048.7274169922, 22.138051986694, 0, 0, 0);
  35. CreateDynamicObject(11440, 3763.1037597656, -1040.1733398438, 22.192417144775, 0, 0, 0);
  36. CreateDynamicObject(11444, 3761.8654785156, -1023.9291381836, 23.29563331604, 0, 0, 87);
  37. CreateDynamicObject(11447, 3763.8076171875, -1014.5645751953, 23.725009918213, 0.25, 0, 83.5);
  38. CreateDynamicObject(11459, 3809.7502441406, -1006.7024536133, 22.369380950928, 0, 0, 0);
  39. CreateDynamicObject(11425, 3788.8916015625, -1063.1005859375, 23.222801208496, 0, 0, 0);
  40. CreateDynamicObject(2892, 3763.8696289063, -1039.8968505859, 25.301792144775, 0, 0, 0);
  41. CreateDynamicObject(3277, 3814.0671386719, -1065.7998046875, 20.544910430908, 0, 0, 0);
  42. CreateDynamicObject(3279, 3762.6506347656, -1003.1516723633, 24.117984771729, 0, 0, 0);
  43. CreateDynamicObject(16093, 3787.5080566406, -1004.9901733398, 24.341495513916, 0, 0, 0);
  44. CreateDynamicObject(3884, 3813.9548339844, -1065.9423828125, 20.519918441772, 0, 0, 0);
  45.  
  46. return 1;
  47. }
  48.  
  49. public OnPlayerDeath(playerid)
  50. {
  51. if(InCS[playerid] == 1)
  52. {
  53. InCS[playerid] = 0;
  54. SetPlayerTeam(playerid, 255);
  55. ResetPlayerWeapons(playerid);
  56. SpawnPlayer(playerid);
  57. }
  58. return 1;
  59. }
  60. public OnPlayerConnect(playerid)
  61. {
  62. SendClientMessage(playerid, COLOR_RED, "----------->This server use CS Minigame<----------");
  63. InCS[playerid] = 0;
  64. return 1;
  65. }
  66.  
  67. public OnPlayerCommandText(playerid, cmdtext[])
  68. {
  69. if (strcmp(cmdtext, "/Terrorist", true) == 0)
  70. {
  71. new name[MAX_PLAYER_NAME], string[44];
  72. GetPlayerName(playerid, name, sizeof(name));
  73. format(string, sizeof(string), "%s has joined the Terrorist.",name);
  74. SendClientMessageToAll(0xFFFF00AA, string);
  75. SetPlayerPos(playerid, 3811.0046,-1040.1082,22.4528);
  76. SendClientMessage(playerid, COLOR_RED, "Your team is Team Red or Terrorist");
  77. SetPlayerTeam(playerid, TEAM_RED);
  78. gTeam[playerid] = TEAM_RED;
  79. SetPlayerColor(playerid, COLOR_RED);
  80. SetPlayerHealth(playerid, 100);
  81. SetPlayerArmour(playerid, 100);
  82. SetPlayerSkin(playerid, 179);
  83. ResetPlayerWeapons(playerid);
  84. GivePlayerWeapon(playerid, 24, 10000);
  85. GivePlayerWeapon(playerid, 25, 10000);
  86. GivePlayerWeapon(playerid, 32, 10000);
  87. GivePlayerWeapon(playerid, 33, 10000);
  88. GivePlayerWeapon(playerid, 30, 10000);
  89. GivePlayerMoney(playerid, -100);
  90. InCS[playerid] = 1;
  91. return 1;
  92. }
  93. if (strcmp(cmdtext, "/CT", true) == 0)
  94. {
  95. new name[MAX_PLAYER_NAME], string[44];
  96. GetPlayerName(playerid, name, sizeof(name));
  97. format(string, sizeof(string), "%s has joined the Counter-Terrorist.",name);
  98. SendClientMessageToAll(0xFFFF00AA, string);
  99. SetPlayerPos(playerid, 3756.1958,-1022.8865,24.7479);
  100. SendClientMessage(playerid, COLOR_BLUE, "Your team is Team Blue or Counter-Terrorist");
  101. SetPlayerTeam(playerid, TEAM_BLUE);
  102. gTeam[playerid] = TEAM_BLUE;
  103. SetPlayerColor(playerid, COLOR_BLUE);
  104. SetPlayerHealth(playerid, 100);
  105. SetPlayerArmour(playerid, 100);
  106. SetPlayerSkin(playerid, 285);
  107. ResetPlayerWeapons(playerid);
  108. GivePlayerWeapon(playerid, 22, 10000);
  109. GivePlayerWeapon(playerid, 27, 10000);
  110. GivePlayerWeapon(playerid, 29, 10000);
  111. GivePlayerWeapon(playerid, 31, 10000);
  112. GivePlayerWeapon(playerid, 34, 10000);
  113. GivePlayerMoney(playerid, -100);
  114. InCS[playerid] = 1;
  115. return 1;
  116. }
  117. if (strcmp(cmdtext, "/plant", true) == 0)
  118. {
  119. if(IsPlanted == 0)
  120. {
  121. if(GetPlayerTeam(playerid) == TEAM_RED)
  122. {
  123. if(IsPlayerInRangeOfPoint(playerid, 7.0, 3787.4651,-1002.8569,25.4665))
  124. {
  125. IsPlanted = 1;
  126. BombTimer = SetTimer("Bomb",30000,false);
  127. SendClientMessageToAll(COLOR_BLUE, "The Bomb has been planted");
  128. BombC = CreateDynamicCP(3787.4651,-1002.8569,25.4665, 1.5, -1, -1, -1, 100.0);
  129. return 1;
  130. }
  131. else return SendClientMessage(playerid, COLOR_ERROR, "(ERROR) You must in CT Generator Room");
  132. }
  133. else return SendClientMessage(playerid, COLOR_ERROR, "(ERROR) Only Terrorist can use this command");
  134. }
  135. else return SendClientMessage(playerid, COLOR_ERROR, "(ERROR) Bomb has been planted");
  136. }
  137.  
  138. return 0;
  139. }
  140.  
  141. forward Bomb();
  142. public Bomb()
  143. {
  144. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  145. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  146. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  147. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  148. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  149. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  150. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  151. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  152. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  153. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  154. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  155. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  156. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  157. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  158. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  159. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  160. CreateExplosion(3787.4651,-1002.8569,25.4665, 6, 150.0);
  161. IsPlanted = 0;
  162. Defusing = 0;
  163. KillTimer(BombTimer);
  164. SendClientMessageToAll(COLOR_BOMB, "Bomb exploded. Terrorist win");
  165. KillTimer(DefuseTimer);
  166. DestroyDynamicCP(BombC);
  167. foreach(new i : Player) if(InCS[i] == 1)
  168. {
  169. if(gTeam[i] == TEAM_RED)
  170. {
  171. GameTextForPlayer(i,"~r~Terrorist Win",3000,5);
  172. GivePlayerMoney(i, 5000);
  173. }
  174. else if(gTeam[i] == TEAM_BLUE)
  175. {
  176.  
  177. GivePlayerMoney(i, 2500);
  178.  
  179. GameTextForPlayer(i,"~r~Your Team Lost",3000,5);
  180. }
  181. ResetPlayerWeapons(i);
  182. SetPlayerTeam(i, 255);
  183. InCS[i] = 0;
  184. SpawnPlayer(i);
  185. }
  186. }
  187.  
  188. forward Defuse();
  189. public Defuse()
  190. {
  191. SendClientMessageToAll(COLOR_BOMB, "Bomb has been defuse");
  192. KillTimer(BombTimer);
  193. KillTimer(DefuseTimer);
  194. IsPlanted = 0;
  195. Defusing = 0;
  196. SendClientMessageToAll(COLOR_BOMB, "Bomb has been defused. Counter-Terrorist win");
  197. DestroyDynamicCP(BombC);
  198. foreach(new i : Player) if(InCS[i] == 1)
  199. {
  200. if(gTeam[i] == TEAM_RED)
  201. {
  202. GameTextForPlayer(i,"~r~Your Team Lost",3000,5);
  203. GivePlayerMoney(i, 5000);
  204. }
  205. else if(gTeam[i] == TEAM_BLUE)
  206. {
  207. GivePlayerMoney(i, 2500);
  208. GameTextForPlayer(i,"~r~Counter-Terrorist Win",3000,5);
  209. }
  210. ResetPlayerWeapons(i);
  211. SetPlayerTeam(i, 255);
  212. InCS[i] = 0;
  213. SpawnPlayer(i);
  214. }
  215. }
  216.  
  217. public OnPlayerEnterDynamicCP(playerid, checkpointid)
  218. {
  219. if(checkpointid == BombC && InCS[playerid] == 1)
  220. {
  221. if(GetPlayerTeam(playerid) == TEAM_BLUE)
  222. {
  223. if(IsPlayerInRangeOfPoint(playerid, 5.0, 3787.4651,-1002.8569,25.4665))
  224. {
  225. if(IsPlanted == 1)
  226. {
  227. SendClientMessage(playerid, COLOR_RED, "Bomb being defused");
  228. Defusing = 1;
  229. DefuseTimer = SetTimer("Defuse",10000,false);
  230. return 1;
  231. }
  232. else return SendClientMessage(playerid, COLOR_ERROR, "(ERROR) Bomb has not been planted");
  233. }
  234. else return SendClientMessage(playerid, COLOR_ERROR, "(ERROR) You must in Generator");
  235. }
  236. else return SendClientMessage(playerid, COLOR_ERROR, "(ERROR) Only CT can defused the bomb");
  237. }
  238. return 1;
  239. }
  240.  
  241. public OnPlayerLeaveDynamicCP(playerid, checkpointid)
  242. {
  243. if(GetPlayerTeam(playerid) == TEAM_BLUE && InCS[playerid] == 1 && Defusing == 1)
  244. {
  245. KillTimer(DefuseTimer);
  246. SendClientMessage(playerid, COLOR_ERROR, "(ERROR) Defuse failed, you must in checkpoint to defuse bomb");
  247. }
  248. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement