Guest User

RaZoR COD:MW3

a guest
Nov 3rd, 2011
1,113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 177.53 KB | None | 0 0
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <cstrike>
  4. #include <fun>
  5. #include <fakemeta>
  6. #include <engine>
  7. #include <hamsandwich>
  8. #include <nvault>
  9. #include <colorchat>
  10. #include <fakemeta_util>
  11.  
  12. #define PLUGIN "Call of Duty: MW Mod"
  13. #define VERSION "0.7.9 Beta"
  14. #define AUTHOR "QTM_Peyote"
  15.  
  16. #define STANDARDOWA_SZYBKOSC 250.0
  17. #define STANDARDTIMESTEPSOUND 400
  18.  
  19. new bool:bSilent[33]
  20. new Odliczanie[33]
  21. new itemo[33]
  22. native cod_add_wskrzes(id, ile)
  23.  
  24. #define ZADANIE_POKAZ_INFORMACJE 672
  25. #define ZADANIE_WSKRZES 704
  26. #define ZADANIE_WYSZKOLENIE_SANITARNE 736
  27. #define ZADANIE_POKAZ_REKLAME 768
  28. #define ZADANIE_USTAW_SZYBKOSC 832
  29. #define ZADANIE_ODBIJAJ -96
  30. #define MAX_PLAYERS 32
  31.  
  32. #define TASKID_REVIVE 1337
  33. #define TASKID_RESPAWN 1338
  34. #define TASKID_CHECKRE 1339
  35. #define TASKID_CHECKST 13310
  36. #define TASKID_ORIGIN 13311
  37. #define TASKID_SETUSER 13312
  38.  
  39. #define pev_zorigin pev_fuser4
  40. #define seconds(%1) ((1<<12) * (%1))
  41. #define Keysrod (1<<0)|(1<<1)|(1<<9) // Keys: 1234567890
  42.  
  43. new SyncHudObj
  44. new SyncHudObj2
  45. new SyncHudObj3
  46. new g_msg_screenfade
  47.  
  48. new sprite_white
  49. new sprite_blast
  50.  
  51. new g_vault
  52.  
  53. new podkladajacy
  54. new rozbrajajacy
  55.  
  56. new doswiadczenia_za_zabojstwo
  57. new doswiadczenie_za_bombe
  58. new doswiadczenie_za_wygrana
  59. new doswiadczenie_za_hs
  60. new oddaj_id[33]
  61. new bool:dostal_przedmiot[33]
  62.  
  63. new Ubrania_CT[4][]={"sas","gsg9","urban","gign"}
  64. new Ubrania_Terro[4][]={"arctic","leet","guerilla","terror"}
  65.  
  66. new const maxAmmo[31]={0,52,0,90,1,32,1,100,90,1,120,100,100,90,90,90,100,120,30,120,200,32,90,120,90,2,35,90,90,0,100};
  67. new const maxClip[31] = { -1, 13, -1, 10, 1, 7, 1, 30, 30, 1, 30, 20, 25, 30, 35, 25, 12, 20,
  68. 10, 30, 100, 8, 30, 30, 20, 2, 7, 30, 30, -1, 50 };
  69.  
  70. new g_msgHostageAdd, g_msgHostageDel;
  71.  
  72. new pozostale_elektromagnesy[33];
  73.  
  74. new pcvar_ilosc_elektromagnesow, pcvar_zasieg, pcvar_czas_dzialania, pcvar_widocznosc_fali;
  75.  
  76. new informacje_przedmiotu_gracza[33][2];
  77. new const nazwy_przedmiotow[][] = {"Nema",
  78. "Napad Cizme", //1
  79. "Dvostruki Prsluk", //2
  80. "Robusna Vest", //3
  81. "Veteran sa Nozem", //4
  82. "Iznenadjenje Enemi", //5
  83. "Manto Partizana", //6
  84. "Morfijum", //7
  85. "Noz Komandosa", //8
  86. "Prirucnik Spijuna", //9
  87. "Misterija Generala", //10
  88. "Nindza Beleske", //11
  89. "Misterija Vojske", //12
  90. "AWP Snajper", //13
  91. "Adrenalin", //14
  92. "Misterija Ramba", //15
  93. "Obuka Voda", //16
  94. "NASA Prsluk", //17
  95. "Obuceni Veteran", //18
  96. "Komplet Za Prvu Pomoc", //19
  97. "Eliminator", //20
  98. "Titanijum Municija", //21
  99. "Municija Pukovnika", //22
  100. "Zaustavi da se siri", //23
  101. "SWAT Stit", //24
  102. "Obuceni Regrut", //25
  103. "Nomekov Oklop", //26
  104. "Beleske Kapetana", //27
  105. "Jet Modul", //28
  106. "Stil Jeremejskog Ratnika", //29
  107. "Misterija Komandosa", //30
  108. "Misterija Gieki", //31
  109. "Oprema Generala", //32
  110. "San Komandosa", //33
  111. "Deagle Master", //34
  112. "Sacmara Pro", //35
  113. "Telo Duxa" , //36
  114. "MC DONALD", //37
  115. "Set Lekara", //38
  116. "Eulia", //39
  117. "Zver", //40
  118. "Monari", //41
  119. "Rucak Generala", //42
  120. "Privatni Kondon", //43
  121. "Azijski Zraci", //44
  122. "Lik Jabola", //45
  123. "Oklop Samuraja", //46
  124. "Unik Gorusia", //47
  125. "Madjionicar", //48
  126. "Kletva Bandita", //49
  127. "Piwo Generala", //50
  128. "Poomoc Cevi", //51
  129. "Gordon Odbrana", //52
  130. "Snajper Komplet", //53
  131. "Misterija", //54
  132. "Trava", //55
  133. "Stil Ratnika", //56
  134. "Partizanski Bron", //57
  135. "Zajebi Samuraja", //58
  136. "Pro Vestina", //59
  137. "M4 Swatu", //60
  138. "Minolovac", //61
  139. "Galil Terorizma", //62
  140. "Vodic Snajpera", //63
  141. "Ranac Lopova", //64
  142. "Nevbia Haos", //65
  143. "Stomak Doknes", //66
  144. "Set Stuntera", //67
  145. "Kasike MakGajvera", //68
  146. "Aimerka Stunterra", // 69
  147. "Slepilo Stunterra", //70
  148. "HP BOOSTER", //71
  149. "SUPER AMMO", //72
  150. "Sisati Zivot", //73
  151. "Razbrojac", //74
  152. "Rusitelj", //75
  153. "Teleport", //76
  154. "Okretan", // 77
  155. "Misterija Nindze", //78
  156. "Misterija Stuntera", //79
  157. "Set Stunter Gume", // 80
  158. "Marfi Misterija", //81
  159. "Misterija Izgubljeni", //82
  160. "Lastis Guma", //83
  161. "Lazan C4",//84
  162. "Vojni Elektromagnet", //85
  163. "Radar Telegrafista", //86
  164. "Teski Oklop", //87
  165. "Osveta", //88
  166. "Curug-cs.com", //89
  167. "Jumper" //90
  168. };
  169.  
  170. new const opisy_przedmiotow[][] = {"Ubij nekoga da dobijes predmet",
  171. "Necujno Trcanje", //1
  172. "Smanjuje Ostecenja Igracu LW", //2
  173. "Smanjuje Ostecenja Igracu LW", //3
  174. "Zadaje Vecu Povredu Nozem", //4
  175. "Kada Pogodite Nekoga Od Pozadi Povrede Su 2 Puta Vece", //5
  176. "Imate premije slepa", //6
  177. "1/LW Sanse za ponovno ozivljavanje", //7
  178. "Instant Kill nozem", //8
  179. "Imate 1/LW sanse da odmah ubijete sa HE. Takodje imate odecu neprijatelja", //9
  180. "Neposredno ubijanje granatem HE. Nanese LW dodatnu odstetu", //10
  181. "Mozete skociti dupli skok u vazduh", //11
  182. "Vase povrede su smanjene za 5 .Imate mogucnosti za zaslepite neprijatelja", //12
  183. "Instant Kill sa AWP", //13
  184. "Za svako ubistvo dobijate 50 zivota", //14
  185. "Za svako ubistvo dobijate pun magazin i +20 hp", //15
  186. "Dobijate 10 HP na svaki 5 sekundi", //16
  187. "Imate 500 Oklopa", //17
  188. "Dobijate na svakoj rundi +100 HP al kretanj sporije", //18
  189. "Koristite ga da se izleci na maksimalni broj HP", //19
  190. "Nemate serenje oruzja (nisana)", //20
  191. "Nanosite vise stete 10", //21
  192. "Nanosite vise stete 20", //22
  193. "Vasa disperzija je manja", //23
  194. "Ne radi na vas nijedan predmet", //24
  195. "Dobijate +50 HP na svakoj rundi,ali ste sporiji", //25
  196. "Imate 1/LW sanse na oporavak oklopa", //26
  197. "Vi ste otporni na 3 metka na svakoj rundi", //27
  198. "Pritisnite CTRL i SPACE da koristite ovaj modul na 4 sekunde", //28
  199. "Vi ste brzi 20, i smanjene odstete od 10,do +50 hp", //29
  200. "Dobijate +100hp, +20 do ostecenja,i tvoja oprema je samnjena za 30", //30
  201. "+25 dmg, kameleon, 1/LW od HE", //31
  202. "Dobijate AWP i AK za pocetak, tixu opremu za kretanje 1/1 za AWP", //32
  203. "Svake Runde Dobijate M4A1", //33
  204. "1/LW Ubistvo sa deagle", //34
  205. "1/LW da ubijete sa Shotguna", //35
  206. "Postavlja zeleni sloj debljine od 30 i nanosi vise stete od 9", //36
  207. "Dobijate svake runde +100hp",//37
  208. "Imate 5 Kompleta", //38
  209. "Skok Iznad", //39
  210. "Ide brze exp", //40
  211. "Ono sto 5 sekundi regenerise 15hp", //41
  212. "Dobijate +100 HP, tiho trcanje oduzima vise stete od 8", //42
  213. "Smanjuje ostecenja,uzima za 10,da trci brze, +10 dmg", //43
  214. "Imate auto bunny hop + 70hp", //44
  215. "Ovaj predmet mozete koristiti jednom u rundi,regenerise u potpunosti HP", //45
  216. "500 panzira, 1/LW sanse na odraz metka", //46
  217. "20% za izbegavanj rakete", //47
  218. "Kada cucnete postanete nevidljivi", //48
  219. "10 sekundi mozete prolaziti kroz zidove.", //49
  220. "+10 dmg, tixo trcanje, szybszy biego o 50 jednostek +100 hp", //50
  221. "+5 dmg i da smanji stenu na 7 dmg", //51
  222. "Besmrtan 5 sekundi", //52
  223. "1/1 Awp , 1/2 DGL", //53
  224. "JESTES PRO !!!", //54
  225. "Kameleon i 1/LW sa scouta", //55
  226. "Slobodno m4a1 + 1/LW sa njim", //56
  227. "Slobodno Ak + 1/LW sa njim", //57
  228. "+20 dmg, tixo radi", //58
  229. "+15 dgm, tixi koraci, 1/3 za HE", //59
  230. "Imate 1/LW sa m4 +oruzje", //60
  231. "Dobijate 5 minuta", //61
  232. "Dobijate galila + 1/LW sa njim", //62
  233. "Imate ZOOM na sva oruzja", //63
  234. "Vi ste bogati", //64
  235. "Vi ste imuni na HeadShot", //65
  236. "Moze da ubije samo HeadShot", //66
  237. "1/2 z Usp, kameleon i 1/5 sa mp5", //67
  238. "Beskrajna municija", //68
  239. "1/10 od headshota sa AWP", //69
  240. "Imate vece sirenj oruzja +100 HP povrede su smanjene za 10", //70
  241. "Dobijate dodatnih 100 HP na pocetku svake runde +25 hp za svako ubistvo", //71
  242. "Za svako ubistvo dobijate pun magazin", //72
  243. "Ako udaris nekoga krades mu HP i sebi dajes", //73
  244. "Ako pitate nekoga pomaze 40 ostecenja i pada svoje oruzje", //74
  245. "Za 10 sekundi mozete da setate kroz zidove", //75
  246. "Mozete se teleportovati na neko drugo mesot", //76
  247. "Instant preopterecenje", //77
  248. "Smanjena Gravitacija i manja vidljivost za noz", //78
  249. "+15 dmg + 10 jedinica,brzina,3 mine",//79
  250. "+ LW hp dobijate M3 i 1\5 ", //80
  251. "-(minus) 10 primljenih dmg, +20dmg i +25hp za ubistvo", //81
  252. "25 HP ukupno su nevidljivi 1/1 sa noza", //82
  253. "Vidljivost smanjena na 15,90 HP 1/1 sanse povrede su smanjene za 5", //83
  254. "Mozete postaviti bomby a zatim lazno detonira",//84
  255. "Svaki krug mozete postaviti elektro magnet.Delovanje zavisi od inteligencije", //85
  256. "Vi vidite neprijatelja na radaru", //86
  257. "Koristite je za 3 sekunde da povrati povrede", //87
  258. "Dobijate cim pocne 50% vise HP kao sto ubije nekoga bez HS gubi svoj zivot", //88
  259. "Twoja-Siec.pl item na 1 runde pozniej sie wyrzuca sam ma 180% szybkosci + niewidzialnosc 1hp i noz z 10 granatami HE oraz przenikanie przez sciany przez 15 sec", //89
  260. "Mozete zaustaviti vreme na 3 sekunde.Predmet za jednu upotrebu" //90
  261. };
  262.  
  263. new zatrzymaj_czas;
  264.  
  265. new nazwa_gracza[33][64];
  266. new klasa_gracza[33];
  267. new poziom_gracza[33] = 1;
  268. new doswiadczenie_gracza[33];
  269.  
  270. new nowa_klasa_gracza[33];
  271.  
  272. new const doswiadczenie_poziomu[] = {
  273. 0,7,28,63,112,175,252,343,448,567,700,847,1008,1183,1372,1575,1792,2023,2268,2527,
  274. 2800,3087,3388,3703,4032,4375,4732,5103,5488,5887,6300,6727,7168,7623,8092,8575,9072,9583,10108,10647,
  275. 11200,11767,12348,12943,13552,14175,14812,15463,16128,16807,17500,18207,18928,19663,20412,21175,21952,22743,23548,24367,
  276. 25200,26047,26908,27783,28672,29575,30492,31423,32368,33327,34300,35287,36288,37303,38332,39375,40432,41503,42588,43687,
  277. 44800,45927,47068,48223,49392,50575,51772,52983,54208,55447,56700,57967,59248,60543,61852,63175,64512,65863,67228,68607,
  278. 70000,71407,72828,74263,75712,77175,78652,80143,81648,83167,84700,86247,87808,89383,90972,92575,94192,95823,97468,99127,
  279. 100800,102487,104188,105903,107632,109375,111132,112903,114688,116487,118300,120127,121968,123823,125692,127575,129472,131383,133308,135247,
  280. 137200,139167,141148,143143,145152,147175,149212,151263,153328,155407,157500,159607,161728,163863,166012,168175,170352,172543,174748,176967,
  281. 179200,181447,183708,185983,188272,190575,192892,195223,197568,199927,202300,204687,207088,209503,211932,214375,216832,219303,221788,224287,
  282. 226800,229327,231868,234423,236992,239575,242172,244783,247408,250047,252700,255367,258048,260743,263452,266175,268912,271663,274428,277207,
  283. 280000,282807,285628,288463,291312,294175,297052,299943,302848,305767,308700,311647,314608,317583,320572,323575,326592,329623,332668,335727,
  284. 338800,341887,344988,348103,351232,354375,357532,360703,363888,367087,370300,373527,376768,380023,383292,386575,389872,393183,396508,399847,
  285. 403200,406567,409948,413343,416752,420175,423612,427063,430528,434007,437500,441007,444528,448063,451612,455175,458752,462343,465948,469567,
  286. 473200,476847,480508,484183,487872,491575,495292,499023,502768,506527,510300,514087,517888,521703,525532,529375,533232,537103,540988,544887,
  287. 548800,552727,556668,560623,564592,568575,572572,576583,580608,584647,588700,592767,596848,600943,605052,609175,613312,617463,621628,625807,
  288. 630000,634207,638428,642663,646912,651175,655452,659743,664048,668367,672700,677047,681408,685783,690172,694575,698992,703423,707868,712327,
  289. 716800,721287,725788,730303,734832,739375,743932,748503,753088,757687,762300,766927,771568,776223,780892,785575,790272,794983,799708,804447,
  290. 809200,813967,818748,823543,828352,833175,838012,842863,847728,852607,857500,862407,867328,872263,877212,882175,887152,892143,897148,902167,
  291. 907200,912247,917308,922383,927472,932575,937692,942823,947968,953127,958300,963487,968688,973903,979132,984375,989632,994903,1000188,1005487,
  292. 1010800,1016127,1021468,1026823,1032192,1037575,1042972,1048383,1053808,1059247,1064700,1070167,1075648,1081143,1086652,1092175,1097712,1103263,1108828,1114407,
  293. 1120000,1125607,1131228,1136863,1142512,1148175,1153852,1159543,1165248,1170967,1176700,1182447,1188208,1193983,1199772,1205575,1211392,1217223,1223068,1228927,
  294. 1234800,1240687,1246588,1252503,1258432,1264375,1270332,1276303,1282288,1288287,1294300,1300327,1306368,1312423,1318492,1324575,1330672,1336783,1342908,1349047,
  295. 1355200,1361367,1367548,1373743,1379952,1386175,1392412,1398663,1404928,1411207,1417500,1423807,1430128,1436463,1442812,1449175,1455552,1461943,1468348,1474767,
  296. 1481200,1487647,1494108,1500583,1507072,1513575,1520092,1526623,1533168,1539727,1546300,1552887,1559488,1566103,1572732,1579375,1586032,1592703,1599388,1606087,
  297. 1612800,1619527,1626268,1633023,1639792,1646575,1653372,1660183,1667008,1673847,1680700,1687567,1694448,1701343,1708252,1715175,1722112,1729063,1736028,1743007,
  298. 1750000,1757007,1764028,1771063,1778112,1785175,1792252,1799343,1806448,1813567,1820700,1827847,1835008,1842183,1849372,1856575,1863792,1871023,1878268,1885527,
  299. 1892800,1900087,1907388,1914703,1922032,1929375,1936732,1944103,1951488,1958887,1966300,1973727,1981168,1988623,1996092,2003575,2011072,2018583,2026108,2033647,
  300. 2041200,2048767,2056348,2063943,2071552,2079175,2086812,2094463,2102128,2109807,2117500,2125207,2132928,2140663,2148412,2156175,2163952,2171743,2179548,2187367,
  301. 2195200,2203047,2210908,2218783,2226672,2234575,2242492,2250423,2258368,2266327,2274300,2282287,2290288,2298303,2306332,2314375,2322432,2330503,2338588,2346687,
  302. 2354800,2362927,2371068,2379223,2387392,2395575,2403772,2411983,2420208,2428447,2436700,2444967,2453248,2461543,2469852,2478175,2486512,2494863,2503228,2511607,
  303. 2520000,2528407,2536828,2545263,2553712,2562175,2570652,2579143,2587648,2596167,2604700,2613247,2621808,2630383,2638972,2647575,2656192,2664823,2673468,2682127,
  304. 2690800,2699487,2708188,2716903,2725632,2734375,2743132,2751903,2760688,2769487,2778300,2787127,2795968,2804823,2813692,2822575,2831472,2840383,2849308,2858247,
  305. 2867200,2876167,2885148,2894143,2903152,2912175,2921212,2930263,2939328,2948407,2957500,2966607,2975728,2984863,2994012,3003175,3012352,3021543,3030748,3039967,
  306. 3049200,3058447,3067708,3076983,3086272,3095575,3104892,3114223,3123568,3132927,3142300,3151687,3161088,3170503,3179932,3189375,3198832,3208303,3217788,3227287,
  307. 3236800,3246327,3255868,3265423,3274992,3284575,3294172,3303783,3313408,3323047,3332700,3342367,3352048,3361743,3371452,3381175,3390912,3400663,3410428,3420207,
  308. 3430000,3439807,3449628,3459463,3469312,3479175,3489052,3498943,3508848,3518767,3528700,3538647,3548608,3558583,3568572,3578575,3588592,3598623,3608668,3618727,
  309. 3628800,3638887,3648988,3659103,3669232,3679375,3689532,3699703,3709888,3720087,3730300,3740527,3750768,3761023,3771292,3781575,3791872,3802183,3812508,3822847,
  310. 3833200,3843567,3853948,3864343,3874752,3885175,3895612,3906063,3916528,3927007,3937500,3948007,3958528,3969063,3979612,3990175,4000752,4011343,4021948,4032567,
  311. 4043200,4053847,4064508,4075183,4085872,4096575,4107292,4118023,4128768,4139527,4150300,4161087,4171888,4182703,4193532,4204375,4215232,4226103,4236988,4247887,
  312. 4258800,4269727,4280668,4291623,4302592,4313575,4324572,4335583,4346608,4357647,4368700,4379767,4390848,4401943,4413052,4424175,4435312,4446463,4457628,4468807,
  313. 4480000,4491207,4502428,4513663,4524912,4536175,4547452,4558743,4570048,4581367,4592700,4604047,4615408,4626783,4638172,4649575,4660992,4672423,4683868,4695327,
  314. 4706800,4718287,4729788,4741303,4752832,4764375,4775932,4787503,4799088,4810687,4822300,4833927,4845568,4857223,4868892,4880575,4892272,4903983,4915708,4927447,
  315. 4939200,4950967,4962748,4974543,4986352,4998175,5010012,5021863,5033728,5045607,5057500,5069407,5081328,5093263,5105212,5117175,5129152,5141143,5153148,5165167,
  316. 5177200,5189247,5201308,5213383,5225472,5237575,5249692,5261823,5273968,5286127,5298300,5310487,5322688,5334903,5347132,5359375,5371632,5383903,5396188,5408487,
  317. 5420800,5433127,5445468,5457823,5470192,5482575,5494972,5507383,5519808,5532247,5544700,5557167,5569648,5582143,5594652,5607175,5619712,5632263,5644828,5657407,
  318. 5670000,5682607,5695228,5707863,5720512,5733175,5745852,5758543,5771248,5783967,5796700,5809447,5822208,5834983,5847772,5860575,5873392,5886223,5899068,5911927,
  319. 5924800,5937687,5950588,5963503,5976432,5989375,6002332,6015303,6028288,6041287,6054300,6067327,6080368,6093423,6106492,6119575,6132672,6145783,6158908,6172047,
  320. 6185200,6198367,6211548,6224743,6237952,6251175,6264412,6277663,6290928,6304207,6317500,6330807,6344128,6357463,6370812,6384175,6397552,6410943,6424348,6437767,
  321. 6451200,6464647,6478108,6491583,6505072,6518575,6532092,6545623,6559168,6572727,6586300,6599887,6613488,6627103,6640732,6654375,6668032,6681703,6695388,6709087,
  322. 6722800,6736527,6750268,6764023,6777792,6791575,6805372,6819183,6833008,6846847,6860700,6874567,6888448,6902343,6916252,6930175,6944112,6958063,6972028,6986007,
  323. 7000000,7014007,7028028,7042063,7056112,7070175,7084252,7098343,7112448,7126567,7140700,7154847,7169008,7183183,7197372,7211575,7225792,7240023,7254268,7268527,
  324. 7282800,7297087,7311388,7325703,7340032,7354375,7368732,7383103,7397488,7411887,7426300,7440727,7455168,7469623,7484092,7498575,7513072,7527583,7542108,7556647,
  325. 7571200,7585767,7600348,7614943,7629552,7644175,7658812,7673463,7688128,7702807,7717500,7732207,7746928,7761663,7776412,7791175,7805952,7820743,7835548,7850367,
  326. 7865200,7880047,7894908,7909783,7924672,7939575,7954492,7969423,7984368,7999327,8014300,8029287,8044288,8059303,8074332,8089375,8104432,8119503,8134588,8149687,
  327. 8164800,8179927,8195068,8210223,8225392,8240575,8255772,8270983,8286208,8301447,8316700,8331967,8347248,8362543,8377852,8393175,8408512,8423863,8439228,8454607,
  328. 8470000,8485407,8500828,8516263,8531712,8547175,8562652,8578143,8593648,8609167,8624700,8640247,8655808,8671383,8686972,8702575,8718192,8733823,8749468,8765127,
  329. 8780800,8796487,8812188,8827903,8843632,8859375,8875132,8890903,8906688,8922487,8938300,8954127,8969968,8985823,9001692,9017575,9033472,9049383,9065308,9081247,
  330. 9097200,9113167,9129148,9145143,9161152,9177175,9193212,9209263,9225328,9241407,9257500,9273607,9289728,9305863,9322012,9338175,9354352,9370543,9386748,9402967,
  331. 9419200,9435447,9451708,9467983,9484272,9500575,9516892,9533223,9549568,9565927,9582300,9598687,9615088,9631503,9647932,9664375,9680832,9697303,9713788,9730287,
  332. 9746800,9763327,9779868,9796423,9812992,9829575,9846172,9862783,9879408,9896047,9912700,9929367,9946048,9962743,9979452,9996175,10012912,10029663,10046428,10063207,
  333. 10080000,10096807,10113628,10130463,10147312,10164175,10181052,10197943,10214848,10231767,10248700,10265647,10282608,10299583,10316572,10333575,10350592,10367623,10384668,10401727,
  334. 10418800,10435887,10452988,10470103,10487232,10504375,10521532,10538703,10555888,10573087,10590300,10607527,10624768,10642023,10659292,10676575,10693872,10711183,10728508,10745847,
  335. 10763200,10780567,10797948,10815343,10832752,10850175,10867612,10885063,10902528,10920007,10937500,10955007,10972528,10990063,11007612,11025175,11042752,11060343,11077948,11095567,
  336. 11113200,11130847,11148508,11166183,11183872,11201575,11219292,11237023,11254768,11272527,11290300,11308087,11325888,11343703,11361532,11379375,11397232,11415103,11432988,11450887,
  337. 11468800,11486727,11504668,11522623,11540592,11558575,11576572,11594583,11612608,11630647,11648700,11666767,11684848,11702943,11721052,11739175,11757312,11775463,11793628,11811807,
  338. 11830000,11848207,11866428,11884663,11902912,11921175,11939452,11957743,11976048,11994367,12012700,12031047,12049408,12067783,12086172,12104575,12122992,12141423,12159868,12178327,
  339. 12196800,12215287,12233788,12252303,12270832,12289375,12307932,12326503,12345088,12363687,12382300,12400927,12419568,12438223,12456892,12475575,12494272,12512983,12531708,12550447,
  340. 12569200,12587967,12606748,12625543,12644352,12663175,12682012,12700863,12719728,12738607,12757500,12776407,12795328,12814263,12833212,12852175,12871152,12890143,12909148,12928167,
  341. 12947200,12966247,12985308,13004383,13023472,13042575,13061692,13080823,13099968,13119127,13138300,13157487,13176688,13195903,13215132,13234375,13253632,13272903,13292188,13311487,
  342. 13330800,13350127,13369468,13388823,13408192,13427575,13446972,13466383,13485808,13505247,13524700,13544167,13563648,13583143,13602652,13622175,13641712,13661263,13680828,13700407,
  343. 13720000,13739607,13759228,13778863,13798512,13818175,13837852,13857543,13877248,13896967,13916700,13936447,13956208,13975983,13995772,14015575,14035392,14055223,14075068,14094927,
  344. 14114800,14134687,14154588,14174503,14194432,14214375,14234332,14254303,14274288,14294287,14314300,14334327,14354368,14374423,14394492,14414575,14434672,14454783,14474908,14495047,
  345. 14515200,14535367,14555548,14575743,14595952,14616175,14636412,14656663,14676928,14697207,14717500,14737807,14758128,14778463,14798812,14819175,14839552,14859943,14880348,14900767,
  346. 14921200,14941647,14962108,14982583,15003072,15023575,15044092,15064623,15085168,15105727,15126300,15146887,15167488,15188103,15208732,15229375,15250032,15270703,15291388,15312087,
  347. 15332800,15353527,15374268,15395023,15415792,15436575,15457372,15478183,15499008,15519847,15540700,15561567,15582448,15603343,15624252,15645175,15666112,15687063,15708028,15729007,
  348. 15750000,15771007,15792028,15813063,15834112,15855175,15876252,15897343,15918448,15939567,15960700,15981847,16003008,16024183,16045372,16066575,16087792,16109023,16130268,16151527,
  349. 16172800,16194087,16215388,16236703,16258032,16279375,16300732,16322103,16343488,16364887,16386300,16407727,16429168,16450623,16472092,16493575,16515072,16536583,16558108,16579647,
  350. 16601200,16622767,16644348,16665943,16687552,16709175,16730812,16752463,16774128,16795807,16817500,16839207,16860928,16882663,16904412,16926175,16947952,16969743,16991548,17013367,
  351. 17035200,17057047,17078908,17100783,17122672,17144575,17166492,17188423,17210368,17232327,17254300,17276287,17298288,17320303,17342332,17364375,17386432,17408503,17430588,17452687,
  352. 17474800,17496927,17519068,17541223,17563392,17585575,17607772,17629983,17652208,17674447,17696700,17718967,17741248,17763543,17785852,17808175,17830512,17852863,17875228,17897607,
  353. 17920000,17942407,17964828,17987263,18009712,18032175,18054652,18077143,18099648,18122167,18144700,18167247,18189808,18212383,18234972,18257575,18280192,18302823,18325468,18348127,
  354. 18370800,18393487,18416188,18438903,18461632,18484375,18507132,18529903,18552688,18575487,18598300,18621127,18643968,18666823,18689692,18712575,18735472,18758383,18781308,18804247,
  355. 18827200,18850167,18873148,18896143,18919152,18942175,18965212,18988263,19011328,19034407,19057500,19080607,19103728,19126863,19150012,19173175,19196352,19219543,19242748,19265967,
  356. 19289200,19312447,19335708,19358983,19382272,19405575,19428892,19452223,19475568,19498927,19522300,19545687,19569088,19592503,19615932,19639375,19662832,19686303,19709788,19733287,
  357. 19756800,19780327,19803868,19827423,19850992,19874575,19898172,19921783,19945408,19969047,19992700,20016367,20040048,20063743,20087452,20111175,20134912,20158663,20182428,20206207,
  358. 20230000,20253807,20277628,20301463,20325312,20349175,20373052,20396943,20420848,20444767,20468700,20492647,20516608,20540583,20564572,20588575,20612592,20636623,20660668,20684727,
  359. 20708800,20732887,20756988,20781103,20805232,20829375,20853532,20877703,20901888,20926087,20950300,20974527,20998768,21023023,21047292,21071575,21095872,21120183,21144508,21168847,
  360. 21193200,21217567,21241948,21266343,21290752,21315175,21339612,21364063,21388528,21413007,21437500,21462007,21486528,21511063,21535612,21560175,21584752,21609343,21633948,21658567,
  361. 21683200,21707847,21732508,21757183,21781872,21806575,21831292,21856023,21880768,21905527,21930300,21955087,21979888,22004703,22029532,22054375,22079232,22104103,22128988,22153887,
  362. 22178800,22203727,22228668,22253623,22278592,22303575,22328572,22353583,22378608,22403647,22428700,22453767,22478848,22503943,22529052,22554175,22579312,22604463,22629628,22654807,
  363. 22680000,22705207,22730428,22755663,22780912,22806175,22831452,22856743,22882048,22907367,22932700,22958047,22983408,23008783,23034172,23059575,23084992,23110423,23135868,23161327,
  364. 23186800,23212287,23237788,23263303,23288832,23314375,23339932,23365503,23391088,23416687,23442300,23467927,23493568,23519223,23544892,23570575,23596272,23621983,23647708,23673447,
  365. 23699200,23724967,23750748,23776543,23802352,23828175,23854012,23879863,23905728,23931607,23957500,23983407,24009328,24035263,24061212,24087175,24113152,24139143,24165148,24191167,
  366. 24217200,24243247,24269308,24295383,24321472,24347575,24373692,24399823,24425968,24452127,24478300,24504487,24530688,24556903,24583132,24609375,24635632,24661903,24688188,24714487,
  367. 24740800,24767127,24793468,24819823,24846192,24872575,24898972,24925383,24951808,24978247,25004700,25031167,25057648,25084143,25110652,25137175,25163712,25190263,25216828,25243407,
  368. 25270000,25296607,25323228,25349863,25376512,25403175,25429852,25456543,25483248,25509967,25536700,25563447,25590208,25616983,25643772,25670575,25697392,25724223,25751068,25777927,
  369. 25804800,25831687,25858588,25885503,25912432,25939375,25966332,25993303,26020288,26047287,26074300,26101327,26128368,26155423,26182492,26209575,26236672,26263783,26290908,26318047,
  370. 26345200,26372367,26399548,26426743,26453952,26481175,26508412,26535663,26562928,26590207,26617500,26644807,26672128,26699463,26726812,26754175,26781552,26808943,26836348,26863767,
  371. 26891200,26918647,26946108,26973583,27001072,27028575,27056092,27083623,27111168,27138727,27166300,27193887,27221488,27249103,27276732,27304375,27332032,27359703,27387388,27415087,
  372. 27442800,27470527,27498268,27526023,27553792,27581575,27609372,27637183,27665008,27692847,27720700,27748567,27776448,27804343,27832252,27860175,27888112,27916063,27944028,27972007,
  373. 28000000,28028007,28056028,28084063,28112112,28140175,28168252,28196343,28224448,28252567,28280700,28308847,28337008,28365183,28393372,28421575,28449792,28478023,28506268,28534527,
  374. 28562800,28591087,28619388,28647703,28676032,28704375,28732732,28761103,28789488,28817887,28846300,28874727,28903168,28931623,28960092,28988575,29017072,29045583,29074108,29102647,
  375. 29131200,29159767,29188348,29216943,29245552,29274175,29302812,29331463,29360128,29388807,29417500,29446207,29474928,29503663,29532412,29561175,29589952,29618743,29647548,29676367,
  376. 29705200,29734047,29762908,29791783,29820672,29849575,29878492,29907423,29936368,29965327,29994300,30023287,30052288,30081303,30110332,30139375,30168432,30197503,30226588,30255687,
  377. 30284800,30313927,30343068,30372223,30401392,30430575,30459772,30488983,30518208,30547447,30576700,30605967,30635248,30664543,30693852,30723175,30752512,30781863,30811228,30840607,
  378. 30870000,30899407,30928828,30958263,30987712,31017175,31046652,31076143,31105648,31135167,31164700,31194247,31223808,31253383,31282972,31312575,31342192,31371823,31401468,31431127,
  379. 31460800,31490487,31520188,31549903,31579632,31609375,31639132,31668903,31698688,31728487,31758300,31788127,31817968,31847823,31877692,31907575,31937472,31967383,31997308,32027247,
  380. 32057200,32087167,32117148,32147143,32177152,32207175,32237212,32267263,32297328,32327407,32357500,32387607,32417728,32447863,32478012,32508175,32538352,32568543,32598748,32628967,
  381. 32659200,32689447,32719708,32749983,32780272,32810575,32840892,32871223,32901568,32931927,32962300,32992687,33023088,33053503,33083932,33114375,33144832,33175303,33205788,33236287,
  382. 33266800,33297327,33327868,33358423,33388992,33419575,33450172,33480783,33511408,33542047,33572700,33603367,33634048,33664743,33695452,33726175,33756912,33787663,33818428,33849207,
  383. 33880000,33910807,33941628,33972463,34003312,34034175,34065052,34095943,34126848,34157767,34188700,34219647,34250608,34281583,34312572,34343575,34374592,34405623,34436668,34467727,
  384. 34498800,34529887,34560988,34592103,34623232,34654375,34685532,34716703,34747888,34779087,34810300,34841527,34872768,34904023,34935292,34966575,34997872,35029183,35060508,35091847,
  385. 35123200,35154567,35185948,35217343,35248752,35280175,35311612,35343063,35374528,35406007,35437500,35469007,35500528,35532063,35563612,35595175,35626752,35658343,35689948,35721567,
  386. 35753200,35784847,35816508,35848183,35879872,35911575,35943292,35975023,36006768,36038527,36070300,36102087,36133888,36165703,36197532,36229375,36261232,36293103,36324988,36356887,
  387. 36388800,36420727,36452668,36484623,36516592,36548575,36580572,36612583,36644608,36676647,36708700,36740767,36772848,36804943,36837052,36869175,36901312,36933463,36965628,36997807,
  388. 37030000,37062207,37094428,37126663,37158912,37191175,37223452,37255743,37288048,37320367,37352700,37385047,37417408,37449783,37482172,37514575,37546992,37579423,37611868,37644327,
  389. 37676800,37709287,37741788,37774303,37806832,37839375,37871932,37904503,37937088,37969687,38002300,38034927,38067568,38100223,38132892,38165575,38198272,38230983,38263708,38296447,
  390. 38329200,38361967,38394748,38427543,38460352,38493175,38526012,38558863,38591728,38624607,38657500,38690407,38723328,38756263,38789212,38822175,38855152,38888143,38921148,38954167,
  391. 38987200,39020247,39053308,39086383,39119472,39152575,39185692,39218823,39251968,39285127,39318300,39351487,39384688,39417903,39451132,39484375,39517632,39550903,39584188,39617487,
  392. 39650800,39684127,39717468,39750823,39784192,39817575,39850972,39884383,39917808,39951247,39984700,40018167,40051648,40085143,40118652,40152175,40185712,40219263,40252828,40286407,
  393. 40320000,40353607,40387228,40420863,40454512,40488175,40521852,40555543,40589248,40622967,40656700,40690447,40724208,40757983,40791772,40825575,40859392,40893223,40927068,40960927,
  394. 40994800,41028687,41062588,41096503,41130432,41164375,41198332,41232303,41266288,41300287,41334300,41368327,41402368,41436423,41470492,41504575,41538672,41572783,41606908,41641047,
  395. 41675200,41709367,41743548,41777743,41811952,41846175,41880412,41914663,41948928,41983207,42017500,42051807,42086128,42120463,42154812,42189175,42223552,42257943,42292348,42326767,
  396. 42361200,42395647,42430108,42464583,42499072,42533575,42568092,42602623,42637168,42671727,42706300,42740887,42775488,42810103,42844732,42879375,42914032,42948703,42983388,43018087,
  397. 43052800,43087527,43122268,43157023,43191792,43226575,43261372,43296183,43331008,43365847,43400700,43435567,43470448,43505343,43540252,43575175,43610112,43645063,43680028,43715007,
  398. 43750000,43785007,43820028,43855063,43890112,43925175,43960252,43995343,44030448,44065567,44100700,44135847,44171008,44206183,44241372,44276575,44311792,44347023,44382268,44417527,
  399. 44452800,44488087,44523388,44558703,44594032,44629375,44664732,44700103,44735488,44770887,44806300,44841727,44877168,44912623,44948092,44983575,45019072,45054583,45090108,45125647,
  400. 45161200,45196767,45232348,45267943,45303552,45339175,45374812,45410463,45446128,45481807,45517500,45553207,45588928,45624663,45660412,45696175,45731952,45767743,45803548,45839367,
  401. 45875200,45911047,45946908,45982783,46018672,46054575,46090492,46126423,46162368,46198327,46234300,46270287,46306288,46342303,46378332,46414375,46450432,46486503,46522588,46558687,
  402. 46594800,46630927,46667068,46703223,46739392,46775575,46811772,46847983,46884208,46920447,46956700,46992967,47029248,47065543,47101852,47138175,47174512,47210863,47247228,47283607,
  403. 47320000,47356407,47392828,47429263,47465712,47502175,47538652,47575143,47611648,47648167,47684700,47721247,47757808,47794383,47830972,47867575,47904192,47940823,47977468,48014127,
  404. 48050800,48087487,48124188,48160903,48197632,48234375,48271132,48307903,48344688,48381487,48418300,48455127,48491968,48528823,48565692,48602575,48639472,48676383,48713308,48750247,
  405. 48787200,48824167,48861148,48898143,48935152,48972175,49009212,49046263,49083328,49120407,49157500,49194607,49231728,49268863,49306012,49343175,49380352,49417543,49454748,49491967,
  406. 49529200,49566447,49603708,49640983,49678272,49715575,49752892,49790223,49827568,49864927,49902300,49939687,49977088,50014503,50051932,50089375,50126832,50164303,50201788,50239287,
  407. 50276800,50314327,50351868,50389423,50426992,50464575,50502172,50539783,50577408,50615047,50652700,50690367,50728048,50765743,50803452,50841175,50878912,50916663,50954428,50992207,
  408. 51030000,51067807,51105628,51143463,51181312,51219175,51257052,51294943,51332848,51370767,51408700,51446647,51484608,51522583,51560572,51598575,51636592,51674623,51712668,51750727,
  409. 51788800,51826887,51864988,51903103,51941232,51979375,52017532,52055703,52093888,52132087,52170300,52208527,52246768,52285023,52323292,52361575,52399872,52438183,52476508,52514847,
  410. 52553200,52591567,52629948,52668343,52706752,52745175,52783612,52822063,52860528,52899007,52937500,52976007,53014528,53053063,53091612,53130175,53168752,53207343,53245948,53284567,
  411. 53323200,53361847,53400508,53439183,53477872,53516575,53555292,53594023,53632768,53671527,53710300,53749087,53787888,53826703,53865532,53904375,53943232,53982103,54020988,54059887,
  412. 54098800,54137727,54176668,54215623,54254592,54293575,54332572,54371583,54410608,54449647,54488700,54527767,54566848,54605943,54645052,54684175,54723312,54762463,54801628,54840807,
  413. 54880000,54919207,54958428,54997663,55036912,55076175,55115452,55154743,55194048,55233367,55272700,55312047,55351408,55390783,55430172,55469575,55508992,55548423,55587868,55627327,
  414. 55666800,55706287,55745788,55785303,55824832,55864375,55903932,55943503,55983088,56022687,56062300,56101927,56141568,56181223,56220892,56260575,56300272,56339983,56379708,56419447,
  415. 56459200,56498967,56538748,56578543,56618352,56658175,56698012,56737863,56777728,56817607,56857500,56897407,56937328,56977263,57017212,57057175,57097152,57137143,57177148,57217167,
  416. 57257200,57297247,57337308,57377383,57417472,57457575,57497692,57537823,57577968,57618127,57658300,57698487,57738688,57778903,57819132,57859375,57899632,57939903,57980188,58020487,
  417. 58060800,58101127,58141468,58181823,58222192,58262575,58302972,58343383,58383808,58424247,58464700,58505167,58545648,58586143,58626652,58667175,58707712,58748263,58788828,58829407,
  418. 58870000,58910607,58951228,58991863,59032512,59073175,59113852,59154543,59195248,59235967,59276700,59317447,59358208,59398983,59439772,59480575,59521392,59562223,59603068,59643927,
  419. 59684800,59725687,59766588,59807503,59848432,59889375,59930332,59971303,60012288,60053287,60094300,60135327,60176368,60217423,60258492,60299575,60340672,60381783,60422908,60464047,
  420. 60505200,60546367,60587548,60628743,60669952,60711175,60752412,60793663,60834928,60876207,60917500,60958807,61000128,61041463,61082812,61124175,61165552,61206943,61248348,61289767,
  421. 61331200,61372647,61414108,61455583,61497072,61538575,61580092,61621623,61663168,61704727,61746300,61787887,61829488,61871103,61912732,61954375,61996032,62037703,62079388,62121087,
  422. 62162800,62204527,62246268,62288023,62329792,62371575,62413372,62455183,62497008,62538847,62580700,62622567,62664448,62706343,62748252,62790175,62832112,62874063,62916028,62958007,
  423. 63000000,63042007,63084028,63126063,63168112,63210175,63252252,63294343,63336448,63378567,63420700,63462847,63505008,63547183,63589372,63631575,63673792,63716023,63758268,63800527,
  424. 63842800,63885087,63927388,63969703,64012032,64054375,64096732,64139103,64181488,64223887,64266300,64308727,64351168,64393623,64436092,64478575,64521072,64563583,64606108,64648647,
  425. 64691200,64733767,64776348,64818943,64861552,64904175,64946812,64989463,65032128,65074807,65117500,65160207,65202928,65245663,65288412,65331175,65373952,65416743,65459548,65502367,
  426. 65545200,65588047,65630908,65673783,65716672,65759575,65802492,65845423,65888368,65931327,65974300,66017287,66060288,66103303,66146332,66189375,66232432,66275503,66318588,66361687,
  427. 66404800,66447927,66491068,66534223,66577392,66620575,66663772,66706983,66750208,66793447,66836700,66879967,66923248,66966543,67009852,67053175,67096512,67139863,67183228,67226607,
  428. 67270000,67313407,67356828,67400263,67443712,67487175,67530652,67574143,67617648,67661167,67704700,67748247,67791808,67835383,67878972,67922575,67966192,68009823,68053468,68097127,
  429. 68140800,68184487,68228188,68271903,68315632,68359375,68403132,68446903,68490688,68534487,68578300,68622127,68665968,68709823,68753692,68797575,68841472,68885383,68929308,68973247,
  430. 69017200,69061167,69105148,69149143,69193152,69237175,69281212,69325263,69369328,69413407,69457500,69501607,69545728,69589863,69634012,69678175,69722352,69766543,69810748,69854967,
  431. 69899200,69943447,69987708,70031983,70076272,70120575,70164892,70209223,70253568,70297927,70342300,70386687,70431088,70475503,70519932,70564375,70608832,70653303,70697788,70742287,
  432. 70786800,70831327,70875868,70920423,70964992,71009575,71054172,71098783,71143408,71188047,71232700,71277367,71322048,71366743,71411452,71456175,71500912,71545663,71590428,71635207,
  433. 71680000,71724807,71769628,71814463,71859312,71904175,71949052,71993943,72038848,72083767,72128700,72173647,72218608,72263583,72308572,72353575,72398592,72443623,72488668,72533727,
  434. 72578800,72623887,72668988,72714103,72759232,72804375,72849532,72894703,72939888,72985087,73030300,73075527,73120768,73166023,73211292,73256575,73301872,73347183,73392508,73437847,
  435. 73483200,73528567,73573948,73619343,73664752,73710175,73755612,73801063,73846528,73892007,73937500,73983007,74028528,74074063,74119612,74165175,74210752,74256343,74301948,74347567,
  436. 74393200,74438847,74484508,74530183,74575872,74621575,74667292,74713023,74758768,74804527,74850300,74896087,74941888,74987703,75033532,75079375,75125232,75171103,75216988,75262887,
  437. 75308800,75354727,75400668,75446623,75492592,75538575,75584572,75630583,75676608,75722647,75768700,75814767,75860848,75906943,75953052,75999175,76045312,76091463,76137628,76183807,
  438. 76230000,76276207,76322428,76368663,76414912,76461175,76507452,76553743,76600048,76646367,76692700,76739047,76785408,76831783,76878172,76924575,76970992,77017423,77063868,77110327,
  439. 77156800,77203287,77249788,77296303,77342832,77389375,77435932,77482503,77529088,77575687,77622300,77668927,77715568,77762223,77808892,77855575,77902272,77948983,77995708,78042447,
  440. 78089200,78135967,78182748,78229543,78276352,78323175,78370012,78416863,78463728,78510607,78557500,78604407,78651328,78698263,78745212,78792175,78839152,78886143,78933148,78980167,
  441. 79027200,79074247,79121308,79168383,79215472,79262575,79309692,79356823,79403968,79451127,79498300,79545487,79592688,79639903,79687132,79734375,79781632,79828903,79876188,79923487,
  442. 79970800,80018127,80065468,80112823,80160192,80207575,80254972,80302383,80349808,80397247,80444700,80492167,80539648,80587143,80634652,80682175,80729712,80777263,80824828,80872407,
  443. 80920000,80967607,81015228,81062863,81110512,81158175,81205852,81253543,81301248,81348967,81396700,81444447,81492208,81539983,81587772,81635575,81683392,81731223,81779068,81826927,
  444. 81874800,81922687,81970588,82018503,82066432,82114375,82162332,82210303,82258288,82306287,82354300,82402327,82450368,82498423,82546492,82594575,82642672,82690783,82738908,82787047,
  445. 82835200,82883367,82931548,82979743,83027952,83076175,83124412,83172663,83220928,83269207,83317500,83365807,83414128,83462463,83510812,83559175,83607552,83655943,83704348,83752767,
  446. 83801200,83849647,83898108,83946583,83995072,84043575,84092092,84140623,84189168,84237727,84286300,84334887,84383488,84432103,84480732,84529375,84578032,84626703,84675388,84724087,
  447. 84772800,84821527,84870268,84919023,84967792,85016575,85065372,85114183,85163008,85211847,85260700,85309567,85358448,85407343,85456252,85505175,85554112,85603063,85652028,85701007,
  448. 85750000,85799007,85848028,85897063,85946112,85995175,86044252,86093343,86142448,86191567,86240700,86289847,86339008,86388183,86437372,86486575,86535792,86585023,86634268,86683527,
  449. 86732800,86782087,86831388,86880703,86930032,86979375,87028732,87078103,87127488,87176887,87226300,87275727,87325168,87374623,87424092,87473575,87523072,87572583,87622108,87671647,
  450. 87721200,87770767,87820348,87869943,87919552,87969175,88018812,88068463,88118128,88167807,88217500,88267207,88316928,88366663,88416412,88466175,88515952,88565743,88615548,88665367,
  451. 88715200,88765047,88814908,88864783,88914672,88964575,89014492,89064423,89114368,89164327,89214300,89264287,89314288,89364303,89414332,89464375,89514432,89564503,89614588,89664687,
  452. 89714800,89764927,89815068,89865223,89915392,89965575,90015772,90065983,90116208,90166447,90216700,90266967,90317248,90367543,90417852,90468175,90518512,90568863,90619228,90669607,
  453. 90720000,90770407,90820828,90871263,90921712,90972175,91022652,91073143,91123648,91174167,91224700,91275247,91325808,91376383,91426972,91477575,91528192,91578823,91629468,91680127,
  454. 91730800,91781487,91832188,91882903,91933632,91984375,92035132,92085903,92136688,92187487,92238300,92289127,92339968,92390823,92441692,92492575,92543472,92594383,92645308,92696247,
  455. 92747200,92798167,92849148,92900143,92951152,93002175,93053212,93104263,93155328,93206407,93257500,93308607,93359728,93410863,93462012,93513175,93564352,93615543,93666748,93717967,
  456. 93769200,93820447,93871708,93922983,93974272,94025575,94076892,94128223,94179568,94230927,94282300,94333687,94385088,94436503,94487932,94539375,94590832,94642303,94693788,94745287,
  457. 94796800,94848327,94899868,94951423,95002992,95054575,95106172,95157783,95209408,95261047,95312700,95364367,95416048,95467743,95519452,95571175,95622912,95674663,95726428,95778207,
  458. 95830000,95881807,95933628,95985463,96037312,96089175,96141052,96192943,96244848,96296767,96348700,96400647,96452608,96504583,96556572,96608575,96660592,96712623,96764668,96816727,
  459. 96868800,96920887,96972988,97025103,97077232,97129375,97181532,97233703,97285888,97338087,97390300,97442527,97494768,97547023,97599292,97651575,97703872,97756183,97808508,97860847,
  460. 97913200,97965567,98017948,98070343,98122752,98175175,98227612,98280063,98332528,98385007,98437500,98490007,98542528,98595063,98647612,98700175,98752752,98805343,98857948,98910567,
  461. 98963200,99015847,99068508,99121183,99173872,99226575,99279292,99332023,99384768,99437527,99490300,99543087,99595888,99648703,99701532,99754375,99807232,99860103,99912988,99965887,
  462. 100018800,100071727,100124668,100177623,100230592,100283575,100336572,100389583,100442608,100495647,100548700,100601767,100654848,100707943,100761052,100814175,100867312,100920463,100973628,101026807,
  463. 101080000,101133207,101186428,101239663,101292912,101346175,101399452,101452743,101506048,101559367,101612700,101666047,101719408,101772783,101826172,101879575,101932992,101986423,102039868,102093327,
  464. 102146800,102200287,102253788,102307303,102360832,102414375,102467932,102521503,102575088,102628687,102682300,102735927,102789568,102843223,102896892,102950575,103004272,103057983,103111708,103165447,
  465. 103219200,103272967,103326748,103380543,103434352,103488175,103542012,103595863,103649728,103703607,103757500,103811407,103865328,103919263,103973212,104027175,104081152,104135143,104189148,104243167,
  466. 104297200,104351247,104405308,104459383,104513472,104567575,104621692,104675823,104729968,104784127,104838300,104892487,104946688,105000903,105055132,105109375,105163632,105217903,105272188,105326487,
  467. 105380800,105435127,105489468,105543823,105598192,105652575,105706972,105761383,105815808,105870247,105924700,105979167,106033648,106088143,106142652,106197175,106251712,106306263,106360828,106415407,
  468. 106470000,106524607,106579228,106633863,106688512,106743175,106797852,106852543,106907248,106961967,107016700,107071447,107126208,107180983,107235772,107290575,107345392,107400223,107455068,107509927,
  469. 107564800,107619687,107674588,107729503,107784432,107839375,107894332,107949303,108004288,108059287,108114300,108169327,108224368,108279423,108334492,108389575,108444672,108499783,108554908,108610047,
  470. 108665200,108720367,108775548,108830743,108885952,108941175,108996412,109051663,109106928,109162207,109217500,109272807,109328128,109383463,109438812,109494175,109549552,109604943,109660348,109715767,
  471. 109771200,109826647,109882108,109937583,109993072,110048575,110104092,110159623,110215168,110270727,110326300,110381887,110437488,110493103,110548732,110604375,110660032,110715703,110771388,110827087,
  472. 110882800,110938527,110994268,111050023,111105792,111161575,111217372,111273183,111329008,111384847,111440700,111496567,111552448,111608343,111664252,111720175,111776112,111832063,111888028,111944007,
  473. 112000000,1073741824};
  474.  
  475. new punkty_gracza[33];
  476. new zdrowie_gracza[33];
  477. new inteligencja_gracza[33];
  478. new bool: pomocs[33];
  479. new wytrzymalosc_gracza[33];
  480. new Float:redukcja_obrazen_gracza[33];
  481. new kondycja_gracza[33];
  482. new maksymalne_zdrowie_gracza[33];
  483. new Float:szybkosc_gracza[33];
  484. new wytrzymalosc_itemu[33];
  485.  
  486. enum {
  487. NONE = 0,
  488. Snajperista,
  489. Marinac,
  490. ProStrelac,
  491. Mitraljezac,
  492. Doktor,
  493. VatrenaPodrska,
  494. Miner,
  495. Demolitions,
  496. Rusher,
  497. Rambo,
  498. Revolveras,
  499. Bombarder,
  500. Strelac,
  501. Informator,
  502. Pukovnik,
  503. Pobunjenik,
  504. SerijskiUbica,
  505. Desetar,
  506. Vodnik,
  507. Kamikaza,
  508. Assassin,
  509. Major,
  510. Kapetan,
  511. Potpukovnik,
  512. Marsal,
  513. NemackiStrelac,
  514. RuskiPukovnik,
  515. PoljskaPesadija,
  516. Mornar,
  517. Napadac ,
  518. Legija,
  519. Armageddon,
  520. Samuraj,
  521. RatkoMladic,
  522. SWAT,
  523. Partizan,
  524. Gunner,
  525. Cleric,
  526. General,
  527. Terminator,
  528. Slayer,
  529. Zastavnik,
  530. Admiral,
  531. Fighter,
  532. Policajac,
  533. Specijalac,
  534. Predator,
  535. NemackiOficir,
  536. Cetnik,
  537. ProfVojnik,
  538. Crysis,
  539. ProfStrelac
  540. }
  541.  
  542. new const zdrowie_klasy[] = { //Helti Klase
  543. 0, //NONE
  544. 120, //Snajperista
  545. 140, //Marinac
  546. 130, //Pro-Strelac
  547. 120, //Mitraljezac
  548. 110, //Doktor
  549. 100, //Vatrena Podrska
  550. 100, //Miner
  551. 110, //Demolitions
  552. 100, //Rusher
  553. 130, //Rambo
  554. 120, //Revolveras
  555. 110, //Bombarder
  556. 120, //Strelac
  557. 70, //Informator
  558. 110, //Pukovnik
  559. 150, //Pobunjenik
  560. 110, //Serijski ubica
  561. 120, //Desetar
  562. 110, //Vodnik
  563. 120, //Kamikaza
  564. 150, //Assassin
  565. 100, //Major
  566. 100, //Kapetan
  567. 100, //Potpukovnik
  568. 120, //Marsal
  569. 120, //Nemacki strelac
  570. 130, //Ruski pukovnik
  571. 100, //Poljska pesadija
  572. 110, //Mornar
  573. 150, //Napadac
  574. 100, //Legija
  575. 160, //Armageddon
  576. 100, //Samuraj
  577. 150, //Ratko Mladic
  578. 150, //SWAT
  579. 100, //Partizan
  580. 125, //Gunner
  581. 100, //Cleric
  582. 130, //General
  583. 140, //Terminator
  584. 80, //Slayer
  585. 110, //Zastavnik
  586. 125, //Admiral
  587. 150, //Fighter
  588. 120, //Policajac
  589. 110, //Specijalac
  590. 100, //Predator
  591. 105, //NemackiOficir
  592. 124, //Cetnik
  593. 130, //ProfVojnik
  594. 80, //Crysis
  595. 105 //ProfStrelac
  596. }
  597.  
  598. new const Float:szybkosc_klasy[] = { //Brzina Klase
  599. 0.0, //None
  600. 1.3, //Snajperi
  601. 1.35, //Marinac
  602. 1.0, //Pro-Strelac
  603. 0.8, //Mitraljezac
  604. 1.5, //Doktor
  605. 1.2, //Vatrena Podrska
  606. 1.1, //Miner
  607. 1.1, //Demolitions
  608. 1.3, //Rusher
  609. 1.2, //Rambo
  610. 1.1, //Revolveras
  611. 1.1, //Bombarder
  612. 1.0, //Strelac
  613. 1.6, //Informator
  614. 1.1, //Pukovnik
  615. 1.4, //Pobunjenik
  616. 1.0, //Serijski ubica
  617. 1.0, //Desetar
  618. 1.1, //Vodnik
  619. 1.0, //Kamikaza
  620. 1.4, //Assassin
  621. 1.2, //Major
  622. 1.0, //Kapetan
  623. 1.6, //Potpukovnik
  624. 1.1, //Marsal
  625. 1.0, //Nemacki strelac
  626. 1.0, //Ruski pukovnik
  627. 1.2, //Poljska pesadija
  628. 0.7, //Mornar
  629. 1.2, //Napadac
  630. 1.0, //Legija
  631. 1.0, //Armageddon
  632. 1.4, //Samuraj
  633. 1.4, //Ratko Mladic
  634. 1.3, //SWAT
  635. 1.3, //Partizan
  636. 1.0, //Gunner
  637. 1.2, //Cleric
  638. 1.2, //General
  639. 1.4, //Terminator
  640. 1.6, //Slayer
  641. 1.4, //Zastavnik
  642. 1.1, //Admiral
  643. 1.4, //Fighter
  644. 1.2, //Policajac
  645. 1.8, //Specijalac
  646. 1.3, //Predator
  647. 1.0, //NemackiOficir
  648. 1.2, //Cetnik
  649. 1.6, //ProfVojnik
  650. 1.8, //Crysis
  651. 0 //ProfStrelac
  652. }
  653. new const pancerz_klasy[] = { //Armor Klase
  654. 0, //None
  655. 100, //Snajperi
  656. 100, //Marinac
  657. 100, //Pro-Strelac
  658. 40, //Mitraljezac
  659. 0, //Doktor
  660. 0, //Vatrena Podrska
  661. 0, //Miner
  662. 100, //Demolitions
  663. 40, //Rusher
  664. 0, //Rambo
  665. 0, //Revolveras
  666. 100, //Bombarder
  667. 40, //Strelac
  668. 0, //Informator
  669. 0, //Pukovnik
  670. 150, //Pobunjenik
  671. 90, //Serijski ubica
  672. 0, //Desetar
  673. 200, //Vodnik
  674. 0, //Kamikaza
  675. 100, //Assassin
  676. 0, //Major
  677. 0, //Kapetan
  678. 200, //Potpukovnik
  679. 0, //Marsal
  680. 100, //Nemacki strelac
  681. 0, //Ruski pukovnik
  682. 0, //Poljska pesadija
  683. 100, //Mornar
  684. 0, //Napadac
  685. 0, //Legija
  686. 120, //Armageddon
  687. 0, //Samuraj
  688. 150, //Ratko Mladic
  689. 110, //SWAT
  690. 100, //Partizan
  691. 100, //Gunner
  692. 150, //Cleric
  693. 120, //General
  694. 50, //Terminator
  695. 120, //Slayer
  696. 300, //Zastavnik
  697. 70, //Admiral
  698. 100, //Fighter
  699. 50, //Policajac
  700. 0, //Specijalac
  701. 25, //Predator
  702. 80, //NemackiOficir
  703. 100, //Cetnik
  704. 90, //ProfVojnik
  705. 10, //Crysis
  706. 45 //ProfStrelac
  707. }
  708.  
  709. new const nazwy_klas[][] = {
  710. "Nema",
  711. "Snajperista",
  712. "Marinac",
  713. "Pro-Strelac",
  714. "Mitraljezac",
  715. "Doktor",
  716. "Vatrena podrska",
  717. "Miner",
  718. "Demolitions",
  719. "Rusher",
  720. "Rambo (200 Din Mesecno)",
  721. "Revolveras",
  722. "Bombarder",
  723. "Strelac",
  724. "Informator",
  725. "Pukovnik",
  726. "Pobunjenik",
  727. "Serijski ubica",
  728. "Desetar",
  729. "Vodnik",
  730. "Kamikaza",
  731. "Assassin (250 Din Mesecno)",
  732. "Major (200 Din Mesecno)",
  733. "Kapetan",
  734. "Potpukovnik",
  735. "Marsal",
  736. "Nemacki strelac",
  737. "Ruski pukovnik",
  738. "Poljska pesadija",
  739. "Mornar",
  740. "Napadac ",
  741. "Legija",
  742. "Armageddon (200 Din Mesecno)",
  743. "Samuraj",
  744. "Ratko Mladic (200 Din Mesecno)",
  745. "SWAT",
  746. "Partizan",
  747. "Gunner",
  748. "Cleric",
  749. "General (200 Din Mesecno)",
  750. "Terminator",
  751. "Slayer (150 Din Mesecno)",
  752. "Zastavnik",
  753. "Admiral",
  754. "Fighter (200 Din Mesecno)",
  755. "Policajac",
  756. "Specijalac",
  757. "Predator",
  758. "Nemacki Oficir",
  759. "Cetnik",
  760. "Profesionalni Vojnik",
  761. "Crysis",
  762. "Profesionalni Strelac"
  763. };
  764. new const frakcje[][]={
  765. "Nema",
  766. "Obicne Klase",
  767. "Premium Klase"
  768. }
  769. enum { NONE = 0,o,p};
  770.  
  771. new const nalezy_do[]={
  772. NONE,
  773. o,
  774. o,
  775. o,
  776. o,
  777. o,
  778. o,
  779. o,
  780. o,
  781. o,
  782. p,
  783. o,
  784. o,
  785. o,
  786. o,
  787. o,
  788. o,
  789. o,
  790. o,
  791. o,
  792. o,
  793. p,
  794. p,
  795. o,
  796. o,
  797. o,
  798. o,
  799. o,
  800. o,
  801. o,
  802. o,
  803. o,
  804. p,
  805. o,
  806. p,
  807. o,
  808. o,
  809. o,
  810. o,
  811. p,
  812. o,
  813. p,
  814. o,
  815. o,
  816. p,
  817. o,
  818. o,
  819. o,
  820. o,
  821. o,
  822. o,
  823. o,
  824. o
  825. }
  826.  
  827. new frakcja_gracza[33]
  828. new const opisy_klas[][] = {"Brak",
  829. "Dobija AWP, Deagle i Scout, 120 HP, 100 AP, 1/3 sanse za instant ubistvo nozem i 130% brzinu.",
  830. "Dobija Deagle, odma ubija nozem, 140 HP, 100 AP i 135% brzinu.",
  831. "Dobija Dobija AK47, M4A1, 110 HP, 100 AP i 80% brzinu.",
  832. "Dobija Dobija M249, otporan na mine, ima sve bombe, 120 HP, 150 AP i 80% brzinu.",
  833. "Dobija UMP45, komplet za prvu pomoc, 110 HP, 100 AP i 150% brzinu.",
  834. "Dobija MP5, HE grenade, 2 rakete, 100 HP, 100 AP i 120% brzinu.",
  835. "Dobija P90, 3 mine, 100 HP, 100 AP i 110% brzinu.",
  836. "Dobija Aug, sve bombe, dinamit koji ubija sve u krugu od 1m, 110 HP, 100 AP i 110% brzinu.",
  837. "Dobija M3, 100 HP, 100 AP i 130% brzinu.",
  838. "Dobija Famas, za svako ubistvo + 20hp i pun sanzer, dupli skok, 130 HP, 150 AP i 120% brzinu.",
  839. "Dobija Elites, 1 raketa, 120 HP, 0 AP i 110% brzinu.",
  840. "Dobija Dobija M4A1, Deagle, 140 HP, 100 AP i 90% brzinu.",
  841. "Dobija Dobija XM1014, Elites, 120 HP, 40 AP i 100% brzinu.",
  842. "Dobija MP5, 70 HP, 0 AP i 160% brzinu.",
  843. "Dobija Famas, Deagle, 110 HP, 0 AP i 110% brzinu i 2 mine.",
  844. "Dobija SG552 + 1 minu + 1 HE, 100hp",
  845. "Dobija M4A1, Smoke grenade, 110 HP, 100 AP i 100% brzinu.",
  846. "Dobija Scout(zadaje 10% vise stete), Deagle, 120 HP, 40 AP i 100% brzinu.",
  847. "Dobija M3, 110 Hp, 0 AP i 110% brzinu.",
  848. "Dobija M4A1, 2 rakete, 120 HP, 0 AP i 100% brzinu.",
  849. "Dobija Deagle, nevidljiv je, 30 HP, 0 AP i 200% brzinu i instant kill nozem (desni klik)",
  850. "Dobija sve pistolje, 10 mina, 90 HP, 0 AP i 110% brzinu.",
  851. "Dobija Aug, 100 HP, 0 AP i 100% brzinu.",
  852. "Dobija awp+deagle, 100 HP, 200 AP i 100% brzinu i manje je vidljiv",
  853. "Dobija Deagle, 120 HP, 0 AP i 120% brzinu.",
  854. "Dobija Ak47, 2 rakete, 90 HP, 100 AP i 120% brzinu.",
  855. "Dobija M4A1, 1 minu, 130 HP, 0 AP i 70% brzinu.",
  856. "Dobija MP5, 2 dinamita, 100 HP, 0 AP i 100% brzinu.",
  857. "Dobija Mac10, ima 50% gravitacije, 110 HP, 100 AP i 100% brzinu i 2 mine.",
  858. "Dobija Famas+P90, smanjena gravitacija, 150 HP, 0 AP i 250% brzinu i 3 dinamita.",
  859. "Dobija M4A1, Deagle, 100 HP, 0 AP i 100% brzinu.",
  860. "Dobija AK47, AUG, HE, 160 HP, 120 AP i 140% brzinui manje je vidljiv i 2 dinamita.",
  861. "Dobija usp, 100 HP, 0 AP i 120% brzinu.",
  862. "Dobija Scout(instant kill), Deagle, dupli skok, 140 HP, 150 AP i 130% brzinui 5 raketa.",
  863. "Dobija M4A1, USP, 150 HP, 110 AP i 10% brzinu.",
  864. "Dobija P90, Flash grenade, manje je vidljiv, 100 HP, 100 AP i 100% brzinu.",
  865. "Dobija G3SG1, Deagle, HE grenade, 1 raketu, 125 HP, 100 AP i 120% brzinu.",
  866. "Dobija AK47, Elites, 100 HP, 50 AP i 120% brzinui 3 mine.",
  867. "Dobija M4A1,P90,kamuflaza,1/10 sanse za instant ubistva DGL-om,130 HP,120 AP i 140% brzinu.",
  868. "Dobija AK47+Deagle, 140 HP, 50 AP i 120% brzinu.",
  869. "Dobija Famas, P90, 3 rakete, 110 HP, 120 AP i 140% brzinu i ubija instant sa nozem.",
  870. "Dobija M4A1, P90, Deagle, 2 rakete, 90 HP, 300 AP i 140% brzinu.",
  871. "Dobija AK47, Famas, 125 HP, 70 AP i 110% brzinu.",
  872. "Dobija M4A1,Scout,USP,2 dinamita,dupli skok,150 HP i 140% brzinu, 1/3 za instant kill nozem.",
  873. "Dobija XM1014, TMP, fiveseven, 150 HP, 50 AP i 120% brzinu.",
  874. "Dobija FAMAS, P228, , 110 HP, 0 AP i 150% brzinu.",
  875. "Dobija sg552, glock18, smokegrenade 100 HP , 25 AP.",
  876. "Dobija P90, glock18 smokegrenade 105 HP, 80 AP.",
  877. "Dobija AK47, 2 HE ,2 dinamita, 124 HP , 100 AP",
  878. "Dobija FAMAS,USP,1 raketu,130 HP , 90 AP",
  879. "Dobija SG552,m4a1,2 rakete,80 HP,10 AP ,super speed,65% nevidljiv",
  880. "Dobija AWP,m4a1,105 HP,45 AP"
  881. };
  882.  
  883. new ilosc_apteczek_gracza[33];
  884. new ilosc_rakiet_gracza[33];
  885. new Float:poprzednia_rakieta_gracza[33];
  886. new ilosc_min_gracza[33];
  887. new ilosc_dynamitow_gracza[33];
  888. new ilosc_skokow_gracza[33];
  889. new SOUND_START[] = "items/medshot4.wav"
  890. new SOUND_FINISHED[] = "items/smallmedkit2.wav"
  891. new SOUND_FAILED[] = "items/medshotno1.wav"
  892.  
  893. enum
  894. {
  895. ICON_HIDE = 0,
  896. ICON_SHOW,
  897. ICON_FLASH
  898. }
  899.  
  900. new bool:g_haskit[MAX_PLAYERS+1]
  901. new Float:g_revive_delay[MAX_PLAYERS+1]
  902. new Float:g_body_origin[MAX_PLAYERS+1][3]
  903. new bool:g_wasducking[MAX_PLAYERS+1]
  904.  
  905. new g_msg_bartime
  906. new g_msg_statusicon
  907. new g_msg_clcorpse
  908.  
  909. new cvar_revival_time
  910. new cvar_revival_health
  911. new cvar_revival_dis
  912. new bool:freezetime = true;
  913. new hasZoom[33];
  914.  
  915. /* --==[ KillStreak ]==-- */
  916. static const CSW_to_offset[] = {0,385,378,388,381,390,382,389,386,383,382,380,380,380,382,386,377,386,379,381,380,386,378,387,384,380,378,0,383};
  917.  
  918. new cache_trail;
  919.  
  920. new licznik_zabic[33],radar[33],nalot[33],predator[33],nuke[33],emp[33],uav[33], pack[33];
  921. new user_controll[33];
  922. new emp_czasowe;
  923.  
  924. new PobraneOrigin[3];
  925. native cod_set_user_xp(id, wartosc)
  926. native cod_get_user_xp(id)
  927. /* --==[ KillStreak ]==-- */
  928.  
  929. /* --==[ VIP ] ==-- */
  930. static const COLOR[] = "^x04" //green
  931. static const CONTACT[] = ""
  932. new maxplayers
  933. new gmsgSayText
  934. new mpd, mkb, mhb
  935. new g_MsgSync
  936. new health_add
  937. new health_hs_add
  938. new health_max
  939. new nKiller
  940. new nKiller_hp
  941. new nHp_add
  942. new nHp_max
  943. new g_vip_active
  944. new g_menu_active
  945. new bool:HasC4[33]
  946. #define DAMAGE_RECIEVED
  947. #define Keysrod (1<<0)|(1<<1)|(1<<9) // Keys: 1234567890
  948. new round;
  949. /* --==[ VIP ] ==-- */
  950.  
  951. public plugin_init()
  952. {
  953. register_plugin(PLUGIN, VERSION, AUTHOR);
  954.  
  955. g_vault = nvault_open("CodMod");
  956.  
  957. register_think("Apteczka","ApteczkaThink");
  958.  
  959. RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
  960. RegisterHam(Ham_Spawn, "player", "Odrodzenie", 1);
  961. RegisterHam(Ham_Touch, "armoury_entity", "DotykBroni");
  962. RegisterHam(Ham_Touch, "weapon_shield", "DotykBroni");
  963. RegisterHam(Ham_Touch, "weaponbox", "DotykBroni");
  964. /* --==[ KillStreak ]==-- */
  965. RegisterHam(Ham_Killed, "player", "SmiercGracza", 1);
  966. RegisterHam(Ham_Touch, "player", "pack_touch", 1);
  967. /* --==[ KillStreak ]==-- */
  968.  
  969. register_forward(FM_CmdStart, "CmdStart");
  970. register_forward(FM_EmitSound, "EmitSound");
  971. register_forward(FM_EmitSound, "fwd_emitsound")
  972. register_forward(FM_PlayerPostThink, "fwd_playerpostthink")
  973. register_forward(FM_PlayerPreThink, "forward_player_prethink" );
  974. register_forward(FM_TraceLine,"fw_traceline");
  975. /* --==[ KillStreak ]==-- */
  976. register_forward(FM_Touch, "fw_Touch");
  977. register_forward(FM_PlayerPreThink, "player_predator");
  978. register_forward(FM_PlayerPreThink, "Forward_FM_PlayerPreThink")
  979. register_forward(FM_ClientKill, "cmdKill")
  980. set_task (2.0,"radar_scan2",_,_,_,"b");
  981. /* --==[ KillStreak ]==-- */
  982.  
  983. register_logevent("PoczatekRundy", 2, "1=Round_Start");
  984. register_logevent("BombaPodlozona", 3, "2=Planted_The_Bomb");
  985. register_event("SendAudio", "BombaRozbrojona", "a", "2&%!MRAD_BOMBDEF");
  986. register_event("BarTime", "RozbrajaBombe", "be", "1=10", "1=5");
  987. register_event("DeathMsg", "Death", "ade");
  988. register_event("Damage", "Damage", "b", "2!=0");
  989. register_event("CurWeapon","CurWeapon","be", "1=1");
  990. register_event("HLTV", "NowaRunda", "a", "1=0", "2=0");
  991. register_event("DeathMsg", "event_death", "a")
  992. register_event("HLTV", "event_hltv", "a", "1=0", "2=0")
  993.  
  994. register_touch("Rocket", "*" , "DotykRakiety");
  995. register_touch("Mine", "player", "DotykMiny");
  996.  
  997. register_cvar("cod_killxp", "15");
  998. register_cvar("cod_bombxp", "30");
  999. register_cvar("cod_hsexp", "20");
  1000. register_cvar("cod_winxp", "20");
  1001.  
  1002. cvar_revival_time = register_cvar("amx_revkit_time", "4")
  1003. cvar_revival_health = register_cvar("amx_revkit_health", "75")
  1004. cvar_revival_dis = register_cvar("amx_revkit_distance", "100.0")
  1005. register_message(get_user_msgid("Health"),"message_health");
  1006. register_event("SendAudio", "WygranaTerro" , "a", "2&%!MRAD_terwin");
  1007. register_event("SendAudio", "WygranaCT", "a", "2&%!MRAD_ctwin");
  1008.  
  1009. register_menucmd(register_menuid("rod"), Keysrod, "Pressedrod")
  1010. /* --==[ KillStreak ]==-- */
  1011. register_clcmd("radio2", "uzyj_nagrody");
  1012. /* --==[ KillStreak ]==-- */
  1013. register_clcmd("say /klasa", "WybierzKlase");
  1014. register_clcmd("say /opis", "OpisKlasy");
  1015. register_clcmd("say /predmet", "OpisPrzedmiotu");
  1016. register_clcmd("say /item", "OpisPrzedmiotu");
  1017. register_clcmd("say /drop", "WyrzucPrzedmiot");
  1018. register_clcmd("say /izbaci", "WyrzucPrzedmiot");
  1019. register_clcmd("say /reset", "KomendaResetujPunkty");
  1020. register_clcmd("say /sklep", "Sklep");
  1021. register_clcmd("say /shop", "Sklep");
  1022. register_clcmd("say /mapoteka", "KupMalaApteczka");
  1023. register_clcmd("say /pomoc", "WylaczPomoc");
  1024. register_clcmd("say /sapoteka", "KupSredniaApteczka");
  1025. register_clcmd("say /vapoteka", "KupDuzaApteczka");
  1026. register_clcmd("say /kupi", "KupLosowyItem");
  1027. register_clcmd("say /wytrzymalosc", "KupWytrzymalosc");
  1028. register_clcmd("say /mxp", "KupMalyExp");
  1029. register_clcmd("say /dxp", "KupDuzyExp");
  1030. register_clcmd("say /granata", "KupGranaty");
  1031. register_clcmd("say /daj", "OddajPrzedmiot");
  1032. register_clcmd("say /prodaj", "SprzedajPrzedmiot");
  1033. register_clcmd("fullupdate", "BlokujKomende");
  1034. register_clcmd("cl_autobuy", "BlokujKomende");
  1035. register_clcmd("say /molotov", "BlokujKomende");
  1036. register_clcmd("say molotov", "BlokujKomende");
  1037. register_clcmd("cl_rebuy", "BlokujKomende");
  1038. register_clcmd("cl_setautobuy","BlokujKomende");
  1039. register_clcmd("rebuy", "BlokujKomende");
  1040. register_clcmd("autobuy", "BlokujKomende");
  1041. register_clcmd("glock", "BlokujKomende");
  1042. register_clcmd("usp", "BlokujKomende");
  1043. register_clcmd("p228", "BlokujKomende");
  1044. register_clcmd("deagle", "BlokujKomende");
  1045. register_clcmd("elites", "BlokujKomende");
  1046. register_clcmd("fn57", "BlokujKomende");
  1047. register_clcmd("m3", "BlokujKomende");
  1048. register_clcmd("XM1014", "BlokujKomende");
  1049. register_clcmd("mac10", "BlokujKomende");
  1050. register_clcmd("tmp", "BlokujKomende");
  1051. register_clcmd("mp5", "BlokujKomende");
  1052. register_clcmd("ump45", "BlokujKomende");
  1053. register_clcmd("p90", "BlokujKomende");
  1054. register_clcmd("galil", "BlokujKomende");
  1055. register_clcmd("ak47", "BlokujKomende");
  1056. register_clcmd("scout", "BlokujKomende");
  1057. register_clcmd("sg552", "BlokujKomende");
  1058. register_clcmd("awp", "BlokujKomende");
  1059. register_clcmd("g3sg1", "BlokujKomende");
  1060. register_clcmd("famas", "BlokujKomende");
  1061. register_clcmd("m4a1", "BlokujKomende");
  1062. register_clcmd("bullpup", "BlokujKomende");
  1063. register_clcmd("sg550", "BlokujKomende");
  1064. register_clcmd("m249", "BlokujKomende");
  1065. register_clcmd("shield", "BlokujKomende");
  1066. register_clcmd("hegren", "BlokujKomende");
  1067. register_clcmd("sgren", "BlokujKomende");
  1068. register_clcmd("flash", "BlokujKomende");
  1069. register_clcmd("vest", "BlokujKomende");
  1070. register_clcmd("vesthelm", "BlokujKomende");
  1071.  
  1072. register_concmd("cod_lvl", "cmd_setlvl", ADMIN_CVAR, "<name> <level>");
  1073. register_concmd("cod_dajitemek", "KomendaDajPrzedmiot", ADMIN_KICK, "<nick> <item>");
  1074. register_message(g_msg_clcorpse, "message_clcorpse")
  1075. register_clcmd("say /vips", "print_adminlist")
  1076. gmsgSayText = get_user_msgid("SayText")
  1077.  
  1078. g_msg_screenfade = get_user_msgid("ScreenFade");
  1079. g_msg_bartime = get_user_msgid("BarTime")
  1080. g_msg_clcorpse = get_user_msgid("ClCorpse")
  1081. g_msg_statusicon = get_user_msgid("StatusIcon")
  1082. SyncHudObj = CreateHudSyncObj();
  1083. SyncHudObj2 = CreateHudSyncObj();
  1084. SyncHudObj3 = CreateHudSyncObj();
  1085. doswiadczenia_za_zabojstwo = get_cvar_num("cod_killxp");
  1086. doswiadczenie_za_bombe = get_cvar_num("cod_bombxp");
  1087. doswiadczenie_za_wygrana = get_cvar_num("cod_winxp");
  1088. doswiadczenie_za_hs = get_cvar_num("cod_hsexp");
  1089.  
  1090. register_event("ResetHUD", "ResetHUD", "abe");
  1091.  
  1092. register_think("magnet","MagnetThink");
  1093.  
  1094. pcvar_ilosc_elektromagnesow = register_cvar("cod_magnets", "1");
  1095. pcvar_zasieg = register_cvar("cod_magnetradius", "250");
  1096. pcvar_czas_dzialania = register_cvar("cod_magnettime", "14");
  1097. pcvar_widocznosc_fali = register_cvar("cod_wavesvisibility", "5");
  1098. /* --==[ VIP ] ==-- */
  1099. mpd = register_cvar("money_per_damage","3")
  1100. mkb = register_cvar("money_kill_bonus","500")
  1101. mhb = register_cvar("money_hs_bonus","300")
  1102. health_add = register_cvar("amx_vip_hp", "15")
  1103. health_hs_add = register_cvar("amx_vip_hp_hs", "30")
  1104. health_max = register_cvar("amx_vip_max_hp", "1000")
  1105. g_vip_active = register_cvar("vip_active", "0")
  1106. g_menu_active = register_cvar("menu_active", "1")
  1107.  
  1108. register_event("CurWeapon", "event_CurWeapon_Vip", "be", "1=1")
  1109.  
  1110. register_event("Damage","Damage2","b")
  1111. register_event("Damage", "on_damage", "b", "2!0", "3=0", "4!0")
  1112.  
  1113. /* #if defined DAMAGE_RECIEVED
  1114. g_MsgSync2 = CreateHudSyncObj()
  1115. #endif */
  1116. register_menucmd(register_menuid("rod"), Keysrod, "Pressedrod")
  1117. register_clcmd("say /vip","ShowMotd")
  1118.  
  1119. maxplayers = get_maxplayers()
  1120. g_MsgSync = CreateHudSyncObj()
  1121. gmsgSayText = get_user_msgid("SayText")
  1122. register_clcmd("say", "handle_say")
  1123. register_cvar("sv_contact", CONTACT, FCVAR_SERVER)
  1124.  
  1125. register_logevent("Round_Reset", 2, "1=Game_Commencing")
  1126. register_event("TextMsg", "Round_Reset", "a", "2&Game_will_restart_in")
  1127. register_event("DeathMsg", "hook_death", "a", "1>0")
  1128. /* --==[ VIP ] ==-- */
  1129. set_task(30.0, "Pomoc");
  1130.  
  1131. g_msgHostageAdd = get_user_msgid("HostagePos");
  1132. g_msgHostageDel = get_user_msgid("HostageK");
  1133.  
  1134. set_task(1.5, "radar_scan", _, _, _, "b");
  1135. }
  1136. public KupMalaApteczka(id)
  1137. Sklep_Handle(id, 0, 0);
  1138. public KupSredniaApteczka(id)
  1139. Sklep_Handle(id, 0, 1);
  1140. public KupDuzaApteczka(id)
  1141. Sklep_Handle(id, 0, 2);
  1142. public KupLosowyItem(id)
  1143. Sklep_Handle(id, 0, 3);
  1144. public KupWytrzymalosc(id)
  1145. Sklep_Handle(id, 0, 4);
  1146. public KupGranaty(id)
  1147. Sklep_Handle(id, 0, 5);
  1148. public KupMalyExp(id)
  1149. Sklep_Handle(id, 0, 6);
  1150. public KupDuzyExp(id)
  1151. Sklep_Handle(id, 0, 7);
  1152.  
  1153. public Sklep(id)
  1154. {
  1155. new menu = menu_create("Sklep:", "Sklep_Handle");
  1156. menu_additem(menu, "Mala Apoteka \r[Daje 20 HP] \yCena: \r4000$");
  1157. menu_additem(menu, "Srednja Apoteka \r[Daje 50 HP] \yCena: \r10000$");
  1158. menu_additem(menu, "Velika Apoteka \r[Daje 100 HP] \yCena: \r15000$");
  1159. menu_additem(menu, "Slucajni Predmet \r[Dobijate Slucajni Predmet] \yCena: \r5000$");
  1160. menu_additem(menu, "Energija \r[+80] \yCena: \r9000$");
  1161. menu_additem(menu, "Kupi Granatu \yCena: \r2500$");
  1162. menu_additem(menu, "Mali Exp \r[Dobijate slucajno od 200 do 500 Exp]\yCena: \r8000$");
  1163. menu_additem(menu, "Veliki Exp \r[Dobijate slucajno od 500 do 1000 Exp]\yCena: \r16000$");
  1164. menu_display(id, menu);
  1165. }
  1166.  
  1167. public Sklep_Handle(id, menu, item)
  1168. {
  1169. if(!is_user_connected(id)) return PLUGIN_HANDLED
  1170. client_cmd(id, "spk QTM_CodMod/select");
  1171.  
  1172. if(menu)
  1173. {
  1174.  
  1175. if(item == MENU_EXIT)
  1176. {
  1177. menu_destroy(menu);
  1178. return PLUGIN_CONTINUE;
  1179. }
  1180. menu_display(id, menu);
  1181. }
  1182. new kasa_gracza = cs_get_user_money(id)
  1183. new hp = get_user_health(id);
  1184. switch(item)
  1185. {
  1186. case 0:
  1187. {
  1188. new koszt = 4000;
  1189. if (kasa_gracza<koszt)
  1190. {
  1191. ColorChat(id,GREEN,"[SKLEP]^x01 Nemate dovoljno novca.");
  1192. return PLUGIN_CONTINUE;
  1193. }
  1194. if(hp >= maksymalne_zdrowie_gracza[id])
  1195. {
  1196. ColorChat(id,GREEN,"[SKLEP]^x01 Vi ste potpuno izleceni.");
  1197. return PLUGIN_CONTINUE;
  1198. }
  1199. cs_set_user_money(id, kasa_gracza-koszt);
  1200. new ammount=20;
  1201. new nowe_zdrowie = (hp+ammount<maksymalne_zdrowie_gracza[id])? hp+ammount: maksymalne_zdrowie_gracza[id];
  1202. fm_set_user_health(id, nowe_zdrowie);
  1203. ColorChat(id,GREEN,"[SKLEP]^x01 Kupili ste^x03 Ketonal");
  1204. }
  1205. case 1:
  1206. {
  1207. new koszt = 10000;
  1208. if (kasa_gracza<koszt)
  1209. {
  1210. ColorChat(id,GREEN,"[SKLEP]^x01 Nemate dovoljno novca.");
  1211. return PLUGIN_CONTINUE;
  1212. }
  1213. if(hp >= maksymalne_zdrowie_gracza[id])
  1214. {
  1215. ColorChat(id,GREEN,"[SKLEP]^x01 Vi ste potpuno izleceni");
  1216. return PLUGIN_CONTINUE;
  1217. }
  1218. cs_set_user_money(id, kasa_gracza-koszt);
  1219. new ammount=50;
  1220. new nowe_zdrowie = (hp+ammount<maksymalne_zdrowie_gracza[id])? hp+ammount: maksymalne_zdrowie_gracza[id];
  1221. fm_set_user_health(id, nowe_zdrowie);
  1222. ColorChat(id,GREEN,"[SKLEP]^x01 Kupili ste^x03 Flegamin");
  1223. }
  1224. case 2:
  1225. {
  1226. new koszt = 15000;
  1227. if (kasa_gracza<koszt)
  1228. {
  1229. ColorChat(id,GREEN,"[SKLEP]^x01 Nemate dovoljno novca.");
  1230. return PLUGIN_CONTINUE;
  1231. }
  1232. if(hp >= maksymalne_zdrowie_gracza[id])
  1233. {
  1234. ColorChat(id,GREEN,"[SKLEP]^x01 Vi ste potpuno izleceni.");
  1235. return PLUGIN_CONTINUE;
  1236. }
  1237. cs_set_user_money(id, kasa_gracza-koszt);
  1238. new ammount=100;
  1239. new nowe_zdrowie = (hp+ammount<maksymalne_zdrowie_gracza[id])? hp+ammount: maksymalne_zdrowie_gracza[id];
  1240. fm_set_user_health(id, nowe_zdrowie);
  1241. ColorChat(id,GREEN,"[SKLEP]^x01 Kupili ste^x03 Aspirin");
  1242. }
  1243. case 3:
  1244. {
  1245. new koszt = 5000;
  1246. if (kasa_gracza<koszt)
  1247. {
  1248. ColorChat(id,RED,"[Shop]^x01 Nemate dovoljno novca!!");
  1249. return PLUGIN_HANDLED;
  1250. }
  1251. else if (kasa_gracza >= koszt)
  1252. {
  1253. cs_set_user_money(id, kasa_gracza-koszt);
  1254. DajPrzedmiot(id, random_num(1, sizeof nazwy_przedmiotow-1));
  1255. }
  1256. }
  1257. case 4:
  1258. {
  1259. new jego_wytrzymalosc = wytrzymalosc_itemu[id]
  1260. new koszt= 9000
  1261. new ilosc_wytrzy = 80
  1262.  
  1263. if(kasa_gracza < koszt)
  1264. {
  1265. ColorChat(id, RED, "[COD:MW3]^x04 Imate malo novca da bi kupili energiju ^x03 %d.", koszt);
  1266. }
  1267. else if(kasa_gracza >= koszt && jego_wytrzymalosc < 81)
  1268. {
  1269. cs_set_user_money(id, kasa_gracza -= koszt)
  1270. wytrzymalosc_itemu[id] += ilosc_wytrzy
  1271. ColorChat(id, RED, "[COD:MW3] ^x04 Kupili ste %d Energiju", ilosc_wytrzy);
  1272. }
  1273. else if(jego_wytrzymalosc >= 81)
  1274. {
  1275. ColorChat(id, RED, "[COD:MW3] ^x04 Morate imati manje od 81 energije da bi ste kupili!");
  1276. }
  1277. }
  1278. case 5:
  1279. {
  1280. new koszt = 2500
  1281. if(kasa_gracza < koszt)
  1282. {
  1283. ColorChat(id, RED, "[COD:MW3] ^x04 Imate malo novca da bi kupili granatu %d.", koszt)
  1284. }
  1285. else if(kasa_gracza >= koszt)
  1286. {
  1287. cs_set_user_money(id, kasa_gracza -= koszt)
  1288. fm_give_item(id, "weapon_hegrenade");
  1289. fm_give_item(id, "weapon_flashbang");
  1290. fm_give_item(id, "weapon_smokegrenade");
  1291. ColorChat(id, GREEN, "^x04 [COD:MW3] ^x04 Kupili ste paket granata")
  1292. }
  1293. }
  1294. case 6:
  1295. {
  1296. new koszt = 8000
  1297. if(kasa_gracza < koszt)
  1298. {
  1299. ColorChat(id, RED, "[COD:MW3] ^x04 Imate malo novca da bi kupili mali Exp..")
  1300. }
  1301. else if(kasa_gracza >= koszt)
  1302. {
  1303. cs_set_user_money(id, kasa_gracza -= koszt)
  1304. new exp = random_num(15, 30);
  1305. ColorChat(id, RED, "[COD:MW3] ^x04 Dobili ste %i Expa.", exp)
  1306. doswiadczenie_gracza[id] += exp;
  1307. }
  1308. }
  1309. case 7:
  1310. {
  1311. new koszt = 16000
  1312. if(kasa_gracza < koszt)
  1313. {
  1314. ColorChat(id, RED, "[COD:MW3] ^x04 Imate malo novca da bi ste kupili veliki Exp.")
  1315. }
  1316. else if(kasa_gracza >= koszt)
  1317. {
  1318. cs_set_user_money(id, kasa_gracza -= koszt)
  1319. new exp = random_num(25, 45);
  1320. ColorChat(id, RED, "[COD:MW3] ^x04 Dobili ste %i Expa.", exp)
  1321. doswiadczenie_gracza[id] += exp;
  1322. }
  1323. }
  1324. }
  1325. return PLUGIN_CONTINUE;
  1326. }
  1327.  
  1328. public plugin_cfg()
  1329. {
  1330. server_cmd("sv_maxspeed 320");
  1331. }
  1332.  
  1333. public plugin_precache()
  1334. {
  1335. sprite_white = precache_model("sprites/white.spr") ;
  1336. sprite_blast = precache_model("sprites/dexplo.spr");
  1337.  
  1338. precache_sound("QTM_CodMod/select.wav");
  1339. precache_sound("QTM_CodMod/start.wav");
  1340. precache_sound("QTM_CodMod/start2.wav");
  1341. precache_sound("QTM_CodMod/levelup.wav");
  1342.  
  1343. precache_model("models/w_medkit.mdl");
  1344. precache_model("models/rpgrocket.mdl");
  1345. precache_model("models/mine.mdl");
  1346. precache_model("models/player/arctic/arctic.mdl")
  1347. precache_model("models/player/terror/terror.mdl")
  1348. precache_model("models/player/leet/leet.mdl")
  1349. precache_model("models/player/guerilla/guerilla.mdl")
  1350. precache_model("models/player/gign/gign.mdl")
  1351. precache_model("models/player/sas/sas.mdl")
  1352. precache_model("models/player/gsg9/gsg9.mdl")
  1353. precache_model("models/player/urban/urban.mdl")
  1354. precache_model("models/player/vip/vip.mdl")
  1355.  
  1356. precache_model("models/QTM_CodMod/electromagnet.mdl");
  1357.  
  1358. precache_sound("weapons/mine_charge.wav");
  1359. precache_sound("weapons/mine_activate.wav");
  1360. precache_sound("weapons/mine_deploy.wav");
  1361.  
  1362. precache_sound(SOUND_START)
  1363. precache_sound(SOUND_FINISHED)
  1364. precache_sound(SOUND_FAILED)
  1365.  
  1366. /* --==[ KillStreak ]==-- */
  1367. cache_trail = precache_model("sprites/smoke.spr")
  1368. precache_model("models/p_hegrenade.mdl");
  1369. precache_model("models/cod_carepackage.mdl")
  1370. precache_model("models/cod_plane.mdl")
  1371. precache_model("models/cod_predator.mdl")
  1372. precache_sound("mw/nuke_enemy1.wav");//
  1373. precache_sound("mw/jet_fly1.wav");
  1374. precache_sound("mw/nuke_give.wav");//
  1375. precache_sound("mw/emp_effect.wav");//
  1376. precache_sound("mw/counter_enemy.wav");//
  1377. precache_sound("mw/air_give.wav");//
  1378. precache_sound("mw/predator_give.wav");//
  1379. precache_sound("mw/emp_give.wav");//
  1380. precache_sound("mw/uav_give.wav")
  1381. /* --==[ KillStreak ]==-- */
  1382.  
  1383. }
  1384. public CmdStart(id, uc_handle)
  1385. {
  1386. if(!is_user_alive(id))
  1387. return FMRES_IGNORED;
  1388.  
  1389. if(zatrzymaj_czas && zatrzymaj_czas != id)
  1390. {
  1391. entity_set_vector(id, EV_VEC_velocity, Float:{0.0, 0.0, 0.0});
  1392. entity_set_vector(id, EV_VEC_v_angle, Float:{0.0, 0.0, 0.0});
  1393. entity_set_vector(id, EV_VEC_angles, Float:{0.0, 0.0, 0.0});
  1394. entity_set_int(id, EV_INT_fixangle, 1);
  1395. set_pdata_float(id, 83, 0.1, 5);
  1396. set_uc(uc_handle, UC_Buttons, 0);
  1397. new name[55];
  1398. get_user_name(zatrzymaj_czas, name, 54);
  1399. client_print(id, print_center, "%s Preostalo vreme na njegov predmet 3sek.", name);
  1400. }
  1401.  
  1402. new button = get_uc(uc_handle, UC_Buttons);
  1403. new oldbutton = get_user_oldbutton(id);
  1404. new flags = get_entity_flags(id);
  1405.  
  1406. if(informacje_przedmiotu_gracza[id][0] == 11 || klasa_gracza[id] == Rambo)
  1407. {
  1408. if((button & IN_JUMP) && !(flags & FL_ONGROUND) && !(oldbutton & IN_JUMP) && ilosc_skokow_gracza[id] > 0)
  1409. {
  1410. ilosc_skokow_gracza[id]--;
  1411. new Float:velocity[3];
  1412. entity_get_vector(id,EV_VEC_velocity,velocity);
  1413. velocity[2] = random_float(265.0,285.0);
  1414. entity_set_vector(id,EV_VEC_velocity,velocity);
  1415. }
  1416. else if(flags & FL_ONGROUND)
  1417. {
  1418. ilosc_skokow_gracza[id] = 0;
  1419. if(informacje_przedmiotu_gracza[id][0] == 11)
  1420. ilosc_skokow_gracza[id]++;
  1421. if(klasa_gracza[id] == Rambo)
  1422. ilosc_skokow_gracza[id]++;
  1423. }
  1424. }
  1425. if(informacje_przedmiotu_gracza[id][0] == 48)
  1426. {
  1427. if(button & IN_DUCK)
  1428. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 8);
  1429. else
  1430. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
  1431. }
  1432.  
  1433. if(button & IN_ATTACK2 && !(pev(id, pev_oldbuttons) & IN_ATTACK2) && informacje_przedmiotu_gracza[id][0] == 63)
  1434. {
  1435. new szClip, szAmmo
  1436. new WeapID = get_user_weapon( id, szClip, szAmmo )
  1437.  
  1438. if(WeapID != CSW_KNIFE && WeapID != CSW_C4 && WeapID != CSW_AWP && WeapID != CSW_SCOUT && WeapID != CSW_SG550 && WeapID != CSW_G3SG1 && !hasZoom[id])
  1439. {
  1440. hasZoom[id] = true;
  1441. cs_set_user_zoom(id, CS_SET_FIRST_ZOOM, 1);
  1442. emit_sound(id, CHAN_ITEM, "weapons/zoom.wav", 0.20, 2.40, 0, 100);
  1443. }
  1444. else if (hasZoom[id])
  1445. {
  1446. hasZoom[id] = false;
  1447. cs_set_user_zoom(id, CS_RESET_ZOOM, 0);
  1448. }
  1449. }
  1450.  
  1451. if(button & IN_ATTACK)
  1452. {
  1453. new Float:punchangle[3];
  1454.  
  1455. if(informacje_przedmiotu_gracza[id][0] == 20)
  1456. entity_set_vector(id, EV_VEC_punchangle, punchangle);
  1457. if(informacje_przedmiotu_gracza[id][0] == 23)
  1458. {
  1459. entity_get_vector(id, EV_VEC_punchangle, punchangle);
  1460. for(new i=0; i<3;i++)
  1461. punchangle[i]*=0.9;
  1462. entity_set_vector(id, EV_VEC_punchangle, punchangle);
  1463. }
  1464.  
  1465. if(informacje_przedmiotu_gracza[id][0] == 70)
  1466. {
  1467. entity_get_vector(id, EV_VEC_punchangle, punchangle);
  1468. for(new i=0; i<3;i++)
  1469. punchangle[i]*=1.1;
  1470. entity_set_vector(id, EV_VEC_punchangle, punchangle);
  1471. }
  1472. }
  1473.  
  1474. if(informacje_przedmiotu_gracza[id][0] == 28 && button & IN_JUMP && button & IN_DUCK && flags & FL_ONGROUND && get_gametime() > informacje_przedmiotu_gracza[id][1]+4.0)
  1475. {
  1476. informacje_przedmiotu_gracza[id][1] = floatround(get_gametime());
  1477. new Float:velocity[3];
  1478. VelocityByAim(id, 700, velocity);
  1479. velocity[2] = random_float(265.0,285.0);
  1480. entity_set_vector(id, EV_VEC_velocity, velocity);
  1481. }
  1482.  
  1483. new clip, ammo, weapon = get_user_weapon(id, clip, ammo);
  1484.  
  1485. if(maxClip[weapon] == -1 || !ammo)
  1486. return FMRES_IGNORED;
  1487.  
  1488. if(informacje_przedmiotu_gracza[id][0] == 77 && ((button & IN_RELOAD && !(oldbutton & IN_RELOAD) && !(button & IN_ATTACK)) || !clip))
  1489. {
  1490. cs_set_user_bpammo(id, weapon, ammo-(maxClip[weapon]-clip));
  1491. new new_ammo = min(clip+ammo, maxClip[weapon]);
  1492. set_user_clip(id, new_ammo);
  1493. }
  1494. return FMRES_IGNORED;
  1495. }
  1496.  
  1497. public Odrodzenie(id)
  1498. {
  1499. if(!is_user_alive(id) || !is_user_connected(id))
  1500. return PLUGIN_CONTINUE;
  1501.  
  1502. if(nowa_klasa_gracza[id])
  1503. {
  1504. klasa_gracza[id] = nowa_klasa_gracza[id];
  1505. nowa_klasa_gracza[id] = 0;
  1506. cod_add_wskrzes(id, 0)
  1507. fm_strip_user_weapons(id);
  1508. fm_give_item(id, "weapon_knife");
  1509. switch(get_user_team(id))
  1510. {
  1511. case 1: fm_give_item(id, "weapon_glock18");
  1512. case 2: fm_give_item(id, "weapon_usp");
  1513. }
  1514. WczytajDane(id, klasa_gracza[id]);
  1515. }
  1516.  
  1517. if(!klasa_gracza[id])
  1518. {
  1519. WybierzKlase(id);
  1520. return PLUGIN_CONTINUE;
  1521. }
  1522. switch(klasa_gracza[id])
  1523. {
  1524. case Snajperista:
  1525. {
  1526. give_item(id, "weapon_awp");
  1527. give_item(id, "weapon_scout");
  1528. give_item(id, "weapon_deagle");
  1529. }
  1530. case Marinac:
  1531. {
  1532. give_item(id, "weapon_deagle");
  1533. give_item(id, "weapon_famas");
  1534. }
  1535. case ProStrelac:
  1536. {
  1537. give_item(id, "weapon_m4a1");
  1538. give_item(id, "weapon_ak47");
  1539. }
  1540. case Mitraljezac:
  1541. {
  1542. give_item(id, "weapon_m249");
  1543. give_item(id, "weapon_hegrenade");
  1544. give_item(id, "weapon_flashbang");
  1545. give_item(id, "weapon_smokegrenade");
  1546. }
  1547. case Doktor:
  1548. {
  1549. give_item(id, "weapon_ump45");
  1550. ilosc_apteczek_gracza[id] = 4;
  1551. cod_add_wskrzes(id,1)
  1552. }
  1553. case VatrenaPodrska:
  1554. {
  1555. give_item(id, "weapon_mp5navy");
  1556. ilosc_rakiet_gracza[id] = 2;
  1557. }
  1558. case Miner:
  1559. {
  1560. give_item(id, "weapon_p90");
  1561. ilosc_min_gracza[id] = 3
  1562. }
  1563. case Demolitions:
  1564. {
  1565. give_item(id, "weapon_aug");
  1566. give_item(id, "weapon_hegrenade");
  1567. give_item(id, "weapon_flashbang");
  1568. give_item(id, "weapon_smokegrenade");
  1569. ilosc_dynamitow_gracza[id] = 1;
  1570. }
  1571. case Rusher:
  1572. {
  1573. give_item(id, "weapon_m3");
  1574. }
  1575. case Rambo:
  1576. {
  1577. give_item(id, "weapon_famas");
  1578. }
  1579. case Revolveras:
  1580. {
  1581. give_item(id, "weapon_elite");
  1582. ilosc_rakiet_gracza[id] = 2;
  1583. }
  1584. case Bombarder:
  1585. {
  1586. give_item(id, "weapon_m4a1");
  1587. give_item(id, "weapon_deagle");
  1588. }
  1589. case Strelac:
  1590. {
  1591. give_item(id, "weapon_xm1014");
  1592. give_item(id, "weapon_elite");
  1593. }
  1594. case Informator:
  1595. {
  1596. give_item(id, "weapon_mp5navy");
  1597. }
  1598. case Pukovnik:
  1599. {
  1600. give_item(id, "weapon_famas");
  1601. give_item(id, "weapon_deagle");
  1602. ilosc_min_gracza[id] = 2
  1603. }
  1604. case Pobunjenik:
  1605. {
  1606. give_item(id, "weapon_sg552");
  1607. ilosc_rakiet_gracza[id] = 2;
  1608. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 65);
  1609. }
  1610. case SerijskiUbica:
  1611. {
  1612. give_item(id, "weapon_m4a1");
  1613. give_item(id, "weapon_smokegrenade");
  1614. }
  1615. case Desetar:
  1616. {
  1617. give_item(id, "weapon_scout");
  1618. give_item(id, "weapon_deagle");
  1619. }
  1620. case Vodnik:
  1621. {
  1622. give_item(id, "weapon_m3");
  1623.  
  1624. }
  1625. case Kamikaza:
  1626. {
  1627. give_item(id, "weapon_m4a1");
  1628. ilosc_rakiet_gracza[id] = 2;
  1629. }
  1630. case Assassin:
  1631. {
  1632. give_item(id, "weapon_deagle");
  1633. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 5);
  1634. }
  1635. case Major:
  1636. {
  1637. give_item(id, "weapon_glock18");
  1638. give_item(id, "weapon_m4a1");
  1639. give_item(id, "weapon_usp");
  1640. give_item(id, "weapon_p228");
  1641. give_item(id, "weapon_deagle");
  1642. give_item(id, "weapon_elite");
  1643. give_item(id, "weapon_fiveseven");
  1644. give_item(id, "weapon_smokegrenade");
  1645. ilosc_min_gracza[id] = 10
  1646. }
  1647. case Kapetan:
  1648. {
  1649. give_item(id, "weapon_aug");
  1650. }
  1651. case Potpukovnik:
  1652. {
  1653. give_item(id, "weapon_awp");
  1654. give_item(id, "weapon_deagle");
  1655. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 55);
  1656. }
  1657. case Marsal:
  1658. {
  1659. give_item(id, "weapon_deagle");
  1660. }
  1661. case NemackiStrelac:
  1662. {
  1663. give_item(id, "weapon_ak47");
  1664. ilosc_rakiet_gracza[id] = 2;
  1665. }
  1666. case RuskiPukovnik:
  1667. {
  1668. give_item(id, "weapon_m4a1");
  1669. ilosc_min_gracza[id] = 1
  1670. }
  1671. case PoljskaPesadija:
  1672. {
  1673. give_item(id, "weapon_mp5navy");
  1674. ilosc_dynamitow_gracza[id] = 2
  1675. }
  1676. case Mornar:
  1677. {
  1678. give_item(id, "weapon_mac10");
  1679. ilosc_min_gracza[id] = 2
  1680. }
  1681. case Napadac:
  1682. {
  1683. give_item(id, "weapon_famas");
  1684. give_item(id, "weapon_p90");
  1685. ilosc_dynamitow_gracza[id] = 3
  1686. }
  1687. case Legija:
  1688. {
  1689. give_item(id, "weapon_m4a1");
  1690. give_item(id, "weapon_sg552");
  1691. give_item(id, "weapon_deagle");
  1692. }
  1693. case Armageddon:
  1694. {
  1695. give_item(id, "weapon_ak47");
  1696. give_item(id, "weapon_aug");
  1697. give_item(id, "weapon_hegrenade");
  1698. ilosc_dynamitow_gracza[id] = 3
  1699. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 30);
  1700. }
  1701. case Samuraj:
  1702. {
  1703. give_item(id, "weapon_usp");
  1704. }
  1705. case RatkoMladic:
  1706. {
  1707. give_item(id, "weapon_m4a1");
  1708. give_item(id, "weapon_ak47");
  1709. give_item(id, "weapon_hegrenade");
  1710. give_item(id, "weapon_deagle");
  1711. ilosc_rakiet_gracza[id] = 5;
  1712. }
  1713. case SWAT:
  1714. {
  1715. give_item(id, "weapon_m4a1");
  1716. give_item(id, "weapon_usp");
  1717. }
  1718. case Partizan:
  1719. {
  1720. give_item(id, "weapon_p90");
  1721. give_item(id, "weapon_flashbang");
  1722. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 70);
  1723. }
  1724. case Gunner:
  1725. {
  1726. give_item(id, "weapon_g3sg1");
  1727. give_item(id, "weapon_deagle");
  1728. give_item(id, "weapon_hegrenade");
  1729. ilosc_rakiet_gracza[id] = 2;
  1730. }
  1731. case Cleric:
  1732. {
  1733. give_item(id, "weapon_ak47");
  1734. give_item(id, "weapon_elite");
  1735. ilosc_min_gracza[id] = 3
  1736. }
  1737. case General:
  1738. {
  1739. give_item(id, "weapon_m4a1");
  1740. give_item(id, "weapon_p90");
  1741. give_item(id, "weapon_deagle");
  1742. ZmienUbranie(id, 0);
  1743. }
  1744. case Terminator:
  1745. {
  1746. give_item(id, "weapon_ak47");
  1747. give_item(id, "weapon_usp");
  1748. ilosc_rakiet_gracza[id] = 2;
  1749. }
  1750. case Slayer:
  1751. {
  1752. give_item(id, "weapon_famas");
  1753. give_item(id, "weapon_p90");
  1754. ilosc_rakiet_gracza[id] = 3;
  1755. }
  1756. case Zastavnik:
  1757. {
  1758. give_item(id, "weapon_p90");
  1759. give_item(id, "weapon_deagle");
  1760. ilosc_rakiet_gracza[id] = 2;
  1761. }
  1762. case Admiral:
  1763. {
  1764. give_item(id, "weapon_ak47");
  1765. give_item(id, "weapon_famas");
  1766. }
  1767. case Fighter:
  1768. {
  1769. give_item(id, "weapon_mac10");
  1770. give_item(id, "weapon_scout");
  1771. give_item(id, "weapon_usp");
  1772. ilosc_dynamitow_gracza[id] = 2
  1773. }
  1774. case Policajac:
  1775. {
  1776. give_item(id, "weapon_xm014");
  1777. give_item(id, "weapon_tmp");
  1778. give_item(id, "weapon_fiveseven");
  1779.  
  1780. }
  1781. case Specijalac:
  1782. {
  1783. give_item(id, "weapon_famas");
  1784. give_item(id, "weapon_p228");
  1785. give_item(id, "weapon_m3");
  1786.  
  1787. }
  1788. case Predator:
  1789. {
  1790. give_item(id, "weapon_sg552");
  1791. give_item(id, "weapon_glock18");
  1792. give_item(id, "weapon_smokegrenade");
  1793.  
  1794. }
  1795. case NemackiOficir:
  1796. {
  1797. give_item(id, "weapon_p90");
  1798. give_item(id, "weapon_glock18");
  1799. give_item(id, "weapon_smokegrenade");
  1800. }
  1801. case Cetnik:
  1802. {
  1803. give_item(id, "weapon_ak47");
  1804. give_item(id, "weapon_hegrenade");
  1805. give_item(id, "weapon_hegrenade");
  1806. ilosc_dynamitow_gracza[id] = 2
  1807. }
  1808. case ProfVojnik:
  1809. {
  1810. give_item(id, "weapon_famas");
  1811. give_item(id, "weapon_usp");
  1812. ilosc_rakiet_gracza[id] = 2;
  1813. }
  1814. case Crysis:
  1815. {
  1816. give_item(id, "weapon_sg552");
  1817. give_item(id, "weapon_m4a1");
  1818. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 70);
  1819. }
  1820. case ProfStrelac:
  1821. {
  1822. give_item(id, "weapon_awp");
  1823. give_item(id, "weapon_m4a1");
  1824. ilosc_rakiet_gracza[id] = 2;
  1825. }
  1826. }
  1827.  
  1828. if(!informacje_przedmiotu_gracza[id][0] && klasa_gracza[id] != Partizan)
  1829. fm_set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 255);
  1830.  
  1831. if(punkty_gracza[id]>0)
  1832. set_task(10.0, "PrzydzielPunkty", id);
  1833.  
  1834. if(informacje_przedmiotu_gracza[id][0] == 61)
  1835. ilosc_min_gracza[id] += 5;
  1836.  
  1837. if(informacje_przedmiotu_gracza[id][0] == 78)
  1838. fm_set_user_gravity(id, 0.5);
  1839.  
  1840. if(informacje_przedmiotu_gracza[id][0] == 62)
  1841. fm_give_item(id, "weapon_galil");
  1842.  
  1843. if(informacje_przedmiotu_gracza[id][0] == 10 || informacje_przedmiotu_gracza[id][0] == 9 || informacje_przedmiotu_gracza[id][0] == 59 || informacje_przedmiotu_gracza[id][0] == 31)
  1844. fm_give_item(id, "weapon_hegrenade");
  1845.  
  1846. if(informacje_przedmiotu_gracza[id][0] == 56)
  1847. fm_give_item(id, "weapon_m4a1");
  1848.  
  1849. if(informacje_przedmiotu_gracza[id][0] == 57)
  1850. fm_give_item(id, "weapon_ak47");
  1851.  
  1852. if(informacje_przedmiotu_gracza[id][0] == 89)
  1853. {
  1854. itemo[id]++
  1855. if(itemo[id] > 1)
  1856. UsunPrzedmiot(id);
  1857. }
  1858.  
  1859. if(informacje_przedmiotu_gracza[id][0] == 9 || informacje_przedmiotu_gracza[id][0] == 31 || informacje_przedmiotu_gracza[id][0] == 55 || informacje_przedmiotu_gracza[id][0] == 67)
  1860. ZmienUbranie(id, 0);
  1861.  
  1862. if(informacje_przedmiotu_gracza[id][0] == 67)
  1863. {
  1864. fm_give_item(id, "weapon_usp");
  1865. fm_give_item(id, "weapon_mp5navy");
  1866. }
  1867.  
  1868. if(informacje_przedmiotu_gracza[id][0] == 1 || informacje_przedmiotu_gracza[id][0] == 32 || informacje_przedmiotu_gracza[id][0] == 42 || informacje_przedmiotu_gracza[id][0] == 50 || informacje_przedmiotu_gracza[id][0] == 54 || informacje_przedmiotu_gracza[id][0] == 58 || informacje_przedmiotu_gracza[id][0] == 59)
  1869. fm_set_user_footsteps(id, 1);
  1870. else
  1871. fm_set_user_footsteps(id, 0);
  1872.  
  1873. if(informacje_przedmiotu_gracza[id][0] == 13)
  1874. fm_give_item(id, "weapon_awp");
  1875.  
  1876. if(informacje_przedmiotu_gracza[id][0] == 33)
  1877. fm_give_item(id, "weapon_m4a1");
  1878.  
  1879. if(informacje_przedmiotu_gracza[id][0] == 32)
  1880. {
  1881. fm_give_item(id, "weapon_ak47");
  1882. fm_give_item(id, "weapon_awp");
  1883. }
  1884. if(informacje_przedmiotu_gracza[id][0] == 53)
  1885. {
  1886. fm_give_item(id, "weapon_deagle");
  1887. fm_give_item(id, "weapon_awp");
  1888. }
  1889. if(informacje_przedmiotu_gracza[id][0] == 33)
  1890. fm_give_item(id, "weapon_m4a1");
  1891.  
  1892. if(informacje_przedmiotu_gracza[id][0] == 34)
  1893. fm_give_item(id, "weapon_deagle");
  1894.  
  1895. if(informacje_przedmiotu_gracza[id][0] == 35)
  1896. fm_give_item(id, "weapon_m3");
  1897.  
  1898. if(informacje_przedmiotu_gracza[id][0] == 55)
  1899. fm_give_item(id, "weapon_scout");
  1900.  
  1901. if(informacje_przedmiotu_gracza[id][0] == 60)
  1902. fm_give_item(id, "weapon_m4a1");
  1903.  
  1904. if(informacje_przedmiotu_gracza[id][0] == 19)
  1905. informacje_przedmiotu_gracza[id][1] = 1;
  1906.  
  1907. if(informacje_przedmiotu_gracza[id][0] == 84 || informacje_przedmiotu_gracza[id][0] == 75 || informacje_przedmiotu_gracza[id][0] == 76 || informacje_przedmiotu_gracza[id][0] == 45 || informacje_przedmiotu_gracza[id][0] == 87)
  1908. informacje_przedmiotu_gracza[id][1] = 1;
  1909.  
  1910. if(informacje_przedmiotu_gracza[id][0] == 27)
  1911. informacje_przedmiotu_gracza[id][1] = 3;
  1912.  
  1913. if(informacje_przedmiotu_gracza[id][0] == 38)
  1914. ilosc_apteczek_gracza[id] = 5;
  1915.  
  1916.  
  1917. if(informacje_przedmiotu_gracza[id][0] == 54)
  1918. fm_set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 1);
  1919.  
  1920. if(informacje_przedmiotu_gracza[id][0] == 36)
  1921. fm_set_user_rendering(id, kRenderFxGlowShell, 0, 255, 0, kRenderGlow, 30);
  1922.  
  1923.  
  1924. new weapons[32];
  1925. new weaponsnum;
  1926. get_user_weapons(id, weapons, weaponsnum);
  1927. for(new i=0; i<weaponsnum; i++)
  1928. if(is_user_alive(id))
  1929. if(maxAmmo[weapons[i]] > 0)
  1930. cs_set_user_bpammo(id, weapons[i], maxAmmo[weapons[i]]);
  1931.  
  1932. redukcja_obrazen_gracza[id] = (47.3057*(1.0-floatpower( 2.7182, -0.06798*float(wytrzymalosc_gracza[id])))/100);
  1933. maksymalne_zdrowie_gracza[id] = zdrowie_klasy[klasa_gracza[id]]+zdrowie_gracza[id]*2;
  1934. szybkosc_gracza[id] = STANDARDOWA_SZYBKOSC*szybkosc_klasy[klasa_gracza[id]]+floatround(kondycja_gracza[id]*1.3);
  1935.  
  1936. if(informacje_przedmiotu_gracza[id][0] == 82)
  1937. {
  1938. maksymalne_zdrowie_gracza[id] = 25;
  1939. fm_set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 1)
  1940. }
  1941.  
  1942. if(informacje_przedmiotu_gracza[id][0] == 83)
  1943. {
  1944. maksymalne_zdrowie_gracza[id] = 90;
  1945. fm_set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 15)
  1946. }
  1947.  
  1948. if(informacje_przedmiotu_gracza[id][0] == 80)
  1949. {
  1950. maksymalne_zdrowie_gracza[id] += informacje_przedmiotu_gracza[id][1];
  1951. fm_give_item(id, "weapon_m3");
  1952. }
  1953.  
  1954. if(informacje_przedmiotu_gracza[id][0] == 70 || informacje_przedmiotu_gracza[id][0] == 50 || informacje_przedmiotu_gracza[id][0] == 71 || informacje_przedmiotu_gracza[id][0] == 37 || informacje_przedmiotu_gracza[id][0] == 42 || informacje_przedmiotu_gracza[id][0] == 18 || informacje_przedmiotu_gracza[id][0] == 30)
  1955. maksymalne_zdrowie_gracza[id] += 100;
  1956.  
  1957. if(informacje_przedmiotu_gracza[id][0] == 18)
  1958. szybkosc_gracza[id] -= 0.4;
  1959.  
  1960. if(informacje_przedmiotu_gracza[id][0] == 29)
  1961. {
  1962. maksymalne_zdrowie_gracza[id] += 50;
  1963. szybkosc_gracza[id] += 0.2;
  1964. }
  1965. if(informacje_przedmiotu_gracza[id][0] == 36)
  1966. maksymalne_zdrowie_gracza[id] = 10;
  1967.  
  1968. if(informacje_przedmiotu_gracza[id][0] == 39)
  1969. fm_set_user_gravity(id, 0.5);
  1970.  
  1971. if(informacje_przedmiotu_gracza[id][0] == 54)
  1972. fm_set_user_gravity(id, 0.8);
  1973.  
  1974. if(informacje_przedmiotu_gracza[id][0] == 30)
  1975. szybkosc_gracza[id] -= 20;
  1976.  
  1977. if(informacje_przedmiotu_gracza[id][0] == 25)
  1978. {
  1979. maksymalne_zdrowie_gracza[id] += 50;
  1980. szybkosc_gracza[id] -= 0.3;
  1981. }
  1982. if(informacje_przedmiotu_gracza[id][0] == 54)
  1983. maksymalne_zdrowie_gracza[id] = 1;
  1984.  
  1985. if(informacje_przedmiotu_gracza[id][0] == 50)
  1986. szybkosc_gracza[id] += 10;
  1987.  
  1988. if(informacje_przedmiotu_gracza[id][0] == 43)
  1989. szybkosc_gracza[id] += 20;
  1990.  
  1991. if(informacje_przedmiotu_gracza[id][0] == 44)
  1992. maksymalne_zdrowie_gracza[id] += 70;
  1993.  
  1994. if(informacje_przedmiotu_gracza[id][0] == 49)
  1995. informacje_przedmiotu_gracza[id][1] = 1;
  1996.  
  1997. if(informacje_przedmiotu_gracza[id][0] == 52)
  1998. informacje_przedmiotu_gracza[id][1] = 1;
  1999.  
  2000. if(informacje_przedmiotu_gracza[id][0] == 79)
  2001. ilosc_min_gracza[id] += 3;
  2002.  
  2003. if(informacje_przedmiotu_gracza[id][0] == 88)
  2004. maksymalne_zdrowie_gracza[id] *= 2;
  2005.  
  2006. fm_set_user_armor(id, pancerz_klasy[klasa_gracza[id]]);
  2007. fm_set_user_health(id, maksymalne_zdrowie_gracza[id]);
  2008. if(informacje_przedmiotu_gracza[id][0] == 17)
  2009. fm_set_user_armor(id, 500);
  2010.  
  2011. if(informacje_przedmiotu_gracza[id][0] == 46)
  2012. fm_set_user_armor(id, 500);
  2013.  
  2014. if(informacje_przedmiotu_gracza[id][0] == 64)
  2015. cs_set_user_money(id,16000);
  2016.  
  2017.  
  2018. return PLUGIN_CONTINUE;
  2019. }
  2020.  
  2021. public PoczatekRundy()
  2022. {
  2023. freezetime = false;
  2024. for(new id=0;id<=32;id++)
  2025. {
  2026. if(!is_user_alive(id))
  2027. continue;
  2028.  
  2029. set_task(0.1, "UstawSzybkosc", id+ZADANIE_USTAW_SZYBKOSC);
  2030.  
  2031. switch(get_user_team(id))
  2032. {
  2033. case 1: client_cmd(id, "spk QTM_CodMod/start");
  2034. case 2: client_cmd(id, "spk QTM_CodMod/start2");
  2035. }
  2036. }
  2037.  
  2038. round++;
  2039. new players[32], player, pnum;
  2040. get_players(players, pnum, "a");
  2041. for(new i = 0; i < pnum; i++)
  2042. {
  2043. player = players[i];
  2044. if(is_user_connected(player) && get_user_flags(player) & ADMIN_LEVEL_H)
  2045. {
  2046. if(!get_pcvar_num(g_menu_active))
  2047. return PLUGIN_CONTINUE
  2048. if(!is_user_hltv(player) && !is_user_bot(player))
  2049. {
  2050. fm_give_item(player, "weapon_hegrenade");
  2051. fm_give_item(player, "weapon_flashbang");
  2052. fm_give_item(player, "weapon_flashbang");
  2053. fm_give_item(player, "weapon_smokegrenade");
  2054. fm_give_item(player, "item_assaultsuit");
  2055. fm_give_item(player, "item_thighpack");
  2056. }
  2057. if(round > 3) Showrod(player)
  2058. }
  2059. }
  2060. return PLUGIN_HANDLED;
  2061. }
  2062.  
  2063. public NowaRunda()
  2064. {
  2065. NowaRunda_magnet();
  2066. freezetime = true;
  2067. new iEnt = find_ent_by_class(-1, "Mine");
  2068. while(iEnt > 0)
  2069. {
  2070. remove_entity(iEnt);
  2071. iEnt = find_ent_by_class(iEnt, "Mine");
  2072. }
  2073. }
  2074.  
  2075. public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
  2076. {
  2077. if(!is_user_alive(this) || !is_user_connected(this) || informacje_przedmiotu_gracza[this][0] == 24 || !is_user_connected(idattacker) || get_user_team(this) == get_user_team(idattacker) || !klasa_gracza[idattacker])
  2078. return HAM_IGNORED;
  2079.  
  2080. new health = get_user_health(this);
  2081. new weapon = get_user_weapon(idattacker);
  2082.  
  2083. if(health < 2)
  2084. return HAM_IGNORED;
  2085.  
  2086. if(informacje_przedmiotu_gracza[this][0] == 27 && informacje_przedmiotu_gracza[this][1]>0)
  2087. {
  2088. informacje_przedmiotu_gracza[this][1]--;
  2089. return HAM_SUPERCEDE;
  2090. }
  2091.  
  2092. if(informacje_przedmiotu_gracza[this][0] == 83)
  2093. damage -= floatmin(damage, 5.0);
  2094.  
  2095. if(informacje_przedmiotu_gracza[idattacker][0] == 81)
  2096. damage += 20.0;
  2097.  
  2098. if(informacje_przedmiotu_gracza[idattacker][0] == 30)
  2099. damage += 20.0;
  2100.  
  2101. if(informacje_przedmiotu_gracza[this][0] == 81)
  2102. damage -= floatmin(damage, 10.0);
  2103.  
  2104. if(informacje_przedmiotu_gracza[idattacker][0] == 79)
  2105. damage += 15.0;
  2106.  
  2107. if(informacje_przedmiotu_gracza[this][0] == 70)
  2108. damage -= floatmin(damage, 10.0);
  2109.  
  2110. if(wytrzymalosc_gracza[this]>0)
  2111. damage -= redukcja_obrazen_gracza[this]*damage;
  2112.  
  2113. if(informacje_przedmiotu_gracza[this][0] == 2 || informacje_przedmiotu_gracza[this][0] == 3)
  2114. damage-=(float(informacje_przedmiotu_gracza[this][1])<damage)? float(informacje_przedmiotu_gracza[this][1]): damage;
  2115.  
  2116. if(informacje_przedmiotu_gracza[idattacker][0] == 5 && !UTIL_In_FOV(this, idattacker) && UTIL_In_FOV(idattacker, this))
  2117. damage*=2.0;
  2118.  
  2119. if(informacje_przedmiotu_gracza[idattacker][0] == 10)
  2120. damage+=informacje_przedmiotu_gracza[idattacker][1];
  2121.  
  2122. if(informacje_przedmiotu_gracza[this][0] == 12)
  2123. damage-=(5.0<damage)? 5.0: damage;
  2124.  
  2125. if(informacje_przedmiotu_gracza[this][0] == 29)
  2126. damage-=(10.0<damage)? 10.0: damage;
  2127.  
  2128. if(informacje_przedmiotu_gracza[this][0] == 43)
  2129. damage-=(10.0<damage)? 10.0: damage;
  2130.  
  2131. if(informacje_przedmiotu_gracza[this][0] == 51)
  2132. damage-=(7.0<damage)? 7.0: damage;
  2133.  
  2134. if(weapon == CSW_AWP && informacje_przedmiotu_gracza[idattacker][0] == 13)
  2135. damage=float(health);
  2136.  
  2137. if(informacje_przedmiotu_gracza[idattacker][0] == 21)
  2138. damage+=10;
  2139.  
  2140. if(informacje_przedmiotu_gracza[idattacker][0] == 22)
  2141. damage+=20;
  2142.  
  2143. if(informacje_przedmiotu_gracza[idattacker][0] == 31)
  2144. damage+=25;
  2145.  
  2146. if(informacje_przedmiotu_gracza[idattacker][0] == 36)
  2147. damage+=9;
  2148.  
  2149. if(informacje_przedmiotu_gracza[idattacker][0] == 42)
  2150. damage+=8;
  2151.  
  2152. if(informacje_przedmiotu_gracza[idattacker][0] == 54)
  2153. damage+=30;
  2154.  
  2155. if(informacje_przedmiotu_gracza[idattacker][0] == 43)
  2156. damage+=10;
  2157.  
  2158. if(informacje_przedmiotu_gracza[idattacker][0] == 50)
  2159. damage+=10;
  2160.  
  2161. if(informacje_przedmiotu_gracza[idattacker][0] == 51)
  2162. damage+=5;
  2163.  
  2164. if(informacje_przedmiotu_gracza[idattacker][0] == 58)
  2165. damage+=20;
  2166.  
  2167. if(informacje_przedmiotu_gracza[idattacker][0] == 59)
  2168. damage+=15;
  2169.  
  2170. if(informacje_przedmiotu_gracza[idattacker][0] == 74 && damage >= 40.0)
  2171. client_cmd(this, "drop");
  2172.  
  2173. if(informacje_przedmiotu_gracza[idattacker][0] == 73)
  2174. fm_set_user_health(idattacker, min(maksymalne_zdrowie_gracza[idattacker], get_user_health(idattacker)+floatround(damage)))
  2175.  
  2176. if(idinflictor != idattacker && entity_get_int(idinflictor, EV_INT_movetype) != 5)
  2177. {
  2178. if(informacje_przedmiotu_gracza[idattacker][0] == 10 || (informacje_przedmiotu_gracza[idattacker][0] == 9 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1))
  2179. damage = float(health);
  2180. }
  2181.  
  2182. if(weapon == CSW_SCOUT)
  2183. {
  2184. if((informacje_przedmiotu_gracza[idattacker][0] == 55 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1))
  2185. damage = float(health);
  2186. }
  2187.  
  2188. if(weapon == CSW_M4A1)
  2189. {
  2190. if((informacje_przedmiotu_gracza[idattacker][0] == 56 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1))
  2191. damage = float(health);
  2192. }
  2193.  
  2194. if(weapon == CSW_HEGRENADE)
  2195. {
  2196. if((klasa_gracza[idattacker] == RatkoMladic && random(2) == 1))
  2197. damage = float(health);
  2198. }
  2199.  
  2200. if(weapon == CSW_AWP)
  2201. {
  2202. if(klasa_gracza[idattacker] == RatkoMladic)
  2203. damage = float(health);
  2204. }
  2205.  
  2206. if(weapon == CSW_GALIL)
  2207. {
  2208. if((informacje_przedmiotu_gracza[idattacker][0] == 62 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1))
  2209. damage = float(health);
  2210. }
  2211.  
  2212. if(weapon == CSW_M4A1)
  2213. {
  2214. if((informacje_przedmiotu_gracza[idattacker][0] == 60 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1))
  2215. damage = float(health);
  2216. }
  2217.  
  2218. if(weapon == CSW_AK47)
  2219. {
  2220. if((informacje_przedmiotu_gracza[idattacker][0] == 57 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1))
  2221. damage = float(health);
  2222. }
  2223.  
  2224. if(weapon == CSW_KNIFE)
  2225. {
  2226. if(informacje_przedmiotu_gracza[this][0] == 4)
  2227. damage=damage*1.4+inteligencja_gracza[idattacker];
  2228. if(informacje_przedmiotu_gracza[idattacker][0] == 8 || (klasa_gracza[idattacker] == Snajperista && random(2) == 2) || klasa_gracza[idattacker] == Strelac && !(get_user_button(idattacker) & IN_ATTACK))
  2229. damage = float(health);
  2230.  
  2231. if(informacje_przedmiotu_gracza[this][0] == 82 || informacje_przedmiotu_gracza[this][0] == 83)
  2232. damage = float(health);
  2233.  
  2234. if(klasa_gracza[idattacker] == Samuraj && !random(2))
  2235. damage = float(health);
  2236. }
  2237. if(weapon == CSW_DEAGLE)
  2238. {
  2239. if(informacje_przedmiotu_gracza[idattacker][0] == 34 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1)
  2240. damage = float(health);
  2241. }
  2242. if(weapon == CSW_DEAGLE)
  2243. {
  2244. if((informacje_przedmiotu_gracza[idattacker][0] == 53 && random(2) == 1))
  2245. damage = float(health);
  2246. }
  2247.  
  2248. if(weapon == CSW_HEGRENADE)
  2249. {
  2250. if((informacje_przedmiotu_gracza[idattacker][0] == 59 && random(3) == 1))
  2251. damage = float(health);
  2252. }
  2253.  
  2254. if(weapon == CSW_M3)
  2255. {
  2256. if((informacje_przedmiotu_gracza[idattacker][0] == 35 && random_num(2, informacje_przedmiotu_gracza[idattacker][1]) == 2) || (informacje_przedmiotu_gracza[idattacker][0] == 80 && !random(5)))
  2257. damage = float(health);
  2258. }
  2259. if(weapon == CSW_AWP)
  2260. {
  2261. if(informacje_przedmiotu_gracza[idattacker][0] == 35 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1)
  2262. damage = float(health);
  2263. }
  2264. if(weapon == CSW_AWP)
  2265. {
  2266. if(informacje_przedmiotu_gracza[idattacker][0] == 53)
  2267. damage = float(health);
  2268. }
  2269. if(weapon == CSW_AWP)
  2270. {
  2271. if(informacje_przedmiotu_gracza[idattacker][0] == 32 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1)
  2272. damage = float(health);
  2273. }
  2274. if(weapon == CSW_HEGRENADE)
  2275. {
  2276. if(informacje_przedmiotu_gracza[idattacker][0] == 31 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1)
  2277. damage = float(health);
  2278. }
  2279.  
  2280. if(informacje_przedmiotu_gracza[idattacker][0] == 67)
  2281. {
  2282. if(weapon == CSW_USP && !random(2))
  2283. damage = float(health);
  2284.  
  2285. if(weapon == CSW_MP5NAVY && !random(5))
  2286. damage = float(health);
  2287. }
  2288.  
  2289. if(informacje_przedmiotu_gracza[this][0] == 26 && random_num(1, informacje_przedmiotu_gracza[this][1]) == 1)
  2290. {
  2291. SetHamParamEntity(3, this);
  2292. SetHamParamEntity(1, idattacker);
  2293. }
  2294. if(informacje_przedmiotu_gracza[this][0] == 46 && random_num(1, informacje_przedmiotu_gracza[this][1]) == 1)
  2295. {
  2296. SetHamParamEntity(3, this);
  2297. SetHamParamEntity(1, idattacker);
  2298. }
  2299. if(informacje_przedmiotu_gracza[this][0] == 47 && random_num(1, informacje_przedmiotu_gracza[this][1]) == 1)
  2300. {
  2301. SetHamParamEntity(3, this);
  2302. SetHamParamEntity(1, idattacker);
  2303. }
  2304. if(task_exists(this+ZADANIE_ODBIJAJ))
  2305. {
  2306. SetHamParamEntity(3, this);
  2307. SetHamParamEntity(1, idattacker);
  2308. }
  2309.  
  2310. SetHamParamFloat(4, damage);
  2311. return HAM_IGNORED;
  2312. }
  2313.  
  2314. public Damage(id)
  2315. {
  2316. new attacker = get_user_attacker(id);
  2317. new damage = read_data(2);
  2318. if(!is_user_alive(attacker) || !is_user_connected(attacker) || id == attacker || !klasa_gracza[attacker])
  2319. return PLUGIN_CONTINUE;
  2320.  
  2321. if(informacje_przedmiotu_gracza[attacker][0] == 12 && random_num(1, informacje_przedmiotu_gracza[id][1]) == 1)
  2322. Display_Fade(id,1<<14,1<<14 ,1<<16,255,155,50,230);
  2323.  
  2324. if(get_user_team(id) != get_user_team(attacker))
  2325. {
  2326. while(damage>20)
  2327. {
  2328. damage-=20;
  2329. doswiadczenie_gracza[attacker]++;
  2330. }
  2331. }
  2332. SprawdzPoziom(attacker);
  2333. return PLUGIN_CONTINUE;
  2334. }
  2335.  
  2336. public Death()
  2337. {
  2338. new weaponname[20]
  2339. new headshot = read_data(3)
  2340. read_data(4,weaponname,31)
  2341. new id = read_data(2);
  2342. new attacker = read_data(1);
  2343.  
  2344. if(!is_user_alive(attacker) || !is_user_connected(attacker))
  2345. return PLUGIN_CONTINUE;
  2346.  
  2347. new weapon = get_user_weapon(attacker);
  2348. new zdrowie = get_user_health(attacker);
  2349. if(informacje_przedmiotu_gracza[id][0]) {
  2350. if(wytrzymalosc_itemu[id] > 0) {
  2351. wytrzymalosc_itemu[id]-=20;
  2352. }
  2353. if(wytrzymalosc_itemu[id] > 0) {
  2354. ColorChat(id, RED, "[COD:MW3] ^x01 Snaga Predmeta: %i.", wytrzymalosc_itemu[id]);
  2355. }
  2356. else {
  2357. ColorChat(id, RED, "[COD:MW3] ^x01 Predmet: %s, je potpuno unisten.", nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]]);
  2358. UsunPrzedmiot(id);
  2359. }
  2360. }
  2361. if(get_user_team(id) != get_user_team(attacker) && klasa_gracza[attacker])
  2362. {
  2363. new nowe_doswiadczenie = 0;
  2364.  
  2365. nowe_doswiadczenie += doswiadczenia_za_zabojstwo;
  2366.  
  2367. if(klasa_gracza[id] == Rambo && klasa_gracza[attacker] != Rambo)
  2368. nowe_doswiadczenie += doswiadczenia_za_zabojstwo*2;
  2369.  
  2370. if(poziom_gracza[id] > poziom_gracza[attacker])
  2371. nowe_doswiadczenie += poziom_gracza[id] - poziom_gracza[attacker];
  2372.  
  2373. if(informacje_przedmiotu_gracza[id][0] == 88 && !read_data(3))
  2374. fm_set_user_health(attacker, 1);
  2375.  
  2376. if (get_user_flags(attacker) & ADMIN_LEVEL_H)
  2377. {
  2378. if(headshot)
  2379. {
  2380. new nowe_zdrowie = (zdrowie+30);
  2381. fm_set_user_health(attacker, nowe_zdrowie);
  2382. cs_set_user_money(attacker, cs_get_user_money(attacker)+800);
  2383. }
  2384. else
  2385. {
  2386. new nowe_zdrowie = (zdrowie+15);
  2387. fm_set_user_health(attacker, nowe_zdrowie);
  2388. cs_set_user_money(attacker, cs_get_user_money(attacker)+500);
  2389. }
  2390. }
  2391. if(klasa_gracza[attacker] == Rambo || klasa_gracza[attacker] == RatkoMladic|| informacje_przedmiotu_gracza[attacker][0] == 15 && maxClip[weapon] != -1)
  2392. {
  2393.  
  2394. new nowe_zdrowie = (zdrowie+20);
  2395. set_user_clip(attacker, maxClip[weapon]);
  2396. fm_set_user_health(attacker, nowe_zdrowie);
  2397. }
  2398. if((!(klasa_gracza[attacker] == Rambo || klasa_gracza[attacker] == RatkoMladic)) && (informacje_przedmiotu_gracza[attacker][0] == 71 || informacje_przedmiotu_gracza[attacker][0] == 81))
  2399. {
  2400.  
  2401. new nowe_zdrowie = (zdrowie+25);
  2402. fm_set_user_health(attacker, nowe_zdrowie);
  2403. }
  2404.  
  2405. if((!(klasa_gracza[attacker] == Rambo || klasa_gracza[attacker] == RatkoMladic)) && (informacje_przedmiotu_gracza[attacker][0] == 72 && maxClip[weapon] != -1))
  2406. set_user_clip(attacker, maxClip[weapon]);
  2407.  
  2408. #if defined BOTY
  2409. if(is_user_bot2(attacker) && random(9) == 0)
  2410. WyrzucPrzedmiot(id);
  2411. #endif
  2412. if(!informacje_przedmiotu_gracza[attacker][0])
  2413. DajPrzedmiot(attacker, random_num(1, sizeof nazwy_przedmiotow-1));
  2414.  
  2415. if(informacje_przedmiotu_gracza[attacker][0] == 14)
  2416. {
  2417. new nowe_zdrowie = (zdrowie+50<maksymalne_zdrowie_gracza[attacker])? zdrowie+50: maksymalne_zdrowie_gracza[attacker];
  2418. fm_set_user_health(attacker, nowe_zdrowie);
  2419. }
  2420.  
  2421. set_hudmessage(255, 212, 0, 0.50, 0.33, 1, 6.0, 4.0);
  2422. ShowSyncHudMsg(attacker, SyncHudObj2, "+%i", nowe_doswiadczenie);
  2423.  
  2424. doswiadczenie_gracza[attacker] += nowe_doswiadczenie;
  2425. }
  2426.  
  2427. SprawdzPoziom(attacker);
  2428.  
  2429. if(informacje_przedmiotu_gracza[id][0] == 7 && random_num(1, informacje_przedmiotu_gracza[id][1]) == 1)
  2430. set_task(0.1, "Wskrzes", id+ZADANIE_WSKRZES);
  2431.  
  2432. return PLUGIN_CONTINUE;
  2433. }
  2434.  
  2435. public client_connect(id)
  2436. {
  2437. //resetuje umiejetnosci
  2438. klasa_gracza[id] = 0;
  2439. poziom_gracza[id] = 0;
  2440. doswiadczenie_gracza[id] = 0;
  2441. punkty_gracza[id] = 0;
  2442. zdrowie_gracza[id] = 0;
  2443. inteligencja_gracza[id] = 0;
  2444. wytrzymalosc_gracza[id] = 0;
  2445. kondycja_gracza[id] = 0;
  2446. maksymalne_zdrowie_gracza[id] = 0;
  2447. szybkosc_gracza[id] = 0.0;
  2448. hasZoom[id] = false
  2449. pomocs[id] = true;
  2450.  
  2451. get_user_name(id, nazwa_gracza[id], 63);
  2452.  
  2453. remove_task(id+ZADANIE_POKAZ_INFORMACJE);
  2454. remove_task(id+ZADANIE_POKAZ_REKLAME);
  2455. remove_task(id+ZADANIE_USTAW_SZYBKOSC);
  2456. remove_task(id+ZADANIE_WSKRZES);
  2457. remove_task(id+ZADANIE_WYSZKOLENIE_SANITARNE);
  2458.  
  2459. set_task(10.0, "PokazReklame", id+ZADANIE_POKAZ_REKLAME);
  2460. set_task(3.0, "PokazInformacje", id+ZADANIE_POKAZ_INFORMACJE);
  2461.  
  2462. //resetuje przedmioty
  2463. UsunPrzedmiot(id);
  2464. }
  2465.  
  2466. public client_disconnect(id)
  2467. {
  2468. remove_task(id+ZADANIE_POKAZ_INFORMACJE);
  2469. remove_task(id+ZADANIE_POKAZ_REKLAME);
  2470. remove_task(id+ZADANIE_USTAW_SZYBKOSC);
  2471. remove_task(id+ZADANIE_WSKRZES);
  2472. remove_task(id+ZADANIE_WYSZKOLENIE_SANITARNE);
  2473. hasZoom[id] = false
  2474. ZapiszDane(id);
  2475. UsunPrzedmiot(id);
  2476. client_disconnect_magnet(id);
  2477. }
  2478.  
  2479. public RozbrajaBombe(id)
  2480. if(klasa_gracza[id])
  2481. rozbrajajacy = id;
  2482.  
  2483. public BombaPodlozona()
  2484. {
  2485. new Players[32], playerCount, id;
  2486. get_players(Players, playerCount, "aeh", "TERRORIST");
  2487.  
  2488. if(get_playersnum() > 1)
  2489. {
  2490. doswiadczenie_gracza[podkladajacy] += doswiadczenie_za_bombe;
  2491. for (new i=0; i<playerCount; i++)
  2492. {
  2493. id = Players[i];
  2494. if(!klasa_gracza[id])
  2495. continue;
  2496.  
  2497. if(id != podkladajacy)
  2498. {
  2499. doswiadczenie_gracza[id] += doswiadczenia_za_zabojstwo;
  2500. ColorChat(id, RED, "[COD:MW3] ^x04 Dobio si %i zato sto je tvoj tim postavio bombu.", doswiadczenia_za_zabojstwo);
  2501. }
  2502. else
  2503. {
  2504. ColorChat(id, RED, "[COD:MW3] ^x04 Dobio si %i zato sto si postavio bombu.", doswiadczenie_za_bombe);
  2505. }
  2506. SprawdzPoziom(id);
  2507. }
  2508. }
  2509. }
  2510.  
  2511. public BombaRozbrojona()
  2512. {
  2513. new Players[32], playerCount, id;
  2514. get_players(Players, playerCount, "aeh", "CT");
  2515.  
  2516. doswiadczenie_gracza[rozbrajajacy] += doswiadczenie_za_bombe;
  2517. for (new i=0; i<playerCount; i++)
  2518. {
  2519. id = Players[i];
  2520. if(!klasa_gracza[id])
  2521. continue;
  2522. if(id != rozbrajajacy)
  2523. {
  2524. doswiadczenie_gracza[id]+= doswiadczenia_za_zabojstwo;
  2525. ColorChat(id, RED, "[COD:MW3] ^x04 Dobio si %i zato sto je tvoj tim deaktivirao bombu.", doswiadczenia_za_zabojstwo);
  2526. }
  2527. else
  2528. ColorChat(id, RED, "[COD:MW3] ^x04 Dobio si %i zato sto si deaktivirao bombu.",doswiadczenie_za_bombe);
  2529. SprawdzPoziom(id);
  2530. }
  2531. }
  2532.  
  2533. public OpisKlasy(id)
  2534. {
  2535. new menu = menu_create("Izaberi Klasu:", "OpisKlasy_Handle");
  2536. for(new i=1; i<sizeof nazwy_klas; i++)
  2537. menu_additem(menu, nazwy_klas[i]);
  2538. menu_setprop(menu, MPROP_EXITNAME, "Izlaz");
  2539. menu_setprop(menu, MPROP_BACKNAME, "Predhodna Strana");
  2540. menu_setprop(menu, MPROP_NEXTNAME, "Sledeca Strana");
  2541. menu_display(id, menu);
  2542.  
  2543. client_cmd(id, "spk QTM_CodMod/select");
  2544. }
  2545.  
  2546. public OpisKlasy_Handle(id, menu, item)
  2547. {
  2548. client_cmd(id, "spk QTM_CodMod/select");
  2549.  
  2550. if(item == MENU_EXIT)
  2551. {
  2552. menu_destroy(menu);
  2553. return PLUGIN_CONTINUE;
  2554. }
  2555. ColorChat(id, RED, "[COD:MW3] ^x04 %s: %s", nazwy_klas[item+1], opisy_klas[item+1]);
  2556. menu_display(id, menu);
  2557.  
  2558. return PLUGIN_CONTINUE;
  2559. }
  2560.  
  2561. public WybierzKlase(id)
  2562. {
  2563. new menu = menu_create("Izaberi Klase:", "Wybierzfrakcje_Handle");
  2564. for(new i = 1;i<sizeof(frakcje);i++){
  2565. menu_additem(menu, frakcje[i]);
  2566. }
  2567. menu_display(id, menu);
  2568. }
  2569.  
  2570. public Wybierzfrakcje_Handle(id, menu2, item)
  2571. {
  2572. if(item == MENU_EXIT)
  2573. {
  2574. menu_destroy(menu2);
  2575. return PLUGIN_CONTINUE;
  2576. }
  2577.  
  2578. item++;
  2579. frakcja_gracza[id] = item;
  2580. new menu = menu_create("Izaberi Klase:", "WybierzKlase_Handle");
  2581. new klasa[50];
  2582. for(new i=1; i<sizeof nazwy_klas; i++)
  2583. {
  2584. if(nalezy_do[i] == item){
  2585. WczytajDane(id, i);
  2586. format(klasa, 49, "%s \yLevel: %i", nazwy_klas[i], poziom_gracza[id]);
  2587. menu_additem(menu, klasa);
  2588. }
  2589. }
  2590.  
  2591. WczytajDane(id, klasa_gracza[id]);
  2592.  
  2593. menu_setprop(menu, MPROP_EXITNAME, "Izlaz");
  2594. menu_setprop(menu, MPROP_BACKNAME, "Predhodna Strana");
  2595. menu_setprop(menu, MPROP_NEXTNAME, "Sledeca Strana");
  2596. menu_display(id, menu);
  2597.  
  2598. client_cmd(id, "spk QTM_CodMod/select");
  2599. #if defined BOTY
  2600. if(is_user_bot2(id))
  2601. WybierzKlase_Handle(id, menu, random(sizeof nazwy_klas-1));
  2602. #endif
  2603.  
  2604. return PLUGIN_CONTINUE;
  2605. }
  2606.  
  2607. public WybierzKlase_Handle(id, menu, item)
  2608. {
  2609. client_cmd(id, "spk QTM_CodMod/select");
  2610.  
  2611. if(item == MENU_EXIT)
  2612. {
  2613. menu_destroy(menu);
  2614. return PLUGIN_CONTINUE;
  2615. }
  2616.  
  2617. item++;
  2618.  
  2619. new ile = 0;
  2620. for(new i=1; i<sizeof nazwy_klas; i++)
  2621. {
  2622. if(nalezy_do[i] == frakcja_gracza[id]){
  2623. ile++;
  2624. }
  2625. if(ile == item){
  2626. item = i;
  2627. break;
  2628. }
  2629. }
  2630.  
  2631. if(item == klasa_gracza[id])
  2632. return PLUGIN_CONTINUE;
  2633.  
  2634. if((item == Rambo || item == Terminator || item == Assassin || item == RatkoMladic)&& !(get_user_flags(id) & ADMIN_LEVEL_G))
  2635. {
  2636. ColorChat(id, RED, "[COD:MW3] ^x04 Nemate pristup Premium Klasi.");
  2637. WybierzKlase(id);
  2638. return PLUGIN_CONTINUE;
  2639. }
  2640.  
  2641. if(klasa_gracza[id])
  2642. {
  2643. nowa_klasa_gracza[id] = item;
  2644. ColorChat(id, RED, "[COD:MW3] ^x04 Klasa ce biti promenjena sledece runde.");
  2645. }
  2646. else
  2647. {
  2648. klasa_gracza[id] = item;
  2649. WczytajDane(id, klasa_gracza[id]);
  2650. if(is_user_alive(id)) Odrodzenie(id);
  2651. }
  2652. return PLUGIN_CONTINUE;
  2653. }
  2654.  
  2655. public PrzydzielPunkty(id)
  2656. {
  2657. new inteligencja[65];
  2658. new zdrowie[60];
  2659. new wytrzymalosc[60];
  2660. new kondycja[60];
  2661. new tytul[25];
  2662. format(inteligencja, 64, "Inteligencija: \r%i \y(Povecava napad)", inteligencja_gracza[id]);
  2663. format(zdrowie, 59, "Energija: \r%i \y(Povecava Energiju)", zdrowie_gracza[id]);
  2664. format(wytrzymalosc, 59, "Snaga: \r%i \y(Smanjuje povrede)", wytrzymalosc_gracza[id]);
  2665. format(kondycja, 59, "Kondicija: \r%i \y(Povecava tempo trcanja)", kondycja_gracza[id]);
  2666. format(tytul, 24, "Preostalo ti je jos poena (%i):", punkty_gracza[id]);
  2667. new menu = menu_create(tytul, "PrzydzielPunkty_Handler");
  2668. menu_additem(menu, inteligencja);
  2669. menu_additem(menu, zdrowie);
  2670. menu_additem(menu, wytrzymalosc);
  2671. menu_additem(menu, kondycja);
  2672. menu_display(id, menu);
  2673. #if defined BOTY
  2674. if(is_user_bot2(id))
  2675. PrzydzielPunkty_Handler(id, menu, random(4));
  2676. #endif
  2677. }
  2678.  
  2679. public PrzydzielPunkty_Handler(id, menu, item)
  2680. {
  2681. client_cmd(id, "spk QTM_CodMod/select");
  2682.  
  2683. if(item == MENU_EXIT)
  2684. {
  2685. menu_destroy(menu);
  2686. return PLUGIN_CONTINUE;
  2687. }
  2688.  
  2689. switch(item)
  2690. {
  2691. case 0:
  2692. {
  2693. if(inteligencja_gracza[id]<200)
  2694. inteligencja_gracza[id]++;
  2695. else
  2696. ColorChat(id, RED, "[COD:MW3] ^x04 Dostigli ste maksimalnu inteligenciju");
  2697.  
  2698. }
  2699. case 1:
  2700. {
  2701. if(zdrowie_gracza[id]<200)
  2702. zdrowie_gracza[id]++;
  2703. else
  2704. ColorChat(id, RED, "[COD:MW3] ^x04 Dostligli ste maksimalnu energiju");
  2705. }
  2706. case 2:
  2707. {
  2708. if(wytrzymalosc_gracza[id]<200)
  2709. wytrzymalosc_gracza[id]++;
  2710. else
  2711. ColorChat(id, RED, "[COD:MW3] ^x04 Dostigli ste maksimalnu vestinu");
  2712.  
  2713. }
  2714. case 3:
  2715. {
  2716. if(kondycja_gracza[id]<200)
  2717. kondycja_gracza[id]++;
  2718. else
  2719. ColorChat(id, RED, "[COD:MW3] ^x04 Dostigli ste maksimalnu kondiciju");
  2720. }
  2721. }
  2722.  
  2723. punkty_gracza[id]--;
  2724.  
  2725. if(punkty_gracza[id]>0)
  2726. PrzydzielPunkty(id);
  2727.  
  2728. return PLUGIN_CONTINUE;
  2729. }
  2730.  
  2731. public ResetujPunkty(id)
  2732. {
  2733. punkty_gracza[id] = poziom_gracza[id]*2-2;
  2734. inteligencja_gracza[id] = 0;
  2735. zdrowie_gracza[id] = 0;
  2736. kondycja_gracza[id] = 0;
  2737. wytrzymalosc_gracza[id] = 0;
  2738. PrzydzielPunkty(id)
  2739. }
  2740.  
  2741. public KomendaResetujPunkty(id)
  2742. {
  2743. ColorChat(id, RED, "[COD:MW3] ^x04 Poeni su resetovani.");
  2744. client_cmd(id, "spk QTM_CodMod/select");
  2745. ResetujPunkty(id);
  2746. }
  2747.  
  2748. public WyszkolenieSanitarne(id)
  2749. {
  2750. id -= ZADANIE_WYSZKOLENIE_SANITARNE;
  2751. if(informacje_przedmiotu_gracza[id][0] != 16 || informacje_przedmiotu_gracza[id][0] != 41)
  2752. return PLUGIN_CONTINUE;
  2753. set_task(5.0, "WyszkolenieSanitarne", id+ZADANIE_WYSZKOLENIE_SANITARNE);
  2754. if(!is_user_alive(id))
  2755. return PLUGIN_CONTINUE;
  2756. new health = get_user_health(id);
  2757.  
  2758. fm_set_user_health(id, min((informacje_przedmiotu_gracza[id][0] == 16)? health+10: health+15, maksymalne_zdrowie_gracza[id]));
  2759. return PLUGIN_CONTINUE;
  2760. }
  2761.  
  2762. public StworzApteczke(id)
  2763. {
  2764. if (!ilosc_apteczek_gracza[id])
  2765. {
  2766. client_print(id, print_center, "Imate samo 2 kompleta po rundi!");
  2767. return PLUGIN_CONTINUE;
  2768. }
  2769.  
  2770. if(inteligencja_gracza[id] < 1)
  2771. client_print(id, print_center, "Da koristite prvu pomoc morate povecati inteligenciju!");
  2772.  
  2773. ilosc_apteczek_gracza[id]--;
  2774.  
  2775. new Float:origin[3];
  2776. entity_get_vector(id, EV_VEC_origin, origin);
  2777.  
  2778. new ent = create_entity("info_target");
  2779. entity_set_string(ent, EV_SZ_classname, "Apteczka");
  2780. entity_set_edict(ent, EV_ENT_owner, id);
  2781. entity_set_int(ent, EV_INT_solid, SOLID_NOT);
  2782. entity_set_vector(ent, EV_VEC_origin, origin);
  2783. entity_set_float(ent, EV_FL_ltime, halflife_time() + 7 + 0.1);
  2784.  
  2785.  
  2786. entity_set_model(ent, "models/w_medkit.mdl");
  2787. set_rendering ( ent, kRenderFxGlowShell, 255,0,0, kRenderFxNone, 255 ) ;
  2788. drop_to_floor(ent);
  2789.  
  2790. entity_set_float(ent, EV_FL_nextthink, halflife_time() + 0.1);
  2791.  
  2792. return PLUGIN_CONTINUE;
  2793. }
  2794.  
  2795. public ApteczkaThink(ent)
  2796. {
  2797. new id = entity_get_edict(ent, EV_ENT_owner);
  2798. new totem_dist = 300;
  2799. new totem_heal = 5+floatround(inteligencja_gracza[id]*0.5);
  2800. if (entity_get_edict(ent, EV_ENT_euser2) == 1)
  2801. {
  2802. new Float:forigin[3], origin[3];
  2803. entity_get_vector(ent, EV_VEC_origin, forigin);
  2804. FVecIVec(forigin,origin);
  2805.  
  2806. new entlist[33];
  2807. new numfound = find_sphere_class(0,"player",totem_dist+0.0,entlist, 32,forigin);
  2808.  
  2809. for (new i=0; i < numfound; i++)
  2810. {
  2811. new pid = entlist[i];
  2812.  
  2813. if (get_user_team(pid) != get_user_team(id))
  2814. continue;
  2815.  
  2816. new zdrowie = get_user_health(pid);
  2817. new nowe_zdrowie = (zdrowie+totem_heal<maksymalne_zdrowie_gracza[pid])?zdrowie+totem_heal:maksymalne_zdrowie_gracza[pid];
  2818. if (is_user_alive(pid)) fm_set_user_health(pid, nowe_zdrowie);
  2819. }
  2820.  
  2821. entity_set_edict(ent, EV_ENT_euser2, 0);
  2822. entity_set_float(ent, EV_FL_nextthink, halflife_time() + 1.5);
  2823.  
  2824. return PLUGIN_CONTINUE;
  2825. }
  2826.  
  2827. if (entity_get_float(ent, EV_FL_ltime) < halflife_time() || !is_user_alive(id))
  2828. {
  2829. remove_entity(ent);
  2830. return PLUGIN_CONTINUE;
  2831. }
  2832.  
  2833. if (entity_get_float(ent, EV_FL_ltime)-2.0 < halflife_time())
  2834. set_rendering ( ent, kRenderFxGlowShell, 255,0,0, kRenderFxNone, 255 ) ;
  2835.  
  2836. new Float:forigin[3], origin[3];
  2837. entity_get_vector(ent, EV_VEC_origin, forigin);
  2838. FVecIVec(forigin,origin);
  2839.  
  2840. //Find people near and give them health
  2841. message_begin( MSG_BROADCAST, SVC_TEMPENTITY, origin );
  2842. write_byte( TE_BEAMCYLINDER );
  2843. write_coord( origin[0] );
  2844. write_coord( origin[1] );
  2845. write_coord( origin[2] );
  2846. write_coord( origin[0] );
  2847. write_coord( origin[1] + totem_dist );
  2848. write_coord( origin[2] + totem_dist );
  2849. write_short( sprite_white );
  2850. write_byte( 0 ); // startframe
  2851. write_byte( 0 ); // framerate
  2852. write_byte( 10 ); // life
  2853. write_byte( 10 ); // width
  2854. write_byte( 255 ); // noise
  2855. write_byte( 255 ); // r, g, b
  2856. write_byte( 100 );// r, g, b
  2857. write_byte( 100 ); // r, g, b
  2858. write_byte( 128 ); // brightness
  2859. write_byte( 5 ); // speed
  2860. message_end();
  2861.  
  2862. entity_set_edict(ent, EV_ENT_euser2 ,1);
  2863. entity_set_float(ent, EV_FL_nextthink, halflife_time() + 0.5);
  2864.  
  2865.  
  2866. return PLUGIN_CONTINUE;
  2867.  
  2868. }
  2869.  
  2870. public StworzRakiete(id)
  2871. {
  2872. if (!ilosc_rakiet_gracza[id])
  2873. {
  2874. client_print(id, print_center, "Vec ste iskoristili rakete!");
  2875. return PLUGIN_CONTINUE;
  2876. }
  2877.  
  2878. if(poprzednia_rakieta_gracza[id] + 2.0 > get_gametime())
  2879. {
  2880. client_print(id, print_center, "Rakete mozes koristiti posle 2 sekunde!");
  2881. return PLUGIN_CONTINUE;
  2882. }
  2883.  
  2884. if (is_user_alive(id))
  2885. {
  2886. if(inteligencja_gracza[id] < 1)
  2887. client_print(id, print_center, "Da koristite rakete morate povecati inteligenciju!");
  2888.  
  2889. poprzednia_rakieta_gracza[id] = get_gametime();
  2890. ilosc_rakiet_gracza[id]--;
  2891.  
  2892. new Float: Origin[3], Float: vAngle[3], Float: Velocity[3];
  2893.  
  2894. entity_get_vector(id, EV_VEC_v_angle, vAngle);
  2895. entity_get_vector(id, EV_VEC_origin , Origin);
  2896.  
  2897. new Ent = create_entity("info_target");
  2898.  
  2899. entity_set_string(Ent, EV_SZ_classname, "Rocket");
  2900. entity_set_model(Ent, "models/rpgrocket.mdl");
  2901.  
  2902. vAngle[0] *= -1.0;
  2903.  
  2904. entity_set_origin(Ent, Origin);
  2905. entity_set_vector(Ent, EV_VEC_angles, vAngle);
  2906.  
  2907. entity_set_int(Ent, EV_INT_effects, 2);
  2908. entity_set_int(Ent, EV_INT_solid, SOLID_BBOX);
  2909. entity_set_int(Ent, EV_INT_movetype, MOVETYPE_FLY);
  2910. entity_set_edict(Ent, EV_ENT_owner, id);
  2911.  
  2912. VelocityByAim(id, 1000 , Velocity);
  2913. entity_set_vector(Ent, EV_VEC_velocity ,Velocity);
  2914. }
  2915. return PLUGIN_CONTINUE;
  2916. }
  2917.  
  2918. public PolozDynamit(id)
  2919. {
  2920. if(!ilosc_dynamitow_gracza[id])
  2921. {
  2922. client_print(id, print_center, "Vec ste iskoristili dinamit!");
  2923. return PLUGIN_CONTINUE;
  2924. }
  2925.  
  2926. if(inteligencja_gracza[id] < 1)
  2927. client_print(id, print_center, "Da koristis dinamit povecaj inteligenciju!");
  2928.  
  2929. ilosc_dynamitow_gracza[id]--;
  2930. new Float:fOrigin[3], iOrigin[3];
  2931. entity_get_vector( id, EV_VEC_origin, fOrigin);
  2932. iOrigin[0] = floatround(fOrigin[0]);
  2933. iOrigin[1] = floatround(fOrigin[1]);
  2934. iOrigin[2] = floatround(fOrigin[2]);
  2935.  
  2936. message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
  2937. write_byte(TE_EXPLOSION);
  2938. write_coord(iOrigin[0]);
  2939. write_coord(iOrigin[1]);
  2940. write_coord(iOrigin[2]);
  2941. write_short(sprite_blast);
  2942. write_byte(32);
  2943. write_byte(20);
  2944. write_byte(0);
  2945. message_end();
  2946.  
  2947. message_begin( MSG_BROADCAST, SVC_TEMPENTITY, iOrigin );
  2948. write_byte( TE_BEAMCYLINDER );
  2949. write_coord( iOrigin[0] );
  2950. write_coord( iOrigin[1] );
  2951. write_coord( iOrigin[2] );
  2952. write_coord( iOrigin[0] );
  2953. write_coord( iOrigin[1] + 300 );
  2954. write_coord( iOrigin[2] + 300 );
  2955. write_short( sprite_white );
  2956. write_byte( 0 ); // startframe
  2957. write_byte( 0 ); // framerate
  2958. write_byte( 10 ); // life
  2959. write_byte( 10 ); // width
  2960. write_byte( 255 ); // noise
  2961. write_byte( 255 ); // r, g, b
  2962. write_byte( 100 );// r, g, b
  2963. write_byte( 100 ); // r, g, b
  2964. write_byte( 128 ); // brightness
  2965. write_byte( 8 ); // speed
  2966. message_end();
  2967.  
  2968. new entlist[33];
  2969. new numfound = find_sphere_class(id, "player", 300.0 , entlist, 32);
  2970.  
  2971. for (new i=0; i < numfound; i++)
  2972. {
  2973. new pid = entlist[i];
  2974.  
  2975. if (!is_user_alive(pid) || get_user_team(id) == get_user_team(pid) || informacje_przedmiotu_gracza[pid][0] == 24)
  2976. continue;
  2977. ExecuteHam(Ham_TakeDamage, pid, 0, id, 90.0+float(inteligencja_gracza[id]) , 1);
  2978. }
  2979. return PLUGIN_CONTINUE;
  2980. }
  2981.  
  2982. public PostawMine(id)
  2983. {
  2984. if (!ilosc_min_gracza[id])
  2985. {
  2986. client_print(id, print_center, "Vec ste iskoristili sve mine!");
  2987. return PLUGIN_CONTINUE;
  2988. }
  2989.  
  2990. if(inteligencja_gracza[id] < 1)
  2991. client_print(id, print_center, "Da koristite mine,morate povecati inteligenciju!");
  2992.  
  2993. ilosc_min_gracza[id]--;
  2994.  
  2995. new Float:origin[3];
  2996. entity_get_vector(id, EV_VEC_origin, origin);
  2997.  
  2998. new ent = create_entity("info_target");
  2999. entity_set_string(ent ,EV_SZ_classname, "Mine");
  3000. entity_set_edict(ent ,EV_ENT_owner, id);
  3001. entity_set_int(ent, EV_INT_movetype, MOVETYPE_TOSS);
  3002. entity_set_origin(ent, origin);
  3003. entity_set_int(ent, EV_INT_solid, SOLID_BBOX);
  3004.  
  3005. entity_set_model(ent, "models/mine.mdl");
  3006. entity_set_size(ent,Float:{-16.0,-16.0,0.0},Float:{16.0,16.0,2.0});
  3007.  
  3008. drop_to_floor(ent);
  3009.  
  3010. entity_set_float(ent,EV_FL_nextthink,halflife_time() + 0.01) ;
  3011.  
  3012. set_rendering(ent,kRenderFxNone, 0,0,0, kRenderTransTexture,50) ;
  3013.  
  3014. return PLUGIN_CONTINUE;
  3015. }
  3016.  
  3017. public DotykMiny(ent, id)
  3018. {
  3019. new attacker = entity_get_edict(ent, EV_ENT_owner);
  3020. if (get_user_team(attacker) != get_user_team(id))
  3021. {
  3022. new Float:fOrigin[3], iOrigin[3];
  3023. entity_get_vector( ent, EV_VEC_origin, fOrigin);
  3024. iOrigin[0] = floatround(fOrigin[0]);
  3025. iOrigin[1] = floatround(fOrigin[1]);
  3026. iOrigin[2] = floatround(fOrigin[2]);
  3027.  
  3028. message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
  3029. write_byte(TE_EXPLOSION);
  3030. write_coord(iOrigin[0]);
  3031. write_coord(iOrigin[1]);
  3032. write_coord(iOrigin[2]);
  3033. write_short(sprite_blast);
  3034. write_byte(32); // scale
  3035. write_byte(20); // framerate
  3036. write_byte(0);// flags
  3037. message_end();
  3038. new entlist[33];
  3039. new numfound = find_sphere_class(ent,"player", 90.0 ,entlist, 32);
  3040.  
  3041. for (new i=0; i < numfound; i++)
  3042. {
  3043. new pid = entlist[i];
  3044.  
  3045. if (!is_user_alive(pid) || get_user_team(attacker) == get_user_team(pid) || informacje_przedmiotu_gracza[pid][0] == 24 || klasa_gracza[id] == Doktor)
  3046. continue;
  3047.  
  3048. ExecuteHam(Ham_TakeDamage, pid, ent, attacker, 90.0+float(inteligencja_gracza[attacker]) , 1);
  3049. }
  3050. remove_entity(ent);
  3051. }
  3052. }
  3053.  
  3054. public DotykRakiety(ent)
  3055. {
  3056. if ( !is_valid_ent(ent))
  3057. return;
  3058.  
  3059. new attacker = entity_get_edict(ent, EV_ENT_owner);
  3060.  
  3061. new Float:fOrigin[3], iOrigin[3];
  3062. entity_get_vector( ent, EV_VEC_origin, fOrigin);
  3063. iOrigin[0] = floatround(fOrigin[0]);
  3064. iOrigin[1] = floatround(fOrigin[1]);
  3065. iOrigin[2] = floatround(fOrigin[2]);
  3066.  
  3067. message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
  3068. write_byte(TE_EXPLOSION);
  3069. write_coord(iOrigin[0]);
  3070. write_coord(iOrigin[1]);
  3071. write_coord(iOrigin[2]);
  3072. write_short(sprite_blast);
  3073. write_byte(32); // scale
  3074. write_byte(20); // framerate
  3075. write_byte(0);// flags
  3076. message_end();
  3077.  
  3078. new entlist[33];
  3079. new numfound = find_sphere_class(ent, "player", 230.0, entlist, 32);
  3080.  
  3081. for (new i=0; i < numfound; i++)
  3082. {
  3083. new pid = entlist[i];
  3084.  
  3085. if (!is_user_alive(pid) || get_user_team(attacker) == get_user_team(pid) || informacje_przedmiotu_gracza[pid][0] == 24)
  3086. continue;
  3087. ExecuteHam(Ham_TakeDamage, pid, ent, attacker, 55.0+float(inteligencja_gracza[attacker]) , 1);
  3088. }
  3089. remove_entity(ent);
  3090. }
  3091.  
  3092. public CurWeapon(id)
  3093. {
  3094. if(freezetime || !klasa_gracza[id])
  3095. return PLUGIN_CONTINUE;
  3096.  
  3097. new weapon = read_data(2);
  3098.  
  3099. if(informacje_przedmiotu_gracza[id][0] == 68 && maxClip[weapon] != -1)
  3100. set_user_clip(id, maxClip[weapon]);
  3101.  
  3102. UstawSzybkosc(id);
  3103.  
  3104. if(informacje_przedmiotu_gracza[id][0] == 82 && weapon != CSW_KNIFE)
  3105. engclient_cmd(id, "weapon_knife");
  3106.  
  3107. if(informacje_przedmiotu_gracza[id][0] == 78)
  3108. {
  3109. if(weapon == CSW_KNIFE)
  3110. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 8);
  3111. else
  3112. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
  3113. }
  3114.  
  3115. if(klasa_gracza[id] == Samuraj)
  3116. {
  3117. if(weapon == CSW_KNIFE)
  3118. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 122);
  3119. else
  3120. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
  3121. }
  3122.  
  3123. if(weapon == CSW_C4)
  3124. podkladajacy = id;
  3125. return PLUGIN_CONTINUE;
  3126. }
  3127.  
  3128. public EmitSound(id, iChannel, szSound[], Float:fVol, Float:fAttn, iFlags, iPitch )
  3129. {
  3130. if(equal(szSound, "common/wpn_denyselect.wav"))
  3131. {
  3132. UzyjPrzedmiotu(id);
  3133. return FMRES_SUPERCEDE;
  3134. }
  3135.  
  3136. return FMRES_IGNORED;
  3137. }
  3138.  
  3139. public UzyjPrzedmiotu(id)
  3140. {
  3141. if((informacje_przedmiotu_gracza[id][0] == 19 || informacje_przedmiotu_gracza[id][0] == 45) && informacje_przedmiotu_gracza[id][1]>0)
  3142. {
  3143. fm_set_user_health(id, maksymalne_zdrowie_gracza[id]);
  3144. informacje_przedmiotu_gracza[id][1]--;
  3145. }
  3146. if(informacje_przedmiotu_gracza[id][0] == 49 && informacje_przedmiotu_gracza[id][1]>0)
  3147. {
  3148. set_task(0.1,"clipon",id,"",0,"a",1);
  3149. informacje_przedmiotu_gracza[id][1]--;
  3150. }
  3151. if(informacje_przedmiotu_gracza[id][0] == 52 && informacje_przedmiotu_gracza[id][1]>0)
  3152. {
  3153. set_task(0.1,"godon",id,"",0,"a",1);
  3154. informacje_przedmiotu_gracza[id][1]--;
  3155. }
  3156.  
  3157. if(informacje_przedmiotu_gracza[id][1] == 1 && informacje_przedmiotu_gracza[id][0] == 75)
  3158. {
  3159. set_task(0.1,"clipon",id,"",0,"a",1);
  3160. informacje_przedmiotu_gracza[id][1] = 0;
  3161. }
  3162.  
  3163. if(informacje_przedmiotu_gracza[id][1] == 1 && informacje_przedmiotu_gracza[id][0] == 89)
  3164. {
  3165. set_task(0.1,"clipon",id,"",0,"a",1);
  3166. informacje_przedmiotu_gracza[id][1] = 0;
  3167. }
  3168.  
  3169. if(informacje_przedmiotu_gracza[id][1] == 1 && informacje_przedmiotu_gracza[id][0] == 76)
  3170. {
  3171. new Origin[3], DstOrigin[3];
  3172. get_user_origin(id, Origin);
  3173. get_user_origin(id, DstOrigin, 3);
  3174.  
  3175. DstOrigin[0] += DstOrigin[0]-Origin[0] < 0 ? 50 : -50;
  3176. DstOrigin[1] += DstOrigin[1]-Origin[1] < 0 ? 50 : -50;
  3177. DstOrigin[2] += DstOrigin[2]-Origin[2]-50 < 0 ? 50 : -50;
  3178.  
  3179. informacje_przedmiotu_gracza[id][1] = 0;
  3180.  
  3181. fm_set_user_origin(id, DstOrigin);
  3182. }
  3183.  
  3184. if(informacje_przedmiotu_gracza[id][1] == 1 && informacje_przedmiotu_gracza[id][0] == 84)
  3185. {
  3186. static meekstone_gracza[33];
  3187. if(is_valid_ent(meekstone_gracza[id]))
  3188. {
  3189. informacje_przedmiotu_gracza[id][1] = 0;
  3190.  
  3191. new Float:fOrigin[3];
  3192. entity_get_vector(meekstone_gracza[id], EV_VEC_origin, fOrigin);
  3193.  
  3194. new iOrigin[3];
  3195. for(new i=0;i<3;i++)
  3196. iOrigin[i] = floatround(fOrigin[i]);
  3197.  
  3198. message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
  3199. write_byte(TE_EXPLOSION);
  3200. write_coord(iOrigin[0]);
  3201. write_coord(iOrigin[1]);
  3202. write_coord(iOrigin[2]);
  3203. write_short(sprite_blast);
  3204. write_byte(32);
  3205. write_byte(20);
  3206. write_byte(0);
  3207. message_end();
  3208.  
  3209. message_begin( MSG_BROADCAST, SVC_TEMPENTITY, iOrigin );
  3210. write_byte( TE_BEAMCYLINDER );
  3211. write_coord( iOrigin[0] );
  3212. write_coord( iOrigin[1] );
  3213. write_coord( iOrigin[2] );
  3214. write_coord( iOrigin[0] );
  3215. write_coord( iOrigin[1] + 250 );
  3216. write_coord( iOrigin[2] + 250 );
  3217. write_short( sprite_white );
  3218. write_byte( 0 );
  3219. write_byte( 0 );
  3220. write_byte( 10 );
  3221. write_byte( 10 );
  3222. write_byte( 255 );
  3223. write_byte( 255 );
  3224. write_byte( 100 );
  3225. write_byte( 100 );
  3226. write_byte( 128 );
  3227. write_byte( 0 );
  3228. message_end();
  3229.  
  3230. new entlist[33];
  3231. new numfound = find_sphere_class(meekstone_gracza[id], "player", 250.0 , entlist, 32);
  3232.  
  3233. for (new i=0; i < numfound; i++)
  3234. {
  3235. new pid = entlist[i];
  3236.  
  3237. if (is_user_alive(pid) && get_user_team(id) != get_user_team(pid))
  3238. ExecuteHam(Ham_TakeDamage, pid, meekstone_gracza[id], id, 95.0+inteligencja_gracza[id]*0.8, 1);
  3239.  
  3240. }
  3241. remove_entity(meekstone_gracza[id]);
  3242. return PLUGIN_CONTINUE;
  3243. }
  3244.  
  3245. new Float:origin[3];
  3246. entity_get_vector(id, EV_VEC_origin, origin);
  3247.  
  3248. meekstone_gracza[id] = create_entity("info_target");
  3249. entity_set_string(meekstone_gracza[id], EV_SZ_classname, "meekstone");
  3250. entity_set_edict(meekstone_gracza[id], EV_ENT_owner, id);
  3251. entity_set_int(meekstone_gracza[id], EV_INT_movetype, MOVETYPE_TOSS);
  3252. entity_set_origin(meekstone_gracza[id], origin);
  3253. entity_set_int(meekstone_gracza[id], EV_INT_solid, SOLID_BBOX);
  3254.  
  3255. entity_set_model(meekstone_gracza[id], "models/w_backpack.mdl");
  3256. entity_set_size(meekstone_gracza[id], Float:{-16.0,-16.0,0.0}, Float:{16.0,16.0,2.0});
  3257.  
  3258. drop_to_floor(meekstone_gracza[id]);
  3259.  
  3260. }
  3261.  
  3262. if(informacje_przedmiotu_gracza[id][0] == 85)
  3263. UzyjElektromagnes(id);
  3264.  
  3265. if(informacje_przedmiotu_gracza[id][0] == 87 && informacje_przedmiotu_gracza[id][1])
  3266. {
  3267. set_task(3.0, "Pusta", id+ZADANIE_ODBIJAJ);
  3268. informacje_przedmiotu_gracza[id][1] = 0;
  3269. }
  3270.  
  3271. if(informacje_przedmiotu_gracza[id][0] == 90 && !zatrzymaj_czas)
  3272. {
  3273. zatrzymaj_czas = id;
  3274. set_task(3.0, "Pusc");
  3275. UsunPrzedmiot(id);
  3276. }
  3277.  
  3278. if(ilosc_apteczek_gracza[id]>0)
  3279. StworzApteczke(id);
  3280. if(ilosc_rakiet_gracza[id]>0)
  3281. StworzRakiete(id);
  3282. if(ilosc_min_gracza[id]>0)
  3283. PostawMine(id);
  3284. if(ilosc_dynamitow_gracza[id]>0)
  3285. PolozDynamit(id);
  3286.  
  3287. return PLUGIN_HANDLED;
  3288. }
  3289.  
  3290. public Pusc()
  3291. zatrzymaj_czas = 0;
  3292.  
  3293. public Pusta(){}
  3294.  
  3295. public UzyjElektromagnes(id)
  3296. {
  3297. if (pozostale_elektromagnesy[id] < 1)
  3298. {
  3299. client_print(id, print_center, "Elektro Magnet je vec potrosen!");
  3300. return PLUGIN_CONTINUE;
  3301. }
  3302.  
  3303. pozostale_elektromagnesy[id]--;
  3304.  
  3305. new Float:origin[3];
  3306. entity_get_vector(id, EV_VEC_origin, origin);
  3307.  
  3308. new ent = create_entity("info_target");
  3309. entity_set_string(ent, EV_SZ_classname, "magnet");
  3310. entity_set_edict(ent, EV_ENT_owner, id);
  3311. entity_set_int(ent, EV_INT_solid, SOLID_NOT);
  3312. entity_set_vector(ent, EV_VEC_origin, origin);
  3313. entity_set_float(ent, EV_FL_ltime, halflife_time() + get_pcvar_num(pcvar_czas_dzialania) + 3.5);
  3314.  
  3315.  
  3316. entity_set_model(ent, "models/QTM_CodMod/electromagnet.mdl");
  3317. drop_to_floor(ent);
  3318.  
  3319. emit_sound(ent, CHAN_VOICE, "weapons/mine_charge.wav", 0.5, ATTN_NORM, 0, PITCH_NORM );
  3320. emit_sound(ent, CHAN_ITEM, "weapons/mine_deploy.wav", 0.5, ATTN_NORM, 0, PITCH_NORM );
  3321.  
  3322. entity_set_float(ent, EV_FL_nextthink, halflife_time() + 3.5);
  3323.  
  3324. return PLUGIN_CONTINUE;
  3325. }
  3326. public ZapiszDane(id)
  3327. {
  3328. new vaultkey[64],vaultdata[256];
  3329. format(vaultkey,63,"%s-%i-cod", nazwa_gracza[id], klasa_gracza[id]);
  3330. format(vaultdata,255,"%i#%i#%i#%i#%i#%i", doswiadczenie_gracza[id], poziom_gracza[id], inteligencja_gracza[id], zdrowie_gracza[id], wytrzymalosc_gracza[id], kondycja_gracza[id]);
  3331. nvault_set(g_vault,vaultkey,vaultdata);
  3332. }
  3333.  
  3334. public WczytajDane(id, klasa)
  3335. {
  3336. new vaultkey[64],vaultdata[256];
  3337. format(vaultkey,63,"%s-%i-cod", nazwa_gracza[id], klasa);
  3338. format(vaultdata,255,"%i#%i#%i#%i#%i#%i", doswiadczenie_gracza[id], poziom_gracza[id], inteligencja_gracza[id], zdrowie_gracza[id], wytrzymalosc_gracza[id], kondycja_gracza[id]);
  3339. nvault_get(g_vault,vaultkey,vaultdata,255);
  3340.  
  3341. replace_all(vaultdata, 255, "#", " ");
  3342.  
  3343. new doswiadczeniegracza[32], poziomgracza[32], inteligencjagracza[32], silagracza[32], zrecznoscgracza[32], zwinnoscgracza[32];
  3344.  
  3345. parse(vaultdata, doswiadczeniegracza, 31, poziomgracza, 31, inteligencjagracza, 31, silagracza, 31, zrecznoscgracza, 31, zwinnoscgracza, 31);
  3346.  
  3347. doswiadczenie_gracza[id] = str_to_num(doswiadczeniegracza);
  3348. poziom_gracza[id] = str_to_num(poziomgracza)>0?str_to_num(poziomgracza):1;
  3349. inteligencja_gracza[id] = str_to_num(inteligencjagracza);
  3350. zdrowie_gracza[id] = str_to_num(silagracza);
  3351. wytrzymalosc_gracza[id] = str_to_num(zrecznoscgracza);
  3352. kondycja_gracza[id] = str_to_num(zwinnoscgracza);
  3353. punkty_gracza[id] = (poziom_gracza[id]-1)*2-inteligencja_gracza[id]-zdrowie_gracza[id]-wytrzymalosc_gracza[id]-kondycja_gracza[id];
  3354. }
  3355. public WyrzucPrzedmiot(id)
  3356. {
  3357. if(informacje_przedmiotu_gracza[id][0])
  3358. {
  3359. ColorChat(id, RED, "[COD:MW3] ^x04 Bacio Si - ^x03 %s.", nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]]);
  3360. UsunPrzedmiot(id);
  3361. }
  3362. else
  3363. ColorChat(id, RED, "[COD:MW3] ^x04 Nemas Nijedan Predmet");
  3364. }
  3365.  
  3366. public UsunPrzedmiot(id)
  3367. {
  3368. informacje_przedmiotu_gracza[id][0] = 0;
  3369. informacje_przedmiotu_gracza[id][1] = 0;
  3370. if(is_user_alive(id)){
  3371. fm_set_user_footsteps(id, 0);
  3372. if(!informacje_przedmiotu_gracza[id][0] && klasa_gracza[id] != Partizan)
  3373. {
  3374. fm_set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 255);
  3375. }
  3376. ZmienUbranie(id, 1);
  3377. }
  3378. }
  3379. fnGreenChat( plr, const message[], {Float,Sql,Result,_}:... )
  3380. {
  3381. static max_players, svc_saytext;
  3382. if( !max_players )
  3383. max_players = get_maxplayers( );
  3384.  
  3385. if( !svc_saytext )
  3386. svc_saytext = get_user_msgid( "SayText" );
  3387.  
  3388. static msg[192];
  3389. msg[0] = 0x04;
  3390.  
  3391. vformat( msg[1], sizeof msg - 2, message, 3 );
  3392.  
  3393. if( plr > 0 && plr <= max_players )
  3394. {
  3395. message_begin( MSG_ONE, svc_saytext, { 0, 0, 0 }, plr );
  3396. write_byte( plr );
  3397. write_string( msg );
  3398. message_end( );
  3399. }
  3400. else if( plr == 0 )
  3401. {
  3402. for( new i = 1 ; i <= max_players ; i++ )
  3403. {
  3404. if( is_user_connected( i ) )
  3405. {
  3406. message_begin( MSG_ONE, svc_saytext, { 0, 0, 0 }, i );
  3407. write_byte( i );
  3408. write_string( msg );
  3409. message_end( );
  3410. }
  3411. }
  3412. }
  3413.  
  3414. return 1;
  3415. }
  3416.  
  3417. public DajPrzedmiot(id, przedmiot)
  3418. {
  3419. UsunPrzedmiot(id);
  3420. informacje_przedmiotu_gracza[id][0] = przedmiot;
  3421. new name[32]
  3422. get_user_name(id, name, 31)
  3423. fnGreenChat(0, "%s ^x01 Je dobio Predmet - ^x03 %s", name, nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]]);
  3424. wytrzymalosc_itemu[id] = 160;
  3425. switch(przedmiot)
  3426. {
  3427. case 1: fm_set_user_footsteps(id, 1);
  3428. case 2: informacje_przedmiotu_gracza[id][1] = random_num(3,6);
  3429. case 3: informacje_przedmiotu_gracza[id][1] = random_num(6, 11);
  3430. case 5: informacje_przedmiotu_gracza[id][1] = random_num(6, 9);
  3431. case 6:
  3432. {
  3433. informacje_przedmiotu_gracza[id][1] = random_num(120, 170);
  3434. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, informacje_przedmiotu_gracza[id][1]);
  3435. }
  3436. case 7: informacje_przedmiotu_gracza[id][1] = random_num(2, 4);
  3437. case 8:
  3438. {
  3439. if(klasa_gracza[id] == Strelac)
  3440. DajPrzedmiot(id, random_num(1, sizeof nazwy_przedmiotow-1));
  3441. }
  3442. case 9:
  3443. {
  3444. informacje_przedmiotu_gracza[id][1] = random_num(1, 3);
  3445. ZmienUbranie(id, 0);
  3446. }
  3447. case 10: informacje_przedmiotu_gracza[id][1] = random_num(4, 8);
  3448. case 12: informacje_przedmiotu_gracza[id][1] = random_num(1, 4);
  3449. case 15:
  3450. {
  3451. if(klasa_gracza[id] == Rambo)
  3452. DajPrzedmiot(id, random_num(1, sizeof nazwy_przedmiotow-1));
  3453. }
  3454. case 16: set_task(5.0, "WyszkolenieSanitarne", id+ZADANIE_WYSZKOLENIE_SANITARNE);
  3455. case 17: fm_set_user_armor(id, 500);
  3456. case 18:
  3457. {
  3458. maksymalne_zdrowie_gracza[id] += 100;
  3459. szybkosc_gracza[id] -= 0.4;
  3460. }
  3461. case 19: informacje_przedmiotu_gracza[id][1] = 1;
  3462. case 25:
  3463. {
  3464. maksymalne_zdrowie_gracza[id] += 50;
  3465. szybkosc_gracza[id] -= 0.3;
  3466. }
  3467. case 26: informacje_przedmiotu_gracza[id][1] = random_num(3, 6);
  3468. case 27: informacje_przedmiotu_gracza[id][1] = 3;
  3469. case 29:
  3470. {
  3471. maksymalne_zdrowie_gracza[id] += 50;
  3472. szybkosc_gracza[id] += 0.2;
  3473. }
  3474. case 30:
  3475. {
  3476. maksymalne_zdrowie_gracza[id] += 100;
  3477. szybkosc_gracza[id] -= 0.7;
  3478. }
  3479. case 31:
  3480. {
  3481. informacje_przedmiotu_gracza[id][1] = random_num(1, 3);
  3482. ZmienUbranie(id, 0);
  3483. }
  3484. case 34: informacje_przedmiotu_gracza[id][1] = random_num(2, 7);
  3485. case 35: informacje_przedmiotu_gracza[id][1] = random_num(3, 9);
  3486. case 36: maksymalne_zdrowie_gracza[id] = 10;
  3487. case 37: maksymalne_zdrowie_gracza[id] += 100;
  3488. case 38: ilosc_apteczek_gracza[id] = 5;
  3489. case 39: fm_set_user_gravity(id, 0.5);
  3490. case 40: informacje_przedmiotu_gracza[id][1] = 1;
  3491. case 41: set_task(5.0, "WyszkolenieSanitarne", id+ZADANIE_WYSZKOLENIE_SANITARNE);
  3492. case 43: szybkosc_gracza[id] += 0.3;
  3493. case 42:
  3494. {
  3495. fm_set_user_footsteps(id, 1);
  3496. maksymalne_zdrowie_gracza[id] += 100;
  3497. }
  3498. case 45: informacje_przedmiotu_gracza[id][1] = 1;
  3499. case 46:
  3500. {
  3501. informacje_przedmiotu_gracza[id][1] = random_num(4, 9);
  3502. fm_set_user_armor(id, 500);
  3503. }
  3504. case 47: informacje_przedmiotu_gracza[id][1] = 5;
  3505. case 49: informacje_przedmiotu_gracza[id][1] = 1;
  3506. case 50:
  3507. {
  3508. fm_set_user_footsteps(id, 1);
  3509. maksymalne_zdrowie_gracza[id] += 100;
  3510. szybkosc_gracza[id] += 0.4;
  3511. }
  3512. case 52: informacje_przedmiotu_gracza[id][1] = 1;
  3513. case 54:
  3514. {
  3515. fm_set_user_footsteps(id, 1);
  3516. fm_set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 1);
  3517. fm_set_user_gravity(id, 0.8);
  3518. }
  3519. case 55:
  3520. {
  3521. informacje_przedmiotu_gracza[id][1] = random_num(1, 3);
  3522. ZmienUbranie(id, 0);
  3523. }
  3524. case 56: informacje_przedmiotu_gracza[id][1] = random_num(7, 11);
  3525. case 57: informacje_przedmiotu_gracza[id][1] = random_num(7, 11);
  3526. case 58: fm_set_user_footsteps(id, 1);
  3527. case 59: fm_set_user_footsteps(id, 1);
  3528. case 60: informacje_przedmiotu_gracza[id][1] = random_num(3, 7);
  3529. case 61: ilosc_min_gracza[id] += 5;
  3530. case 62: informacje_przedmiotu_gracza[id][1] = random_num(4, 8);
  3531. case 64: cs_set_user_money(id,16000);
  3532. case 66: wytrzymalosc_itemu[id] = 80;
  3533. case 75: informacje_przedmiotu_gracza[id][1] = 1;
  3534. case 76: informacje_przedmiotu_gracza[id][1] = 1;
  3535. case 78: fm_set_user_gravity(id, 0.5);
  3536. case 79:
  3537. {
  3538. szybkosc_gracza[id] += 10;
  3539. ilosc_min_gracza[id] += 3;
  3540. }
  3541. case 80:
  3542. {
  3543. fm_give_item(id, "weapon_m3");
  3544. informacje_przedmiotu_gracza[id][1] = random_num(50, 100);
  3545. }
  3546. case 84: informacje_przedmiotu_gracza[id][1] = 1;
  3547. case 85: ResetHUD(id);
  3548. case 87: informacje_przedmiotu_gracza[id][1] = random_num(2, 4);
  3549. case 89:
  3550. {
  3551. szybkosc_gracza[id] *= 1.8;
  3552. UstawSzybkosc(id);
  3553. fm_set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 1);
  3554. fm_give_item(id, "weapon_hegrenade");
  3555. cs_set_user_bpammo(id, CSW_HEGRENADE, 15);
  3556. informacje_przedmiotu_gracza[id][1] = 1;
  3557. }
  3558. }
  3559. }
  3560.  
  3561. public OpisPrzedmiotu(id)
  3562. {
  3563. new opis_przedmiotu[128];
  3564. new losowa_wartosc[3];
  3565. num_to_str(informacje_przedmiotu_gracza[id][1], losowa_wartosc, 2);
  3566. format(opis_przedmiotu, 127, opisy_przedmiotow[informacje_przedmiotu_gracza[id][0]]);
  3567. replace_all(opis_przedmiotu, 127, "LW", losowa_wartosc);
  3568.  
  3569. ColorChat(id, NORMAL, "^4Predmet: ^1%s.", nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]]);
  3570. ColorChat(id, NORMAL, "^4Opis: ^1%s.", opis_przedmiotu);
  3571.  
  3572. }
  3573.  
  3574. public Wskrzes(id)
  3575. {
  3576. id-=ZADANIE_WSKRZES;
  3577. ExecuteHamB(Ham_CS_RoundRespawn, id);
  3578. }
  3579.  
  3580. public SprawdzPoziom(id)
  3581. {
  3582. if(poziom_gracza[id] < 201)
  3583. {
  3584. while(doswiadczenie_gracza[id] >= doswiadczenie_poziomu[poziom_gracza[id]])
  3585. {
  3586. poziom_gracza[id]++;
  3587. set_hudmessage(60, 200, 25, -1.0, 0.25, 0, 1.0, 2.0, 0.1, 0.2, 2);
  3588. ShowSyncHudMsg(id, SyncHudObj3, "Dobro dosli na sledeci nivo");
  3589. client_cmd(id, "spk QTM_CodMod/levelup");
  3590. }
  3591.  
  3592. while(doswiadczenie_gracza[id] < doswiadczenie_poziomu[poziom_gracza[id]-1])
  3593. poziom_gracza[id]--;
  3594.  
  3595. punkty_gracza[id] = (poziom_gracza[id]-1)*2-inteligencja_gracza[id]-zdrowie_gracza[id]-wytrzymalosc_gracza[id]-kondycja_gracza[id];
  3596. }
  3597. ZapiszDane(id);
  3598. }
  3599.  
  3600. public message_health(msg_id,msg_dest,msg_entity)
  3601. {
  3602. if(pev(msg_entity, pev_health) >= 255)
  3603. {
  3604. set_msg_arg_int(1, ARG_BYTE, 255);
  3605. }
  3606. return PLUGIN_CONTINUE;
  3607. }
  3608.  
  3609. public PokazInformacje(id)
  3610. {
  3611. id -= ZADANIE_POKAZ_INFORMACJE;
  3612. set_task(0.1, "PokazInformacje", id+ZADANIE_POKAZ_INFORMACJE);
  3613.  
  3614. if(is_user_connected(id) && !is_user_alive(id))
  3615. {
  3616. new target = entity_get_int(id, EV_INT_iuser2);
  3617.  
  3618. if(target == 0)
  3619. return PLUGIN_CONTINUE;
  3620.  
  3621. set_hudmessage(0, 255, 0, 0.6, -1.0, 0, 0.0, 0.3, 0.0, 0.0, 2);
  3622. ShowSyncHudMsg(id, SyncHudObj, "Klasa : %s^nIskustvo : %i / %i^nLevel : %i^nPredmet : %s ^nKillStreak: x%i", nazwy_klas[klasa_gracza[target]], doswiadczenie_gracza[target], doswiadczenie_poziomu[poziom_gracza[target]], poziom_gracza[target], nazwy_przedmiotow[informacje_przedmiotu_gracza[target][0]], licznik_zabic[target]);
  3623.  
  3624. return PLUGIN_CONTINUE;
  3625. }
  3626. set_hudmessage(0, 255, 0, 0.02, 0.17, 0, 0.0, 0.3, 0.0, 0.0);
  3627. ShowSyncHudMsg(id, SyncHudObj, "[Klasa : %s]^n[Iskustvo: %i / %i]^n[Level : %i]^n[Predmet: %s]^n[Snaga: %i]^n[Energija: %i]^n[KillStreak: x%i]", nazwy_klas[klasa_gracza[id]], doswiadczenie_gracza[id], doswiadczenie_poziomu[poziom_gracza[id]], poziom_gracza[id], nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]],wytrzymalosc_itemu[id], get_user_health(id), licznik_zabic[id]);
  3628.  
  3629. return PLUGIN_CONTINUE;
  3630. }
  3631.  
  3632. public PokazReklame(id)
  3633. {
  3634. id-=ZADANIE_POKAZ_REKLAME;
  3635. if( -1 < get_user_team(id) < 4){
  3636. ColorChat(0, GREEN, "[COD:MW3] ^1Dobro Dosli Na COD:MW3 Mod by ^3RaZoR");
  3637. }
  3638. return PLUGIN_CONTINUE
  3639.  
  3640. }
  3641. public UstawSzybkosc(id)
  3642. {
  3643. id -= id>32? ZADANIE_USTAW_SZYBKOSC: 0;
  3644.  
  3645. if(klasa_gracza[id])
  3646. fm_set_user_maxspeed(id, szybkosc_gracza[id]);
  3647. }
  3648.  
  3649. public ZmienUbranie(id,reset)
  3650. {
  3651. if (id<1 || id>32 || !is_user_connected(id))
  3652. return PLUGIN_CONTINUE;
  3653.  
  3654. if (reset)
  3655. cs_reset_user_model(id);
  3656. else
  3657. {
  3658. new num = random_num(0,3);
  3659. switch(get_user_team(id))
  3660. {
  3661. case 1: cs_set_user_model(id, Ubrania_CT[num]);
  3662. case 2:cs_set_user_model(id, Ubrania_Terro[num]);
  3663. }
  3664. }
  3665.  
  3666. return PLUGIN_CONTINUE;
  3667. }
  3668. public WylaczPomoc(id)
  3669. {
  3670. if(pomocs[id] == true)
  3671. {
  3672. pomocs[id] = false;
  3673. set_hudmessage(255, 0, 0, -1.0, 0.01)
  3674. show_hudmessage(id, "Pomoce je onemogucena")
  3675. }
  3676. else if(pomocs[id] == false)
  3677. {
  3678. pomocs[id] = true;
  3679. Pomoc();
  3680. set_hudmessage(255, 0, 0, -1.0, 0.01)
  3681. show_hudmessage(id, "Pomoc Ukljucena")
  3682. }
  3683. }
  3684. public Pomoc()
  3685. {
  3686. switch(random(8))
  3687. {
  3688. case 0:
  3689. {
  3690. ColorChat(0, GREEN, "[COD:MW3] ^1Da resetujes level-e,kucaj ^3/reset")
  3691. }
  3692. case 1:
  3693. {
  3694. ColorChat(0, GREEN, "[COD:MW3] ^1Da promenis klasu,kucaj ^3/klasa")
  3695. }
  3696. case 2:
  3697. {
  3698. ColorChat(0, GREEN, "[COD:MW3] ^1Da koristis predmete (mine, rakete), stisni ^3E")
  3699. }
  3700. case 3:
  3701. {
  3702. ColorChat(0, GREEN, "[COD:MW3] ^1Da izbacis predmet,kucaj ^3/izbaci")
  3703. }
  3704. case 4:
  3705. {
  3706. ColorChat(0, GREEN, "[COD:MW3] ^1Da vidis opis predmeta,kucaj ^3/predmet")
  3707. }
  3708. case 5:
  3709. {
  3710. ColorChat(0, GREEN, "[COD:MW3] ^1Da vidis opis klase,kucaj ^3/opis")
  3711. }
  3712. case 6:
  3713. {
  3714. ColorChat(0, GREEN, "[COD:MW3] ^1Da otvoris COD:MW Shop,kucaj ^3/shop")
  3715. }
  3716. case 7:
  3717. {
  3718. ColorChat(0, GREEN, "[COD:MW3] ^1Ako zelis nekom da das predmet kucaj, ^3/daj")
  3719. }
  3720. }
  3721. set_task(40.0, "Pomoc")
  3722. }
  3723. public cmd_setlvl(id, level, cid)
  3724. {
  3725. if(!cmd_access(id,level,cid,3))
  3726. return PLUGIN_HANDLED;
  3727. new arg1[33];
  3728. new arg2[6];
  3729. read_argv(1, arg1, 32);
  3730. read_argv(2, arg2, 5);
  3731. new player = cmd_target(id, arg1);
  3732. if(!is_user_connected(player))
  3733. return PLUGIN_HANDLED;
  3734. new value = str_to_num(arg2)-1;
  3735.  
  3736. doswiadczenie_gracza[player] = doswiadczenie_poziomu[value];
  3737. poziom_gracza[player] = 0;
  3738. SprawdzPoziom(player);
  3739. return PLUGIN_HANDLED;
  3740. }
  3741.  
  3742. public DotykBroni(weapon,id)
  3743. {
  3744. new model[23];
  3745. entity_get_string(weapon, EV_SZ_model, model, 22);
  3746. if (!is_user_connected(id) || entity_get_edict(weapon, EV_ENT_owner) == id || equal(model, "models/w_backpack.mdl"))
  3747. return HAM_IGNORED;
  3748. return HAM_SUPERCEDE;
  3749. }
  3750.  
  3751. public BlokujKomende()
  3752. return PLUGIN_HANDLED;
  3753.  
  3754. stock bool:UTIL_In_FOV(id,target)
  3755. {
  3756. if (Find_Angle(id,target,9999.9) > 0.0)
  3757. return true;
  3758.  
  3759. return false;
  3760. }
  3761. #if defined BOTY
  3762. public is_user_bot2(id)
  3763. {
  3764. new ping, loss
  3765. get_user_ping(id, ping, loss)
  3766. if(ping > 0 && loss > 0)
  3767. return false
  3768. return true
  3769. }
  3770. #endif
  3771.  
  3772. stock Float:Find_Angle(Core,Target,Float:dist)
  3773. {
  3774. new Float:vec2LOS[2];
  3775. new Float:flDot;
  3776. new Float:CoreOrigin[3];
  3777. new Float:TargetOrigin[3];
  3778. new Float:CoreAngles[3];
  3779.  
  3780. pev(Core,pev_origin,CoreOrigin);
  3781. pev(Target,pev_origin,TargetOrigin);
  3782.  
  3783. if (get_distance_f(CoreOrigin,TargetOrigin) > dist)
  3784. return 0.0;
  3785.  
  3786. pev(Core,pev_angles, CoreAngles);
  3787.  
  3788. for ( new i = 0; i < 2; i++ )
  3789. vec2LOS[i] = TargetOrigin[i] - CoreOrigin[i];
  3790.  
  3791. new Float:veclength = Vec2DLength(vec2LOS);
  3792.  
  3793. //Normalize V2LOS
  3794. if (veclength <= 0.0)
  3795. {
  3796. vec2LOS[0] = 0.0;
  3797. vec2LOS[1] = 0.0;
  3798. }
  3799. else
  3800. {
  3801. new Float:flLen = 1.0 / veclength;
  3802. vec2LOS[0] = vec2LOS[0]*flLen;
  3803. vec2LOS[1] = vec2LOS[1]*flLen;
  3804. }
  3805.  
  3806. //Do a makevector to make v_forward right
  3807. engfunc(EngFunc_MakeVectors,CoreAngles);
  3808.  
  3809. new Float:v_forward[3];
  3810. new Float:v_forward2D[2];
  3811. get_global_vector(GL_v_forward, v_forward);
  3812.  
  3813. v_forward2D[0] = v_forward[0];
  3814. v_forward2D[1] = v_forward[1];
  3815.  
  3816. flDot = vec2LOS[0]*v_forward2D[0]+vec2LOS[1]*v_forward2D[1];
  3817.  
  3818. if ( flDot > 0.5 )
  3819. {
  3820. return flDot;
  3821. }
  3822.  
  3823. return 0.0;
  3824. }
  3825.  
  3826. stock Float:Vec2DLength( Float:Vec[2] )
  3827. {
  3828. return floatsqroot(Vec[0]*Vec[0] + Vec[1]*Vec[1] );
  3829. }
  3830.  
  3831. stock Display_Fade(id,duration,holdtime,fadetype,red,green,blue,alpha)
  3832. {
  3833. message_begin( MSG_ONE, g_msg_screenfade,{0,0,0},id );
  3834. write_short( duration ); // Duration of fadeout
  3835. write_short( holdtime ); // Hold time of color
  3836. write_short( fadetype ); // Fade type
  3837. write_byte ( red ); // Red
  3838. write_byte ( green ); // Green
  3839. write_byte ( blue ); // Blue
  3840. write_byte ( alpha ); // Alpha
  3841. message_end();
  3842. }
  3843.  
  3844. stock set_user_clip(id, ammo)
  3845. {
  3846. new weaponname[32], weaponid = -1, weapon = get_user_weapon(id, _, _);
  3847. get_weaponname(weapon, weaponname, 31);
  3848. while ((weaponid = find_ent_by_class(weaponid, weaponname)) != 0)
  3849. if(entity_get_edict(weaponid, EV_ENT_owner) == id)
  3850. {
  3851. set_pdata_int(weaponid, 51, ammo, 4);
  3852. return weaponid;
  3853. }
  3854. return 0;
  3855. }
  3856.  
  3857. public client_death(killer,victim,weapon,hitplace,TK) {
  3858.  
  3859. if(!killer || !victim || TK)
  3860. return;
  3861.  
  3862. if(hitplace == HIT_HEAD)
  3863. {
  3864.  
  3865. doswiadczenie_gracza[killer] += doswiadczenie_za_hs;
  3866.  
  3867. ColorChat(killer, RED, "[COD:MW3] ^x01 Dobio si ^x03 %i ^x01 iskustvo jer si pogodio u glavu.", doswiadczenie_za_hs);
  3868.  
  3869. }
  3870. }
  3871.  
  3872. public message_clcorpse()
  3873. return PLUGIN_HANDLED
  3874.  
  3875. public event_hltv()
  3876. {
  3877. fm_remove_entity_name("fake_corpse")
  3878.  
  3879. static players[32], num
  3880. get_players(players, num, "a")
  3881. for(new i = 0; i < num; ++i)
  3882. reset_player(players[i])
  3883. }
  3884.  
  3885. public reset_player(id)
  3886. {
  3887. if(!is_user_connected(id))
  3888. return PLUGIN_HANDLED;
  3889. remove_task(TASKID_REVIVE + id)
  3890. remove_task(TASKID_RESPAWN + id)
  3891. remove_task(TASKID_CHECKRE + id)
  3892. remove_task(TASKID_CHECKST + id)
  3893. remove_task(TASKID_ORIGIN + id)
  3894. remove_task(TASKID_SETUSER + id)
  3895.  
  3896. msg_bartime(id, 0)
  3897. g_revive_delay[id] = 0.0
  3898. g_wasducking[id] = false
  3899. g_body_origin[id] = Float:{0.0, 0.0, 0.0}
  3900. return PLUGIN_HANDLED;
  3901. }
  3902.  
  3903. public event_death()
  3904. {
  3905. new id = read_data(2)
  3906.  
  3907. reset_player(id)
  3908.  
  3909. static Float:minsize[3]
  3910. pev(id, pev_mins, minsize)
  3911.  
  3912. if(minsize[2] == -18.0)
  3913. g_wasducking[id] = true
  3914. else
  3915. g_wasducking[id] = false
  3916.  
  3917. set_task(0.5, "task_check_dead_flag", id)
  3918.  
  3919. if(read_data(1)<=maxplayers && read_data(1) && read_data(1)!=read_data(2)) cs_set_user_money(read_data(1),cs_get_user_money(read_data(1)) + get_pcvar_num(mkb) - 300)
  3920. }
  3921.  
  3922. public fwd_playerpostthink(id)
  3923. {
  3924. if(!is_user_connected(id) || !g_haskit[id])
  3925. return FMRES_IGNORED
  3926.  
  3927. if(!is_user_alive(id))
  3928. {
  3929. msg_statusicon(id, ICON_HIDE)
  3930. return FMRES_IGNORED
  3931. }
  3932.  
  3933. new body = find_dead_body(id)
  3934. if(fm_is_valid_ent(body))
  3935. {
  3936. new lucky_bastard = pev(body, pev_owner)
  3937.  
  3938. if(!is_user_connected(lucky_bastard))
  3939. return FMRES_IGNORED
  3940.  
  3941. new lb_team = get_user_team(lucky_bastard)
  3942. new rev_team = get_user_team(id)
  3943. if(lb_team == 1 || lb_team == 2 && lb_team == rev_team)
  3944. msg_statusicon(id, ICON_FLASH)
  3945. }
  3946. else
  3947. msg_statusicon(id, ICON_SHOW)
  3948.  
  3949. return FMRES_IGNORED
  3950. }
  3951.  
  3952. public task_check_dead_flag(id)
  3953. {
  3954. if(!is_user_connected(id))
  3955. return
  3956.  
  3957. if(pev(id, pev_deadflag) == DEAD_DEAD)
  3958. create_fake_corpse(id)
  3959. else
  3960. set_task(0.5, "task_check_dead_flag", id)
  3961. }
  3962.  
  3963. public create_fake_corpse(id)
  3964. {
  3965. set_pev(id, pev_effects, EF_NODRAW)
  3966.  
  3967. static model[32]
  3968. cs_get_user_model(id, model, 31)
  3969.  
  3970. static player_model[64]
  3971. format(player_model, 63, "models/player/%s/%s.mdl", model, model)
  3972.  
  3973. static Float: player_origin[3]
  3974. pev(id, pev_origin, player_origin)
  3975.  
  3976. static Float:mins[3]
  3977. mins[0] = -16.0
  3978. mins[1] = -16.0
  3979. mins[2] = -34.0
  3980.  
  3981. static Float:maxs[3]
  3982. maxs[0] = 16.0
  3983. maxs[1] = 16.0
  3984. maxs[2] = 34.0
  3985.  
  3986. if(g_wasducking[id])
  3987. {
  3988. mins[2] /= 2
  3989. maxs[2] /= 2
  3990. }
  3991.  
  3992. static Float:player_angles[3]
  3993. pev(id, pev_angles, player_angles)
  3994. player_angles[2] = 0.0
  3995.  
  3996. new sequence = pev(id, pev_sequence)
  3997.  
  3998. new ent = fm_create_entity("info_target")
  3999. if(ent)
  4000. {
  4001. set_pev(ent, pev_classname, "fake_corpse")
  4002. engfunc(EngFunc_SetModel, ent, player_model)
  4003. engfunc(EngFunc_SetOrigin, ent, player_origin)
  4004. engfunc(EngFunc_SetSize, ent, mins, maxs)
  4005. set_pev(ent, pev_solid, SOLID_TRIGGER)
  4006. set_pev(ent, pev_movetype, MOVETYPE_TOSS)
  4007. set_pev(ent, pev_owner, id)
  4008. set_pev(ent, pev_angles, player_angles)
  4009. set_pev(ent, pev_sequence, sequence)
  4010. set_pev(ent, pev_frame, 9999.9)
  4011. }
  4012. }
  4013.  
  4014. public fwd_emitsound(id, channel, sound[])
  4015. {
  4016. if(!is_user_alive(id) || !g_haskit[id])
  4017. return FMRES_IGNORED
  4018.  
  4019. if(!equali(sound, "common/wpn_denyselect.wav"))
  4020. return FMRES_IGNORED
  4021.  
  4022. if(task_exists(TASKID_REVIVE + id))
  4023. return FMRES_IGNORED
  4024.  
  4025. if(!(fm_get_user_button(id) & IN_USE))
  4026. return FMRES_IGNORED
  4027.  
  4028. new body = find_dead_body(id)
  4029. if(!fm_is_valid_ent(body))
  4030. return FMRES_IGNORED
  4031.  
  4032. new lucky_bastard = pev(body, pev_owner)
  4033. new lb_team = get_user_team(lucky_bastard)
  4034. new rev_team = get_user_team(id)
  4035. if(lb_team != 1 && lb_team != 2 || lb_team != rev_team)
  4036. return FMRES_IGNORED
  4037.  
  4038. static name[32]
  4039. get_user_name(lucky_bastard, name, 31)
  4040. client_print(id, print_chat, "Reanimacja %s", name)
  4041.  
  4042. new revivaltime = get_pcvar_num(cvar_revival_time)
  4043. msg_bartime(id, revivaltime)
  4044.  
  4045. new Float:gametime = get_gametime()
  4046. g_revive_delay[id] = gametime + float(revivaltime) - 0.01
  4047.  
  4048. emit_sound(id, CHAN_AUTO, SOUND_START, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
  4049. set_task(0.0, "task_revive", TASKID_REVIVE + id)
  4050.  
  4051. return FMRES_SUPERCEDE
  4052. }
  4053.  
  4054. public task_revive(taskid)
  4055. {
  4056. new id = taskid - TASKID_REVIVE
  4057.  
  4058. if(!is_user_alive(id))
  4059. {
  4060. failed_revive(id)
  4061. return FMRES_IGNORED
  4062. }
  4063.  
  4064. if(!(fm_get_user_button(id) & IN_USE))
  4065. {
  4066. failed_revive(id)
  4067. return FMRES_IGNORED
  4068. }
  4069.  
  4070. new body = find_dead_body(id)
  4071. if(!fm_is_valid_ent(body))
  4072. {
  4073. failed_revive(id)
  4074. return FMRES_IGNORED
  4075. }
  4076.  
  4077. new lucky_bastard = pev(body, pev_owner)
  4078. if(!is_user_connected(lucky_bastard))
  4079. {
  4080. failed_revive(id)
  4081. return FMRES_IGNORED
  4082. }
  4083.  
  4084. new lb_team = get_user_team(lucky_bastard)
  4085. new rev_team = get_user_team(id)
  4086. if(lb_team != 1 && lb_team != 2 || lb_team != rev_team)
  4087. {
  4088. failed_revive(id)
  4089. return FMRES_IGNORED
  4090. }
  4091.  
  4092. static Float:velocity[3]
  4093. pev(id, pev_velocity, velocity)
  4094. velocity[0] = 0.0
  4095. velocity[1] = 0.0
  4096. set_pev(id, pev_velocity, velocity)
  4097.  
  4098. new Float:gametime = get_gametime()
  4099. if(g_revive_delay[id] < gametime)
  4100. {
  4101. if(findemptyloc(body, 10.0))
  4102. {
  4103. fm_remove_entity(body)
  4104. emit_sound(id, CHAN_AUTO, SOUND_FINISHED, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
  4105. set_task(0.1, "task_respawn", TASKID_RESPAWN + lucky_bastard)
  4106. }
  4107. else
  4108. failed_revive(id)
  4109. }
  4110. else
  4111. set_task(0.1, "task_revive", TASKID_REVIVE + id)
  4112.  
  4113. return FMRES_IGNORED
  4114. }
  4115.  
  4116. public failed_revive(id)
  4117. {
  4118. msg_bartime(id, 0)
  4119. emit_sound(id, CHAN_AUTO, SOUND_FAILED, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
  4120. }
  4121.  
  4122. public task_origin(taskid)
  4123. {
  4124. new id = taskid - TASKID_ORIGIN
  4125. engfunc(EngFunc_SetOrigin, id, g_body_origin[id])
  4126.  
  4127. static Float:origin[3]
  4128. pev(id, pev_origin, origin)
  4129. set_pev(id, pev_zorigin, origin[2])
  4130.  
  4131. set_task(0.1, "task_stuck_check", TASKID_CHECKST + id)
  4132. }
  4133.  
  4134. stock find_dead_body(id)
  4135. {
  4136. static Float:origin[3]
  4137. pev(id, pev_origin, origin)
  4138.  
  4139. new ent
  4140. static classname[32]
  4141. while((ent = fm_find_ent_in_sphere(ent, origin, get_pcvar_float(cvar_revival_dis))) != 0)
  4142. {
  4143. pev(ent, pev_classname, classname, 31)
  4144. if(equali(classname, "fake_corpse") && fm_is_ent_visible(id, ent))
  4145. return ent
  4146. }
  4147. return 0
  4148. }
  4149.  
  4150. stock msg_bartime(id, seconds)
  4151. {
  4152. if(is_user_bot(id))
  4153. return
  4154.  
  4155. message_begin(MSG_ONE, g_msg_bartime, _, id)
  4156. write_byte(seconds)
  4157. write_byte(0)
  4158. message_end()
  4159. }
  4160.  
  4161. stock msg_statusicon(id, status)
  4162. {
  4163. if(is_user_bot(id))
  4164. return
  4165.  
  4166. message_begin(MSG_ONE, g_msg_statusicon, _, id)
  4167. write_byte(status)
  4168. write_string("rescue")
  4169. write_byte(0)
  4170. write_byte(160)
  4171. write_byte(0)
  4172. message_end()
  4173. }
  4174.  
  4175. public task_respawn(taskid)
  4176. {
  4177. new id = taskid - TASKID_RESPAWN
  4178.  
  4179. set_pev(id, pev_deadflag, DEAD_RESPAWNABLE)
  4180. dllfunc(DLLFunc_Spawn, id)
  4181. set_pev(id, pev_iuser1, 0)
  4182.  
  4183. set_task(0.1, "task_check_respawn", TASKID_CHECKRE + id)
  4184. }
  4185.  
  4186. public task_check_respawn(taskid)
  4187. {
  4188. new id = taskid - TASKID_CHECKRE
  4189.  
  4190. if(pev(id, pev_iuser1))
  4191. set_task(0.1, "task_respawn", TASKID_RESPAWN + id)
  4192. else
  4193. set_task(0.1, "task_origin", TASKID_ORIGIN + id)
  4194. }
  4195.  
  4196. public task_stuck_check(taskid)
  4197. {
  4198. new id = taskid - TASKID_CHECKST
  4199.  
  4200. static Float:origin[3]
  4201. pev(id, pev_origin, origin)
  4202.  
  4203. if(origin[2] == pev(id, pev_zorigin))
  4204. set_task(0.1, "task_respawn", TASKID_RESPAWN + id)
  4205. else
  4206. set_task(0.1, "task_setplayer", TASKID_SETUSER + id)
  4207. }
  4208.  
  4209. public task_setplayer(taskid)
  4210. {
  4211. new id = taskid - TASKID_SETUSER
  4212.  
  4213. fm_set_user_health(id, get_pcvar_num(cvar_revival_health))
  4214.  
  4215. message_begin(MSG_ONE,g_msg_screenfade, _, id)
  4216. write_short(seconds(2))
  4217. write_short(seconds(2))
  4218. write_short(0)
  4219. write_byte(0)
  4220. write_byte(0)
  4221. write_byte(0)
  4222. write_byte(255)
  4223. message_end()
  4224. }
  4225.  
  4226.  
  4227. stock bool:findemptyloc(ent, Float:radius)
  4228. {
  4229. if(!fm_is_valid_ent(ent))
  4230. return false
  4231.  
  4232. static Float:origin[3]
  4233. pev(ent, pev_origin, origin)
  4234. origin[2] += 2.0
  4235.  
  4236. new owner = pev(ent, pev_owner)
  4237. new num = 0, bool:found = false
  4238.  
  4239. while(num <= 100)
  4240. {
  4241. if(is_hull_vacant(origin))
  4242. {
  4243. g_body_origin[owner][0] = origin[0]
  4244. g_body_origin[owner][1] = origin[1]
  4245. g_body_origin[owner][2] = origin[2]
  4246.  
  4247. found = true
  4248. break
  4249. }
  4250. else
  4251. {
  4252. origin[0] += random_float(-radius, radius)
  4253. origin[1] += random_float(-radius, radius)
  4254. origin[2] += random_float(-radius, radius)
  4255.  
  4256. num++
  4257. }
  4258. }
  4259. return found
  4260. }
  4261.  
  4262. stock bool:is_hull_vacant(const Float:origin[3])
  4263. {
  4264. new tr = 0
  4265. engfunc(EngFunc_TraceHull, origin, origin, 0, HULL_HUMAN, 0, tr)
  4266. if(!get_tr2(tr, TR_StartSolid) && !get_tr2(tr, TR_AllSolid) && get_tr2(tr, TR_InOpen))
  4267. return true
  4268.  
  4269. return false
  4270. }
  4271. public godon(id)
  4272. {
  4273. fm_set_user_godmode(id, 1) // Tutaj mo¿emy np, daæ coœ co bêdzie uruchomione w trakcie odliczania ja da³em GodMode
  4274.  
  4275. Odliczanie[id] = 4 // nasza zmienna + czas ile ma odliczaæ do zera w tym przypadku 4 sekundy
  4276.  
  4277. if(task_exists(id + 3431))
  4278. {
  4279. remove_task(id + 3431)
  4280. }
  4281. set_task(1.0, "godoff", id + 3431, _, _, "b")
  4282.  
  4283. return PLUGIN_CONTINUE
  4284. }
  4285. public godoff(task_id)
  4286. {
  4287. new id = task_id - 3431
  4288.  
  4289. set_hudmessage(0, 255, 0, 0.03, 0.76, 2, 0.02, 1.0, 0.01)
  4290. show_hudmessage(id, "Za %d sekundi gubite besmrtnost.", Odliczanie[id]) //WiadomoϾ pokazana w HUD'zie
  4291.  
  4292. Odliczanie[id] -= 1
  4293.  
  4294. if(Odliczanie[id] <= 0)
  4295. {
  4296. if(task_exists(task_id))
  4297. {
  4298. remove_task(task_id)
  4299. }
  4300. fm_set_user_godmode(id, 0); // tutaj wy³¹cza goodmoda
  4301. }
  4302. }
  4303. public clipon(id)
  4304. {
  4305. fm_set_user_noclip(id, 1) // Tutaj mo¿emy np, daæ coœ co bêdzie uruchomione w trakcie odliczania ja da³em noclip
  4306.  
  4307. Odliczanie[id] = 9 // nasza zmienna + czas ile ma odliczaæ do zera w tym przypadku 9sekund
  4308.  
  4309. if(task_exists(id + 3431))
  4310. {
  4311. remove_task(id + 3431)
  4312. }
  4313. set_task(1.0, "clipoff", id + 3431, _, _, "b")
  4314.  
  4315. return PLUGIN_CONTINUE
  4316. }
  4317. public clipoff(task_id)
  4318. {
  4319. new id = task_id - 3431
  4320.  
  4321. set_hudmessage(0, 255, 0, 0.03, 0.76, 2, 0.02, 1.0, 0.01)
  4322. show_hudmessage(id, "Za %d sekundi gubite nevidljivost", Odliczanie[id]) //WiadomoϾ pokazana w HUD'zie
  4323.  
  4324. Odliczanie[id] -= 1
  4325.  
  4326. if(Odliczanie[id] <= 0)
  4327. {
  4328. if(task_exists(task_id))
  4329. {
  4330. remove_task(task_id)
  4331. }
  4332. fm_set_user_noclip(id, 0); // tutaj wy³¹cza noclipa
  4333. }
  4334. }
  4335.  
  4336. public client_PreThink(id) {
  4337. if (entity_get_int(id, EV_INT_button) & 2 && informacje_przedmiotu_gracza[id][0] == 44) {
  4338. new flags = entity_get_int(id, EV_INT_flags)
  4339.  
  4340. if (flags & FL_WATERJUMP)
  4341. return PLUGIN_CONTINUE
  4342. if ( entity_get_int(id, EV_INT_waterlevel) >= 2 )
  4343. return PLUGIN_CONTINUE
  4344. if ( !(flags & FL_ONGROUND) )
  4345. return PLUGIN_CONTINUE
  4346.  
  4347. new Float:velocity[3]
  4348. entity_get_vector(id, EV_VEC_velocity, velocity)
  4349. velocity[2] += 250.0
  4350. entity_set_vector(id, EV_VEC_velocity, velocity)
  4351.  
  4352. entity_set_int(id, EV_INT_gaitsequence, 6)
  4353. }
  4354. return PLUGIN_CONTINUE
  4355. }
  4356.  
  4357. public fw_traceline(Float:vecStart[3],Float:vecEnd[3],ignoreM,id,trace)
  4358. {
  4359. if(!is_user_connected(id))
  4360. return;
  4361.  
  4362. new hit = get_tr2(trace, TR_pHit);
  4363.  
  4364. if(!is_user_connected(hit))
  4365. return;
  4366.  
  4367. new hitzone = get_tr2(trace, TR_iHitgroup);
  4368. if((informacje_przedmiotu_gracza[hit][0] == 65 && hitzone == HIT_HEAD) || informacje_przedmiotu_gracza[hit][0] == 66 && hitzone != HIT_HEAD)
  4369. set_tr2(trace, TR_iHitgroup, 8);
  4370.  
  4371. if(informacje_przedmiotu_gracza[id][0] == 69 && !random(10) && get_user_weapon(id) == CSW_AWP)
  4372. set_tr2(trace, TR_iHitgroup, HIT_HEAD);
  4373. }
  4374.  
  4375. public WygranaTerro()
  4376. WygranaRunda("TERRORIST");
  4377.  
  4378. public WygranaCT()
  4379. WygranaRunda("CT");
  4380.  
  4381. public WygranaRunda(const Team[])
  4382. {
  4383. new Players[32], playerCount, id;
  4384. get_players(Players, playerCount, "aeh", Team);
  4385.  
  4386. if(get_playersnum() < 3)
  4387. return;
  4388.  
  4389. for (new i=0; i<playerCount; i++)
  4390. {
  4391. id = Players[i];
  4392. if(!klasa_gracza[id] && !is_user_connected(id))
  4393. continue;
  4394.  
  4395. doswiadczenie_gracza[id] += doswiadczenie_za_wygrana;
  4396. ColorChat(id, RED, "[COD:MW3] ^x01 Dobio si %i iskustvo za pobedjenu rundu.", doswiadczenie_za_wygrana);
  4397. SprawdzPoziom(id);
  4398. }
  4399. }
  4400.  
  4401. public OddajPrzedmiot(id)
  4402. {
  4403. new menu = menu_create("Oddaj przedmiot", "OddajPrzedmiot_Handle");
  4404. new cb = menu_makecallback("OddajPrzedmiot_Callback");
  4405. new numer_przedmiotu;
  4406. for(new i=0; i<=32; i++)
  4407. {
  4408. if(!is_user_connected(i))
  4409. continue;
  4410. oddaj_id[numer_przedmiotu++] = i;
  4411. menu_additem(menu, nazwa_gracza[i], "0", 0, cb);
  4412. }
  4413. menu_display(id, menu);
  4414. }
  4415.  
  4416. public OddajPrzedmiot_Handle(id, menu, item)
  4417. {
  4418. if(item < 1 || item > 32) return PLUGIN_CONTINUE;
  4419.  
  4420. if(!is_user_connected(oddaj_id[item]))
  4421. {
  4422. client_print(id, print_chat, "Igrac nije pronadjen.");
  4423. return PLUGIN_CONTINUE;
  4424. }
  4425. if(dostal_przedmiot[id])
  4426. {
  4427. client_print(id, print_chat, "Morate sacekati sledecu rundu");
  4428. return PLUGIN_CONTINUE;
  4429. }
  4430. if(!informacje_przedmiotu_gracza[id][0])
  4431. {
  4432. client_print(id, print_chat, "Nemate nijedan predmet.");
  4433. return PLUGIN_CONTINUE;
  4434. }
  4435. if(informacje_przedmiotu_gracza[oddaj_id[item]][0])
  4436. {
  4437. client_print(id, print_chat, "Ovaj igrac vec ima predmet.");
  4438. return PLUGIN_CONTINUE;
  4439. }
  4440. dostal_przedmiot[oddaj_id[item]] = true;
  4441. DajPrzedmiot(oddaj_id[item], informacje_przedmiotu_gracza[id][0]);
  4442. informacje_przedmiotu_gracza[oddaj_id[item]][1] = informacje_przedmiotu_gracza[id][1];
  4443. client_print(id, print_chat, "Nagradio %s Igraca %s.",nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]] , nazwa_gracza[oddaj_id[item]]);
  4444. client_print(oddaj_id[item], print_chat, "Dobio %s od igraca %s.",nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]] , nazwa_gracza[id]);
  4445. UsunPrzedmiot(id);
  4446. return PLUGIN_CONTINUE;
  4447. }
  4448.  
  4449. public OddajPrzedmiot_Callback(id, menu, item)
  4450. {
  4451. if(oddaj_id[item] == id)
  4452. return ITEM_DISABLED;
  4453. return ITEM_ENABLED;
  4454. }
  4455.  
  4456. public SprzedajPrzedmiot(id)
  4457. {
  4458. if(!informacje_przedmiotu_gracza[id][0])
  4459. {
  4460. client_print(id, print_chat, "Nie masz przedmiotu!");
  4461. return;
  4462. }
  4463.  
  4464. UsunPrzedmiot(id);
  4465. cs_set_user_money(id, cs_get_user_money(id)+2500);
  4466. fm_set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255);
  4467. }
  4468.  
  4469. public MagnetThink(ent)
  4470. {
  4471. if(entity_get_int(ent, EV_INT_iuser2))
  4472. return PLUGIN_CONTINUE;
  4473.  
  4474. if(!entity_get_int(ent, EV_INT_iuser1))
  4475. emit_sound(ent, CHAN_VOICE, "weapons/mine_activate.wav", 0.5, ATTN_NORM, 0, PITCH_NORM );
  4476.  
  4477. entity_set_int(ent, EV_INT_iuser1, 1);
  4478.  
  4479. new id = entity_get_edict(ent, EV_ENT_owner);
  4480. new dist = get_pcvar_num(pcvar_zasieg)+inteligencja_gracza[id];
  4481.  
  4482. new Float:forigin[3];
  4483. entity_get_vector(ent, EV_VEC_origin, forigin);
  4484.  
  4485. new entlist[33];
  4486. new numfound = find_sphere_class(0,"player", float(dist),entlist, 32,forigin);
  4487.  
  4488. for (new i=0; i < numfound; i++)
  4489. {
  4490. new pid = entlist[i];
  4491.  
  4492. if (get_user_team(pid) == get_user_team(id))
  4493. continue;
  4494.  
  4495. if (is_user_alive(pid))
  4496. {
  4497. new bronie_gracza = entity_get_int(pid, EV_INT_weapons);
  4498. for(new n=1; n <= 32;n++)
  4499. {
  4500. if(1<<n & bronie_gracza)
  4501. {
  4502. new weaponname[33];
  4503. get_weaponname(n, weaponname, 32);
  4504. engclient_cmd(pid, "drop", weaponname);
  4505. }
  4506. }
  4507. }
  4508. }
  4509.  
  4510. numfound = find_sphere_class(0,"weaponbox", float(dist)+100.0,entlist, 32,forigin);
  4511.  
  4512. for (new i=0; i < numfound; i++)
  4513. if(get_entity_distance(ent, entlist[i]) > 50.0)
  4514. set_velocity_to_origin(entlist[i], forigin, 999.0);
  4515.  
  4516. if (entity_get_float(ent, EV_FL_ltime) < halflife_time() || !is_user_alive(id))
  4517. {
  4518. entity_set_int(ent, EV_INT_iuser2, 1);
  4519. return PLUGIN_CONTINUE;
  4520. }
  4521.  
  4522. new iOrigin[3];
  4523. FVecIVec(forigin, iOrigin);
  4524.  
  4525. message_begin( MSG_BROADCAST, SVC_TEMPENTITY, iOrigin );
  4526. write_byte( TE_BEAMCYLINDER );
  4527. write_coord( iOrigin[0] );
  4528. write_coord( iOrigin[1] );
  4529. write_coord( iOrigin[2] );
  4530. write_coord( iOrigin[0] );
  4531. write_coord( iOrigin[1] + dist );
  4532. write_coord( iOrigin[2] + dist );
  4533. write_short( sprite_white );
  4534. write_byte( 0 ); // startframe
  4535. write_byte( 0 ); // framerate
  4536. write_byte( 10 ); // life
  4537. write_byte( 10 ); // width
  4538. write_byte( 255 ); // noise
  4539. write_byte( 0 ); // r, g, b
  4540. write_byte( 100 );// r, g, b
  4541. write_byte( 255 ); // r, g, b
  4542. write_byte( get_pcvar_num(pcvar_widocznosc_fali) ); // brightness
  4543. write_byte( 0 ); // speed
  4544. message_end();
  4545.  
  4546. entity_set_float(ent, EV_FL_nextthink, halflife_time() + 0.01);
  4547.  
  4548. return PLUGIN_CONTINUE;
  4549. }
  4550.  
  4551. public ResetHUD(id)
  4552. {
  4553. if(!is_user_connected(id))
  4554. return PLUGIN_HANDLED;
  4555. client_disconnect_magnet(id);
  4556. pozostale_elektromagnesy[id] = get_pcvar_num(pcvar_ilosc_elektromagnesow);
  4557. return PLUGIN_HANDLED
  4558. }
  4559.  
  4560. public client_disconnect_magnet(id)
  4561. {
  4562. new ent = find_ent_by_class(0, "magnet");
  4563. while(ent > 0)
  4564. {
  4565. if(entity_get_edict(id, EV_ENT_owner) == id)
  4566. remove_entity(ent);
  4567. ent = find_ent_by_class(ent, "magnet");
  4568. }
  4569. }
  4570.  
  4571. public NowaRunda_magnet()
  4572. {
  4573. new ent = find_ent_by_class(-1, "magnet");
  4574. while(ent > 0)
  4575. {
  4576. remove_entity(ent);
  4577. ent = find_ent_by_class(ent, "magnet");
  4578. }
  4579. }
  4580.  
  4581. stock get_velocity_to_origin( ent, Float:fOrigin[3], Float:fSpeed, Float:fVelocity[3] )
  4582. {
  4583. new Float:fEntOrigin[3];
  4584. entity_get_vector( ent, EV_VEC_origin, fEntOrigin );
  4585.  
  4586. // Velocity = Distance / Time
  4587.  
  4588. new Float:fDistance[3];
  4589. fDistance[0] = fEntOrigin[0] - fOrigin[0];
  4590. fDistance[1] = fEntOrigin[1] - fOrigin[1];
  4591. fDistance[2] = fEntOrigin[2] - fOrigin[2];
  4592.  
  4593. new Float:fTime = -( vector_distance( fEntOrigin,fOrigin ) / fSpeed );
  4594.  
  4595. fVelocity[0] = fDistance[0] / fTime;
  4596. fVelocity[1] = fDistance[1] / fTime;
  4597. fVelocity[2] = fDistance[2] / fTime + 50.0;
  4598.  
  4599. return ( fVelocity[0] && fVelocity[1] && fVelocity[2] );
  4600. }
  4601.  
  4602. stock set_velocity_to_origin( ent, Float:fOrigin[3], Float:fSpeed )
  4603. {
  4604. new Float:fVelocity[3];
  4605. get_velocity_to_origin( ent, fOrigin, fSpeed, fVelocity )
  4606.  
  4607. entity_set_vector( ent, EV_VEC_velocity, fVelocity );
  4608.  
  4609. return ( 1 );
  4610. }
  4611.  
  4612. public radar_scan(id)
  4613. {
  4614. if(!is_user_connected(id))
  4615. return PLUGIN_HANDLED;
  4616.  
  4617. new PlayerCoords[3];
  4618.  
  4619. for (new id=1; id<=32; id++)
  4620. {
  4621. if(!is_user_alive(id) || !is_user_connected(id) || informacje_przedmiotu_gracza[id][0] != 86)
  4622. continue;
  4623.  
  4624. for (new i=1;i<=32;i++)
  4625. {
  4626. if(!is_user_alive(i) || get_user_team(i) == get_user_team(id))
  4627.  
  4628. get_user_origin(i, PlayerCoords)
  4629.  
  4630. message_begin(MSG_ONE_UNRELIABLE, g_msgHostageAdd, {0,0,0}, id)
  4631. write_byte(id)
  4632. write_byte(i)
  4633. write_coord(PlayerCoords[0])
  4634. write_coord(PlayerCoords[1])
  4635. write_coord(PlayerCoords[2])
  4636. message_end()
  4637.  
  4638. message_begin(MSG_ONE_UNRELIABLE, g_msgHostageDel, {0,0,0}, id)
  4639. write_byte(i)
  4640. message_end()
  4641. }
  4642. }
  4643. return PLUGIN_HANDLED;
  4644. }
  4645.  
  4646. public SmiercGracza(id, attacker, shouldgib)
  4647. {
  4648. if(is_user_alive(attacker) && is_user_connected(attacker))
  4649. {
  4650. if(get_user_team(attacker) != get_user_team(id))
  4651. {
  4652. new name[32]
  4653. licznik_zabic[attacker]++;
  4654. get_user_name(attacker,name,31);
  4655. if(licznik_zabic[attacker] > 0)
  4656. {
  4657. set_hudmessage(255, 255, 255, -1.0, 0.33, 0, 5.0, 5.0);
  4658. switch(licznik_zabic[attacker])
  4659. {
  4660. case 4:
  4661. {
  4662. switch(random_num(0,1))
  4663. {
  4664. case 0:{
  4665. pack[attacker] = true;
  4666. //show_hudmessage(0, "%s dostal Care Package za KILLSTRIKE x %i !", name, licznik_zabic[attacker]);
  4667. client_print(attacker, print_chat, "[KillStrike] Wskarz mesto gde ocekujete da ce pasti kutija i pritisnite X");
  4668. }
  4669. case 1:{
  4670. uav[attacker] = true;
  4671. //show_hudmessage(0, "%s dostal Counter-UAV za KILLSTRIKE x %i !", name, licznik_zabic[attacker]);
  4672. client_print(attacker, print_chat, "[KillStrike] Pritisnite X da onemogucite radar neprijatelja");
  4673. client_cmd(attacker, "spk sound/mw/counter_enemy.wav")
  4674. }
  4675. }
  4676. }
  4677. case 6:
  4678. {
  4679. switch(random_num(0,1))
  4680. {
  4681. case 0:{
  4682. predator[attacker]++;
  4683. //show_hudmessage(0, "%s dostal PREDATORA za KILLSTRIKE x %i !", name, licznik_zabic[attacker]);
  4684. client_print(attacker, print_chat, "[KillStrike] Pritisnite X da ubrzate grabljivca");
  4685. client_cmd(attacker, "spk sound/mw/predator_give.wav")
  4686. }
  4687. case 1:{
  4688. nalot[attacker]++;
  4689. //show_hudmessage(0, "%s dostal NALOT za KILLSTRIKE x %i !", name, licznik_zabic[attacker]);
  4690. client_print(attacker, print_chat, "[KillStrike] Wskarz miejsce mesto i pritisnite X");
  4691. client_cmd(attacker, "spk sound/mw/air_give.wav")
  4692. }
  4693. }
  4694. }
  4695. case 12:
  4696. {
  4697. emp[attacker] = true;
  4698. //show_hudmessage(0, "%s dostal EMP za KILLSTRIKE x %i !", name, licznik_zabic[attacker]);
  4699. client_print(attacker, print_chat, "[KillStrike] Pritisni X, da koristite EMP");
  4700. client_cmd(attacker, "spk sound/mw/emp_give.wav")
  4701. }
  4702. case 14:
  4703. {
  4704. nuke[attacker] = true;
  4705. show_hudmessage(0, "%s dostal NUKE! za KILLSTRIKE x %i !", name, licznik_zabic[attacker]);
  4706. client_print(attacker, print_chat, "[KillStrike] Pritisni X za upotrebu atomske bombe");
  4707. client_cmd(attacker, "spk sound/mw/nuke_give.wav")
  4708. licznik_zabic[attacker] = false;
  4709. }
  4710. case 15:
  4711. {
  4712. radar[attacker] = true;
  4713. cod_set_user_xp(id, cod_get_user_xp(id)+50);
  4714. //client_cmd(attacker, "drawradar")
  4715. show_hudmessage(0, "%s dostal UAV za KILLSTRIKE x %i !", name, licznik_zabic[attacker]);
  4716. client_print(attacker, print_chat, "[KillStrike] Crvene tacke na radaru je sve sto rade protivnici");
  4717. client_cmd(attacker, "spk sound/mw/uav_give.wav")
  4718. }
  4719. }
  4720. }
  4721. }
  4722. }
  4723. if(!is_user_alive(id))
  4724. {
  4725. licznik_zabic[id] = 0;
  4726. user_controll[id] = 0
  4727. }
  4728. }
  4729.  
  4730. public uzyj_nagrody(id)
  4731. {
  4732. if(!is_user_alive(id) || emp_czasowe)
  4733. return PLUGIN_HANDLED;
  4734.  
  4735. if(pack[id] > 0 && !nuke[id] && !predator[id] && !emp[id] && !nalot[id] && !uav[id]/* && !sentry[id]*/)
  4736. CreatePack(id)
  4737.  
  4738. if(uav[id] > 0 && !nuke[id] && !predator[id] && !emp[id] && !nalot[id]/* && !sentry[id]*/)
  4739. CreateUVA(id)
  4740.  
  4741. if(nalot[id] > 0 && !nuke[id] && !predator[id] && !emp[id])
  4742. CreateNalot(id)
  4743.  
  4744. if(predator[id] > 0 && !nuke[id] && !emp[id])
  4745. CreatePredator(id)
  4746.  
  4747. if(emp[id] > 0 && !nuke[id])
  4748. CreateEmp(id)
  4749.  
  4750. if(nuke[id] > 0)
  4751. CreateNuke(id)
  4752.  
  4753. return PLUGIN_HANDLED;
  4754. }
  4755. //radar
  4756. public radar_scan2(id)
  4757. {
  4758. if(!is_user_connected(id))
  4759. return PLUGIN_HANDLED;
  4760.  
  4761. new PlayerCoords[3];
  4762.  
  4763. for (new id=1; id<=32; id++)
  4764. {
  4765. if(!is_user_alive(id) || !is_user_connected(id) || !radar[id] || emp_czasowe)
  4766. continue;
  4767.  
  4768. for (new i=1;i<=32;i++)
  4769. {
  4770. if(!is_user_alive(i) || get_user_team(i) == get_user_team(id))
  4771. continue;
  4772.  
  4773. get_user_origin(i, PlayerCoords)
  4774.  
  4775. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("HostagePos"), {0,0,0}, id)
  4776. write_byte(id)
  4777. write_byte(i)
  4778. write_coord(PlayerCoords[0])
  4779. write_coord(PlayerCoords[1])
  4780. write_coord(PlayerCoords[2])
  4781. message_end()
  4782.  
  4783. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("HostageK"), {0,0,0}, id)
  4784. write_byte(i)
  4785. message_end()
  4786. }
  4787. }
  4788. return PLUGIN_HANDLED;
  4789. }
  4790. //dotyk enta
  4791. public fw_Touch(ent, id)
  4792. {
  4793. if (!pev_valid(ent))
  4794. return FMRES_IGNORED
  4795.  
  4796. new ClassName[32]
  4797. pev(ent, pev_classname, ClassName, charsmax(ClassName))
  4798.  
  4799. if(equal(ClassName, "Bomb"))
  4800. {
  4801. bombs_explode(ent, 100.0, 150.0)
  4802. set_pev(ent, pev_flags, FL_KILLME)
  4803. return FMRES_IGNORED
  4804. }
  4805. if(equal(ClassName, "Predator"))
  4806. {
  4807. new owner = pev(ent, pev_owner)
  4808. bombs_explode(ent, 220.0, 400.0)
  4809. fm_attach_view(owner, owner)
  4810. user_controll[owner] = 0
  4811. set_pev(ent, pev_flags, FL_KILLME)
  4812. return FMRES_IGNORED
  4813. }
  4814. return FMRES_IGNORED
  4815. }
  4816. //airpack
  4817. public CreatePack(id)
  4818. {
  4819. cod_set_user_xp(id, cod_get_user_xp(id)+100);
  4820. CreatePlane(id)
  4821. pack[id] = false
  4822. set_task(1.0, "airpack", id+742)
  4823. set_task(6.0, "usun_ent")
  4824. }
  4825.  
  4826. public airpack(taskid)
  4827. {
  4828. new id = (taskid - 742)
  4829. new Origin[3];
  4830. get_user_origin(id, Origin, 3);
  4831.  
  4832. Origin[2] += 150;
  4833.  
  4834. new Float:LocVecs[3];
  4835. IVecFVec(Origin, LocVecs);
  4836.  
  4837. new g_pack = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"))
  4838. fm_create_ent(id, g_pack, "Pack", "models/cod_carepackage.mdl", 1, 6, LocVecs)
  4839. }
  4840.  
  4841. public pack_touch(ent, id)
  4842. {
  4843. if (!pev_valid(ent))
  4844. return FMRES_IGNORED
  4845.  
  4846. new ClassName[32]
  4847. pev(ent, pev_classname, ClassName, charsmax(ClassName))
  4848.  
  4849. if(equal(ClassName, "Pack"))
  4850. {
  4851. new weapons[32];
  4852. new weaponsnum;
  4853. get_user_weapons(id, weapons, weaponsnum);
  4854. for(new i=0; i<weaponsnum; i++)
  4855. if(maxAmmo[weapons[i]] > 0)
  4856. set_pdata_int(id, CSW_to_offset[weapons[i]], maxAmmo[weapons[i]], 5);
  4857.  
  4858. set_pev(ent, pev_flags, FL_KILLME)
  4859. return FMRES_IGNORED
  4860. }
  4861. return FMRES_IGNORED
  4862. }
  4863.  
  4864. //counter-uva
  4865. public CreateUVA(id)
  4866. {
  4867. cod_set_user_xp(id, cod_get_user_xp(id)+100);
  4868. uav[id] = false
  4869. new num, players[32]
  4870. get_players(players, num, "cgh")
  4871. for(new a = 0; a < num; a++)
  4872. {
  4873. new i = players[a]
  4874. if(players[a] != id){
  4875. if(get_user_team(id)!=get_user_team(i))
  4876. {
  4877. radar[i] = false;
  4878. break;
  4879. }
  4880. }
  4881. }
  4882. }
  4883. //emp
  4884. public CreateEmp(id)
  4885. {
  4886. cod_set_user_xp(id, cod_get_user_xp(id)+200);
  4887. client_cmd(0, "spk sound/mw/emp_effect.wav")
  4888. emp[id] = false;
  4889. new num, players[32]
  4890. get_players(players, num, "cgh")
  4891. for(new a = 0; a < num; a++)
  4892. {
  4893. new i = players[a]
  4894. if(is_user_connected(i) || is_user_alive(i))
  4895. {
  4896. Display_Fade(i,4<<12,4<<12,1<<16,255,212,212,166)
  4897. }
  4898. //client_cmd(i, "hideradar")
  4899. }
  4900. emp_czasowe = true;
  4901. set_task(90.0,"usun_emp", 932)
  4902. }
  4903.  
  4904. public usun_emp()
  4905. {
  4906. emp_czasowe = false;
  4907. }
  4908. //nuke
  4909. public CreateNuke(id)
  4910. {
  4911. cod_set_user_xp(id, cod_get_user_xp(id)+250);
  4912. client_cmd(0, "spk sound/mw/nuke_enemy1.wav")
  4913.  
  4914. new num, players[32]
  4915. get_players(players, num, "cgh")
  4916. for(new a = 0; a < num; a++)
  4917. {
  4918. new i = players[a]
  4919. if(is_user_alive(i))
  4920. {
  4921. Display_Fade(i,8<<12,8<<12,1<<16,197,253,191,200)
  4922. set_task(4.0,"trzesienie", 0)
  4923. }
  4924. }
  4925. set_task(8.0,"usun", id)
  4926. nuke[id] = false;
  4927. }
  4928.  
  4929. public trzesienie()
  4930. {
  4931. new num, players[32]
  4932. get_players(players, num, "cgh")
  4933. for(new a = 0; a < num; a++)
  4934. {
  4935. new i = players[a]
  4936. if(is_user_connected(i) || is_user_alive(i))
  4937. {
  4938. message_begin(MSG_ONE, get_user_msgid("ScreenShake"), {0,0,0}, i)
  4939. write_short(255<<12)
  4940. write_short(8<<12)
  4941. write_short(255<<12)
  4942. message_end()
  4943. }
  4944. }
  4945. }
  4946. public usun(id)
  4947. {
  4948. if(!is_user_connected(id))
  4949. return PLUGIN_HANDLED;
  4950.  
  4951. new num, players[32]
  4952. get_players(players, num, "cgh")
  4953. for(new a = 0; a < num; a++)
  4954. {
  4955. new i = players[a]
  4956. if(is_user_alive(i))
  4957. {
  4958. user_silentkill(i)
  4959. if(get_user_team(id) != get_user_team(i))
  4960. {
  4961. fm_set_user_frags(id, get_user_frags(id)+1);
  4962. cod_set_user_xp(id, cod_get_user_xp(id)+50);
  4963. }
  4964. }
  4965. }
  4966. return PLUGIN_HANDLED;
  4967. }
  4968. //nalot
  4969. public CreateNalot(id)
  4970. {
  4971. cod_set_user_xp(id, cod_get_user_xp(id)+150);
  4972. CreatePlane(id)
  4973. set_task(1.0, "CreateBombs", id+997, _, _, "a", 3)
  4974. set_task(6.0, "usun_ent")
  4975. nalot[id]--;
  4976. }
  4977.  
  4978. public usun_ent()
  4979. fm_remove_entity_name("Samolot");
  4980.  
  4981. public CreateBombs(taskid)
  4982. {
  4983. new id = (taskid-997)
  4984.  
  4985. new g_bomby[15], radlocation[3], randomx, randomy;
  4986.  
  4987. PobraneOrigin[2] += 50;
  4988.  
  4989. for(new i=0; i<15; i++)
  4990. {
  4991. randomx = random_num(-150,150);
  4992. randomy = random_num(-150,150);
  4993.  
  4994. radlocation[0] = PobraneOrigin[0]+1*randomx;
  4995. radlocation[1] = PobraneOrigin[1]+1*randomy;
  4996. radlocation[2] = PobraneOrigin[2];
  4997.  
  4998. new Float:LocVec[3];
  4999. IVecFVec(radlocation, LocVec);
  5000.  
  5001. g_bomby[i] = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"))
  5002. fm_create_ent(id, g_bomby[i], "Bomb", "models/p_hegrenade.mdl", 2, 10, LocVec)
  5003. }
  5004. }
  5005.  
  5006. public CreatePlane(id){
  5007. new Float:Origin[3],Float: Angle[3], Float: Velocity[3];
  5008.  
  5009. get_user_origin(id, PobraneOrigin, 3);
  5010.  
  5011. velocity_by_aim(id, 1200, Velocity)
  5012. pev(id, pev_origin, Origin)
  5013. pev(id, pev_v_angle, Angle)
  5014.  
  5015. Origin[2] += 250;
  5016. Angle[0] = 0.0;
  5017. Velocity[2] = Origin[2]
  5018.  
  5019. new g_samolot = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"))
  5020. fm_create_ent(id, g_samolot, "Samolot", "models/cod_plane.mdl", 2, 8, Origin)
  5021.  
  5022. set_pev(g_samolot, pev_velocity, Velocity)
  5023. set_pev(g_samolot, pev_angles, Angle)
  5024.  
  5025. emit_sound(g_samolot, CHAN_ITEM, "mw/jet_fly1.wav", 1.0, ATTN_NORM, 0, PITCH_NORM);
  5026. }
  5027.  
  5028. //predator
  5029. public CreatePredator(id){
  5030. cod_set_user_xp(id, cod_get_user_xp(id)+150);
  5031. new Float:Origin[3], Float:Angle[3], Float:Velocity[3]
  5032.  
  5033. velocity_by_aim(id, 700, Velocity)
  5034. pev(id, pev_origin, Origin)
  5035. pev(id, pev_v_angle, Angle)
  5036.  
  5037. Angle[0] *= -1.0
  5038.  
  5039. new g_predator = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"))
  5040. fm_create_ent(id, g_predator, "Predator", "models/cod_predator.mdl", 2, 5, Origin)
  5041.  
  5042. set_pev(g_predator, pev_velocity, Velocity)
  5043. set_pev(g_predator, pev_angles, Angle)
  5044.  
  5045. message_begin( MSG_BROADCAST, SVC_TEMPENTITY)
  5046. write_byte(TE_BEAMFOLLOW)
  5047. write_short(g_predator)
  5048. write_short(cache_trail)
  5049. write_byte(10)
  5050. write_byte(5)
  5051. write_byte(205)
  5052. write_byte(237)
  5053. write_byte(163)
  5054. write_byte(200)
  5055. message_end()
  5056.  
  5057. predator[id] = false;
  5058.  
  5059. set_pev(g_predator, pev_rendermode, 1)
  5060. fm_attach_view(id, g_predator)
  5061. user_controll[id] = g_predator
  5062. }
  5063.  
  5064. public player_predator(id)
  5065. {
  5066. if(!is_user_connected(id))
  5067. return PLUGIN_HANDLED;
  5068.  
  5069. if (user_controll[id] > 0)
  5070. {
  5071. new ent = user_controll[id]
  5072. if (pev_valid(ent))
  5073. {
  5074. new Float:Velocity[3], Float:Angle[3]
  5075. velocity_by_aim(id, 500, Velocity)
  5076. pev(id, pev_v_angle, Angle)
  5077.  
  5078. set_pev(ent, pev_velocity, Velocity)
  5079. set_pev(ent, pev_angles, Angle)
  5080. }
  5081. else
  5082. {
  5083. fm_attach_view(id, id)
  5084. }
  5085. }
  5086. return PLUGIN_HANDLED;
  5087. }
  5088.  
  5089. bombs_explode(ent, Float:zadaje, Float:promien)
  5090. {
  5091. if (!pev_valid(ent))
  5092. return;
  5093.  
  5094. new attacker = pev(ent, pev_owner)
  5095. new Float:entOrigin[3], Float:fDistance, Float:fDamage, Float:vOrigin[3]
  5096. pev(ent, pev_origin, entOrigin)
  5097. entOrigin[2] += 1.0
  5098.  
  5099. new victim = -1
  5100. while ((victim = engfunc(EngFunc_FindEntityInSphere, victim, entOrigin, promien)) != 0)
  5101. {
  5102. if (attacker==victim || !pev_valid(victim)) continue;
  5103.  
  5104. pev(victim, pev_origin, vOrigin)
  5105. fDistance = get_distance_f(vOrigin, entOrigin)
  5106. fDamage = zadaje - floatmul(zadaje, floatdiv(fDistance, promien))
  5107. fDamage *= estimate_take_hurt(entOrigin, victim, 0)
  5108. if(fDamage>0.0)
  5109. {
  5110. if(get_user_team(attacker)!=get_user_team(victim))
  5111. if(pev(victim, pev_health))
  5112. ExecuteHam(Ham_TakeDamage, victim, ent, attacker, fDamage, DMG_BULLET)
  5113. }
  5114. }
  5115. message_begin(MSG_BROADCAST,SVC_TEMPENTITY);
  5116. write_byte(TE_EXPLOSION);
  5117. write_coord(floatround(entOrigin[0]));
  5118. write_coord(floatround(entOrigin[1]));
  5119. write_coord(floatround(entOrigin[2]));
  5120. write_short(sprite_blast);
  5121. write_byte(32);
  5122. write_byte(20);
  5123. write_byte(0);
  5124. message_end();
  5125. }
  5126.  
  5127. public cmdKill()
  5128. return FMRES_SUPERCEDE;
  5129.  
  5130. stock fm_create_ent(id, ent, szName[], szModel[], iSolid, iMovetype, Float:fOrigin[3])
  5131. {
  5132. if(!pev_valid(ent))
  5133. return;
  5134.  
  5135. set_pev(ent, pev_classname, szName)
  5136. engfunc(EngFunc_SetModel, ent, szModel)
  5137. set_pev(ent, pev_solid, iSolid)
  5138. set_pev(ent, pev_movetype, iMovetype)
  5139. set_pev(ent, pev_owner, id)
  5140. set_pev(ent, pev_origin, fOrigin)
  5141. }
  5142.  
  5143. stock Float:estimate_take_hurt(Float:fPoint[3], ent, ignored)
  5144. {
  5145. new Float:fOrigin[3]
  5146. new tr
  5147. new Float:fFraction
  5148. pev(ent, pev_origin, fOrigin)
  5149. engfunc(EngFunc_TraceLine, fPoint, fOrigin, DONT_IGNORE_MONSTERS, ignored, tr)
  5150. get_tr2(tr, TR_flFraction, fFraction)
  5151. if ( fFraction == 1.0 || get_tr2( tr, TR_pHit ) == ent )
  5152. return 1.0
  5153. return 0.6
  5154. }
  5155.  
  5156. public plugin_natives()
  5157. {
  5158. register_native("cod_set_user_xp", "UstawDoswiadczenie", 1);
  5159. register_native("cod_get_user_xp", "PobierzDoswiadczenie", 1);
  5160. register_native("cod_get_user_health", "PobierzZdrowieMax", 1);
  5161. }
  5162.  
  5163. public UstawDoswiadczenie(id, wartosc)
  5164. {
  5165. doswiadczenie_gracza[id] = wartosc;
  5166. SprawdzPoziom(id);
  5167. }
  5168.  
  5169. public PobierzDoswiadczenie(id)
  5170. return doswiadczenie_gracza[id];
  5171.  
  5172. public PobierzZdrowieMax(id)
  5173. return maksymalne_zdrowie_gracza[id];
  5174.  
  5175.  
  5176. /* --==[ VIP ] ==-- */
  5177. public event_CurWeapon_Vip(id)
  5178. {
  5179. if(!is_user_connected(id))
  5180. return PLUGIN_HANDLED;
  5181.  
  5182. if (!get_pcvar_num(g_vip_active))
  5183. return PLUGIN_CONTINUE
  5184.  
  5185. if(read_data(2) == CSW_SG550)
  5186. {
  5187. if(!(get_user_flags(id) & ADMIN_LEVEL_H))
  5188. {
  5189. client_print(id, print_center, "AutoKampa 'SG550' samo za VIP-a!")
  5190. client_cmd(id, "drop")
  5191. }
  5192. }
  5193. else if(read_data(2) == CSW_G3SG1)
  5194. {
  5195. if(!(get_user_flags(id) & ADMIN_LEVEL_H))
  5196. {
  5197. client_print(id, print_center, "AutoKampa 'G3SG1' samo za VIP-a!")
  5198. client_cmd(id, "drop")
  5199. }
  5200. }
  5201. else if(read_data(2) == CSW_M249)
  5202. {
  5203. if(!(get_user_flags(id) & ADMIN_LEVEL_H))
  5204. {
  5205. client_print(id, print_center, "Bron 'M249 Para' samo za VIP-a")
  5206. client_cmd(id, "drop")
  5207. }
  5208. }
  5209. return PLUGIN_HANDLED
  5210. }
  5211.  
  5212. public on_damage(id)
  5213. {
  5214. new attacker = get_user_attacker(id)
  5215. if ( is_user_connected(id) && is_user_connected(attacker) )
  5216. if (get_user_flags(attacker) & ADMIN_LEVEL_H)
  5217. {
  5218. new damage = read_data(2)
  5219. set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
  5220. ShowSyncHudMsg(attacker, g_MsgSync, "%i^n", damage)
  5221. }
  5222. }
  5223.  
  5224.  
  5225. public Damage2(id)
  5226. {
  5227. new weapon, hitpoint, attacker = get_user_attacker(id,weapon,hitpoint)
  5228. if(attacker<=maxplayers && is_user_alive(attacker) && attacker!=id)
  5229. if (is_user_connected(attacker) && get_user_flags(attacker) & ADMIN_LEVEL_H)
  5230. {
  5231. new money = read_data(2) * get_pcvar_num(mpd)
  5232. if(hitpoint==1) money += get_pcvar_num(mhb)
  5233. cs_set_user_money(attacker,cs_get_user_money(attacker) + money)
  5234. }
  5235. }
  5236. public HandleCmd(id){
  5237. if (!get_pcvar_num(g_vip_active))
  5238. return PLUGIN_CONTINUE
  5239. if(get_user_flags(id) & ADMIN_LEVEL_H)
  5240. return PLUGIN_CONTINUE
  5241. client_print(id, print_center, "Neka Oruzja Su Samo Za VIP-a!")
  5242. return PLUGIN_HANDLED
  5243. }
  5244.  
  5245. public Showrod(id) {
  5246. show_menu(id, Keysrod, "\rVIP Menu^n\d1. \wWez \yM4A1+Deagle ^n\d2. \wWez \yAK47+Deagle^n^n\d0. Wyjscie^n", -1, "rod") // Display menu
  5247. }
  5248. public Pressedrod(id, key) {
  5249. /* Menu:
  5250. * VIP Menu
  5251. * 1. Wez M4A1 + Deagle
  5252. * 2. Wez AK47+Deagle
  5253. * 0. Exit
  5254. */
  5255. switch (key) {
  5256. case 0: {
  5257. if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
  5258. HasC4[id] = true;
  5259. else
  5260. HasC4[id] = false;
  5261.  
  5262. fm_strip_user_weapons (id)
  5263. fm_give_item(id,"weapon_m4a1")
  5264. fm_give_item(id,"ammo_556nato")
  5265. fm_give_item(id,"ammo_556nato")
  5266. fm_give_item(id,"ammo_556nato")
  5267. fm_give_item(id,"weapon_deagle")
  5268. fm_give_item(id,"ammo_50ae")
  5269. fm_give_item(id,"ammo_50ae")
  5270. fm_give_item(id,"ammo_50ae")
  5271. fm_give_item(id,"ammo_50ae")
  5272. fm_give_item(id,"ammo_50ae")
  5273. fm_give_item(id,"ammo_50ae")
  5274. fm_give_item(id,"ammo_50ae")
  5275. fm_give_item(id,"weapon_knife")
  5276. if(get_user_flags(id) & ADMIN_RCON)
  5277. {
  5278. fm_give_item(id, "weapon_hegrenade");
  5279. fm_give_item(id, "weapon_flashbang");
  5280. fm_give_item(id, "weapon_flashbang");
  5281. fm_give_item(id, "weapon_smokegrenade");
  5282. client_print(id, print_center, "Primite M4A1, Deagle, HE, Smoke i 2x Flesh!")
  5283. }
  5284. else
  5285. {
  5286. fm_give_item(id, "weapon_hegrenade");
  5287. }
  5288. fm_give_item(id, "item_assaultsuit");
  5289. fm_give_item(id, "item_thighpack");
  5290. client_print(id, print_center, "Uzeo si M4A1, Deagle i HE!")
  5291.  
  5292. if (HasC4[id])
  5293. {
  5294. fm_give_item(id, "weapon_c4");
  5295. cs_set_user_plant( id );
  5296. }
  5297. }
  5298. case 1: {
  5299. if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
  5300. HasC4[id] = true;
  5301. else
  5302. HasC4[id] = false;
  5303.  
  5304. fm_strip_user_weapons (id)
  5305. fm_give_item(id,"weapon_ak47")
  5306. fm_give_item(id,"ammo_762nato")
  5307. fm_give_item(id,"ammo_762nato")
  5308. fm_give_item(id,"ammo_762nato")
  5309. fm_give_item(id,"weapon_deagle")
  5310. fm_give_item(id,"ammo_50ae")
  5311. fm_give_item(id,"ammo_50ae")
  5312. fm_give_item(id,"ammo_50ae")
  5313. fm_give_item(id,"ammo_50ae")
  5314. fm_give_item(id,"ammo_50ae")
  5315. fm_give_item(id,"ammo_50ae")
  5316. fm_give_item(id,"ammo_50ae")
  5317. fm_give_item(id,"weapon_knife")
  5318. if(get_user_flags(id) & ADMIN_RCON)
  5319. {
  5320. fm_give_item(id, "weapon_hegrenade");
  5321. fm_give_item(id, "weapon_flashbang");
  5322. fm_give_item(id, "weapon_flashbang");
  5323. fm_give_item(id, "weapon_smokegrenade");
  5324. client_print(id, print_center, "Uzeo si AK47, Deagle, HE")
  5325. }
  5326. else
  5327. {
  5328. fm_give_item(id, "weapon_hegrenade");
  5329. client_print(id, print_center, "Primite AK47, Deagle i HE!")
  5330. }
  5331. fm_give_item(id, "item_assaultsuit");
  5332. fm_give_item(id, "item_thighpack");
  5333.  
  5334. if (HasC4[id])
  5335. {
  5336. fm_give_item(id, "weapon_c4");
  5337. cs_set_user_plant( id );
  5338. }
  5339. }
  5340. case 9: {
  5341. // 0
  5342. client_print(id, print_center, "Primite Granate!")
  5343. }
  5344. }
  5345. return PLUGIN_CONTINUE
  5346. }
  5347.  
  5348. public Round_Reset()
  5349. {
  5350. round = 0;
  5351. }
  5352.  
  5353. public hook_death()
  5354. {
  5355. // Killer id
  5356. nKiller = read_data(1)
  5357.  
  5358. if(!is_user_connected(nKiller))
  5359. return;
  5360.  
  5361. if ( (read_data(3) == 1) && (read_data(5) == 0) )
  5362. {
  5363. nHp_add = get_pcvar_num (health_hs_add)
  5364. }
  5365. else
  5366. nHp_add = get_pcvar_num (health_add)
  5367. nHp_max = get_pcvar_num (health_max)
  5368. // Updating Killer HP
  5369. if(!(get_user_flags(nKiller) & ADMIN_LEVEL_H))
  5370. return;
  5371.  
  5372. nKiller_hp = get_user_health(nKiller)
  5373. nKiller_hp += nHp_add
  5374. // Maximum HP check
  5375. if (nKiller_hp > nHp_max) nKiller_hp = nHp_max
  5376. fm_set_user_health(nKiller, nKiller_hp)
  5377. // Hud message "Healed +15/+30 hp"
  5378. set_hudmessage(0, 255, 0, -1.0, 0.15, 0, 1.0, 1.0, 0.1, 0.1, -1)
  5379. show_hudmessage(nKiller, "Healed +%d hp", nHp_add)
  5380. // Screen fading
  5381. message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, nKiller)
  5382. write_short(1<<10)
  5383. write_short(1<<10)
  5384. write_short(0x0000)
  5385. write_byte(0)
  5386. write_byte(0)
  5387. write_byte(200)
  5388. write_byte(75)
  5389. message_end()
  5390.  
  5391. }
  5392.  
  5393. public handle_say(id) {
  5394. new said[192]
  5395. read_args(said,192)
  5396. if( ( containi(said, "who") != -1 && containi(said, "admin") != -1 ) || contain(said, "/vips") != -1 )
  5397. set_task(0.1,"print_adminlist",id)
  5398. return PLUGIN_CONTINUE
  5399. }
  5400.  
  5401. public print_adminlist(user)
  5402. {
  5403. new adminnames[33][32]
  5404. new message[256]
  5405. new contactinfo[256], contact[112]
  5406. new id, count, x, len
  5407.  
  5408. for(id = 1 ; id <= maxplayers ; id++)
  5409. if(is_user_connected(id))
  5410. if(get_user_flags(id) & ADMIN_LEVEL_H)
  5411. get_user_name(id, adminnames[count++], 31)
  5412.  
  5413. len = format(message, 255, "%s VIP'y ONLINE: ",COLOR)
  5414. if(count > 0)
  5415. {
  5416. for(x = 0 ; x < count ; x++)
  5417. {
  5418. len += format(message[len], 255-len, "%s%s%s ", COLOR, adminnames[x], x < (count-1) ? "^x01, ":"")
  5419. if(len > 96 ) {
  5420. print_message(user, message)
  5421. len = format(message, 255, "%s ",COLOR)
  5422. }
  5423. }
  5424. print_message(user, message)
  5425. }
  5426. else {
  5427. len += format(message[len], 255-len, "Brak Vip'ow Online")
  5428. print_message(user, message)
  5429. }
  5430.  
  5431. get_cvar_string("amx_contactinfo", contact, 63)
  5432. if(contact[0]) {
  5433. format(contactinfo, 111, "%s Kontakt z Adminem -- %s", COLOR, contact)
  5434. print_message(user, contactinfo)
  5435. }
  5436. return PLUGIN_HANDLED;
  5437. }
  5438.  
  5439. print_message(id, msg[]) {
  5440. if(!is_user_connected(id))
  5441. return;
  5442. message_begin(MSG_ONE, gmsgSayText, {0,0,0}, id)
  5443. write_byte(id)
  5444. write_string(msg)
  5445. message_end()
  5446. }
  5447.  
  5448. public ShowMotd(id)
  5449. {
  5450. show_motd(id, "vip.txt")
  5451. }
  5452. stock fm_set_user_footsteps( index, set = 1 )
  5453. {
  5454. if( set )
  5455. {
  5456. set_pev( index, pev_flTimeStepSound, 999 );
  5457. bSilent[ index ] = true;
  5458. }
  5459. else
  5460. {
  5461. set_pev( index, pev_flTimeStepSound, 400 );
  5462. bSilent[ index ] = false;
  5463. }
  5464. return 1;
  5465. }
  5466.  
  5467. public forward_player_prethink( id )
  5468. {
  5469. if( bSilent[ id ] )
  5470. {
  5471. set_pev( id, pev_flTimeStepSound, 999 );
  5472. }
  5473. }
  5474. public KomendaDajPrzedmiot(id, level, cid)
  5475. {
  5476. if(!cmd_access(id,level,cid,3))
  5477. return PLUGIN_HANDLED;
  5478.  
  5479. new arg1[33]
  5480. new arg2[6]
  5481. read_argv(1, arg1, 32)
  5482. read_argv(2, arg2, 5)
  5483. new gracz = cmd_target(id, arg1, 0)
  5484. new przedmiot = str_to_num(arg2)-1
  5485.  
  5486. if(przedmiot < 1 || przedmiot > sizeof nazwy_przedmiotow-1)
  5487. {
  5488. client_print(id, print_console, "Uneli ste pogresan broj predmeta.")
  5489. return PLUGIN_HANDLED;
  5490. }
  5491.  
  5492. DajPrzedmiot(gracz, przedmiot);
  5493. return PLUGIN_HANDLED;
  5494. }
  5495.  
  5496.  
Advertisement
Add Comment
Please, Sign In to add comment