Advertisement
julicr77

Cod mod mw4 by Juli

Jul 26th, 2015
1,001
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 111.70 KB | None | 0 0
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <fun>
  4. #include <cstrike>
  5. #include <fakemeta>
  6. #include <engine>
  7. #include <hamsandwich>
  8. #include <nvault>
  9. #include <colorchat>
  10.  
  11. #define PLUGIN "Call of Duty: MW Mod"
  12. #define VERSION "0.8.0"
  13. #define AUTHOR "juli"
  14.  
  15. #define STANDARDNA_brzina 250.0
  16.  
  17. #define ZADATAK_POKAZI_INFORMACIJE 672
  18. #define ZADATAK_PROVERA 704
  19. #define ZADATAK_POKAZI_REKLAME 768
  20. #define ZADATAK_POSTAVI_brzinu 832
  21.  
  22. //#define BOTY 1
  23.  
  24. new za_hejtere[] = "MARS U PICKU MATERINU I TI I DISASSEMBLER, BOTINO RASPALA" // hvala desikac
  25.  
  26. new SyncHudObj;
  27. new SyncHudObj3;
  28. new g_msg_screenfade;
  29.  
  30. new cvar_xp_za_ubistvo;
  31.  
  32. new sprite_white;
  33. new sprite_blast;
  34. new sprite_beam;
  35.  
  36. new g_vault;
  37.  
  38. new iskustvo_za_pare;
  39. new iskustvo_za_mnogopara;
  40.  
  41. new Ubrania_CT[4][]={"sas","gsg9","urban","gign"};
  42. new Ubrania_Terro[4][]={"arctic","leet","guerilla","terror"};
  43.  
  44. 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};
  45. new const maxClip[31] = { -1, 13, -1, 10, 1, 7, 1, 30, 30, 1, 30, 20, 25, 30, 35, 25, 12, 20,
  46. 10, 30, 100, 8, 30, 30, 20, 2, 7, 30, 30, -1, 50 };
  47.  
  48. new informacije_predmet_igraca[33][2];
  49. new const naziv_predmeta[][] = {"Nema",
  50. "Necujne Cizme", //1
  51. "Dupli Pancir", //2
  52. "Ojacani Pancir", //3
  53. "Veteran sa nozem", //4
  54. "Iznenadi neprijatelje", //5
  55. "Nevidljivost", //6
  56. "Respawn", //7
  57. "Noz Marinca", //8
  58. "Kamuflaza", //9
  59. "HE Expert", //10
  60. "Dupli Skok", //11
  61. "Vojna tajna", //12
  62. "AWP Master",//13
  63. "Adrenalin",//14
  64. "Rambova tajna",//15
  65. "Deagle Manijak",//16
  66. "Super Pancir",//17
  67. "Extra HP++",//18
  68. "Komplet za prvu pomoc",//19
  69. "No Recoil",//20
  70. "Titanijumski metci",//21
  71. "Pukovnikovi metci",//22
  72. "Ogranicen no-recoil",//23
  73. "SWAT Stit",//24
  74. "50 HP++",//25
  75. "Nano Oklop",//26
  76. "BulletProof",//27
  77. "Jetpack",
  78. "Gravitacija",
  79. "Speed"
  80. };
  81.  
  82. new const opis_predmet[][] = {"Ubi nekog i dobices predmet",
  83. "Necujno trcanje",
  84. "Smanjuje stetu za LW %",
  85. "Smanjuje stetu za LW %",
  86. "Brze ubijas nozem",
  87. "Kada pogodite nekog od pozadi, povrede su dva puta vece",
  88. "Imate LW % nevidljivosti",
  89. "1/LW sanse da se respawn posle smrti",
  90. "Brzo ubijanje nozem",
  91. "Imate 1/LW sanse da odmah ubijete sa HE. Takodje izgledate kao neprijatelj",
  92. "Instant kill sa granatom (HE). Zadajes LW % dodatne stete",
  93. "Dupli skok",
  94. "Vase povrede su smanjene za 5. Imate 1/LW sanse da oslepite neprijatelja",
  95. "Instant kill sa AWP",
  96. "Za svaki kill dobijate 50hp",
  97. "Za svaki kill dobijate pun sarzer i 20hp",
  98. "Dobijate Deagle",
  99. "Imate 500 stita",
  100. "Dobijate +100hp svake runde, ali zato ste sporiji",
  101. "Koristite da regeneriste maximalni HP",
  102. "Nema trzanja puske kad pucate",
  103. "Zadajete protivnicima +10 vise stete",
  104. "Zadajete protivnicima +20 vise stete",
  105. "Smanjeno trazanje puske",
  106. "Ni jedan predmet nece uticati na vas",
  107. "Dobijate +50hp svake runde, ali zato ste sporiji",
  108. "Imate 1/LW sanse da izbegnete stetu",
  109. "Otporni ste na 3 metka u svakom krugu",
  110. "Pritisnite CRTL i SPACE da koristite jetpack, jetpack se obnavlja svake 4 sec",
  111. "Smanjena gravitacija",
  112. "Povecana Brzina"
  113. };
  114.  
  115. new klasa_igraca[33];
  116. new level_igraca[33] = 1;
  117. new iskustvo_igraca[33];
  118.  
  119. new nova_klasa_igraca[33];
  120.  
  121.  
  122. new const iskustvo_levelu[] = {0,7,28,63,112,175,252,343,448,567,700,847,1008,1183,1372,1575,1792,2023,2268,2527,
  123. 2800,3087,3388,3703,4032,4375,4732,5103,5488,5887,6300,6727,7168,7623,8092,8575,9072,9583,10108,10647,
  124. 11200,11767,12348,12943,13552,14175,14812,15463,16128,16807,17500,18207,18928,19663,20412,21175,21952,22743,23548,24367,
  125. 25200,26047,26908,27783,28672,29575,30492,31423,32368,33327,34300,35287,36288,37303,38332,39375,40432,41503,42588,43687,
  126. 44800,45927,47068,48223,49392,50575,51772,52983,54208,55447,56700,57967,59248,60543,61852,63175,64512,65863,67228,68607,
  127. 70000,71407,72828,74263,75712,77175,78652,80143,81648,83167,84700,86247,87808,89383,90972,92575,94192,95823,97468,99127,
  128. 100800,102487,104188,105903,107632,109375,111132,112903,114688,116487,118300,120127,121968,123823,125692,127575,129472,131383,133308,135247,
  129. 137200,139167,141148,143143,145152,147175,149212,151263,153328,155407,157500,159607,161728,163863,166012,168175,170352,172543,174748,176967,
  130. 179200,181447,183708,185983,188272,190575,192892,195223,197568,199927,202300,204687,207088,209503,211932,214375,216832,219303,221788,224287,
  131. 226800,229327,231868,234423,236992,239575,242172,244783,247408,250047,252700,255367,258048,260743,263452,266175,268912,271663,274428,277207,
  132. 280000,282807,285628,288463,291312,294175,297052,299943,302848,305767,308700,311647,314608,317583,320572,323575,326592,329623,332668,335727,
  133. 338800,341887,344988,348103,351232,354375,357532,360703,363888,367087,370300,373527,376768,380023,383292,386575,389872,393183,396508,399847,
  134. 403200,406567,409948,413343,416752,420175,423612,427063,430528,434007,437500,441007,444528,448063,451612,455175,458752,462343,465948,469567,
  135. 473200,476847,480508,484183,487872,491575,495292,499023,502768,506527,510300,514087,517888,521703,525532,529375,533232,537103,540988,544887,
  136. 548800,552727,556668,560623,564592,568575,572572,576583,580608,584647,588700,592767,596848,600943,605052,609175,613312,617463,621628,625807,
  137. 630000,634207,638428,642663,646912,651175,655452,659743,664048,668367,672700,677047,681408,685783,690172,694575,698992,703423,707868,712327,
  138. 716800,721287,725788,730303,734832,739375,743932,748503,753088,757687,762300,766927,771568,776223,780892,785575,790272,794983,799708,804447,
  139. 809200,813967,818748,823543,828352,833175,838012,842863,847728,852607,857500,862407,867328,872263,877212,882175,887152,892143,897148,902167,
  140. 907200,912247,917308,922383,927472,932575,937692,942823,947968,953127,958300,963487,968688,973903,979132,984375,989632,994903,1000188,1005487,
  141. 1010800,1016127,1021468,1026823,1032192,1037575,1042972,1048383,1053808,1059247,1064700,1070167,1075648,1081143,1086652,1092175,1097712,1103263,1108828,1114407,
  142. 1120000,1125607,1131228,1136863,1142512,1148175,1153852,1159543,1165248,1170967,1176700,1182447,1188208,1193983,1199772,1205575,1211392,1217223,1223068,1228927,
  143. 1234800,1240687,1246588,1252503,1258432,1264375,1270332,1276303,1282288,1288287,1294300,1300327,1306368,1312423,1318492,1324575,1330672,1336783,1342908,1349047,
  144. 1355200,1361367,1367548,1373743,1379952,1386175,1392412,1398663,1404928,1411207,1417500,1423807,1430128,1436463,1442812,1449175,1455552,1461943,1468348,1474767,
  145. 1481200,1487647,1494108,1500583,1507072,1513575,1520092,1526623,1533168,1539727,1546300,1552887,1559488,1566103,1572732,1579375,1586032,1592703,1599388,1606087,
  146. 1612800,1619527,1626268,1633023,1639792,1646575,1653372,1660183,1667008,1673847,1680700,1687567,1694448,1701343,1708252,1715175,1722112,1729063,1736028,1743007,
  147. 1750000,1757007,1764028,1771063,1778112,1785175,1792252,1799343,1806448,1813567,1820700,1827847,1835008,1842183,1849372,1856575,1863792,1871023,1878268,1885527,
  148. 1892800,1900087,1907388,1914703,1922032,1929375,1936732,1944103,1951488,1958887,1966300,1973727,1981168,1988623,1996092,2003575,2011072,2018583,2026108,2033647,
  149. 2041200,2048767,2056348,2063943,2071552,2079175,2086812,2094463,2102128,2109807,2117500,2125207,2132928,2140663,2148412,2156175,2163952,2171743,2179548,2187367,
  150. 2195200,2203047,2210908,2218783,2226672,2234575,2242492,2250423,2258368,2266327,2274300,2282287,2290288,2298303,2306332,2314375,2322432,2330503,2338588,2346687,
  151. 2354800,2362927,2371068,2379223,2387392,2395575,2403772,2411983,2420208,2428447,2436700,2444967,2453248,2461543,2469852,2478175,2486512,2494863,2503228,2511607,
  152. 2520000,2528407,2536828,2545263,2553712,2562175,2570652,2579143,2587648,2596167,2604700,2613247,2621808,2630383,2638972,2647575,2656192,2664823,2673468,2682127,
  153. 2690800,2699487,2708188,2716903,2725632,2734375,2743132,2751903,2760688,2769487,2778300,2787127,2795968,2804823,2813692,2822575,2831472,2840383,2849308,2858247,
  154. 2867200,2876167,2885148,2894143,2903152,2912175,2921212,2930263,2939328,2948407,2957500,2966607,2975728,2984863,2994012,3003175,3012352,3021543,3030748,3039967,
  155. 3049200,3058447,3067708,3076983,3086272,3095575,3104892,3114223,3123568,3132927,3142300,3151687,3161088,3170503,3179932,3189375,3198832,3208303,3217788,3227287,
  156. 3236800,3246327,3255868,3265423,3274992,3284575,3294172,3303783,3313408,3323047,3332700,3342367,3352048,3361743,3371452,3381175,3390912,3400663,3410428,3420207,
  157. 3430000,3439807,3449628,3459463,3469312,3479175,3489052,3498943,3508848,3518767,3528700,3538647,3548608,3558583,3568572,3578575,3588592,3598623,3608668,3618727,
  158. 3628800,3638887,3648988,3659103,3669232,3679375,3689532,3699703,3709888,3720087,3730300,3740527,3750768,3761023,3771292,3781575,3791872,3802183,3812508,3822847,
  159. 3833200,3843567,3853948,3864343,3874752,3885175,3895612,3906063,3916528,3927007,3937500,3948007,3958528,3969063,3979612,3990175,4000752,4011343,4021948,4032567,
  160. 4043200,4053847,4064508,4075183,4085872,4096575,4107292,4118023,4128768,4139527,4150300,4161087,4171888,4182703,4193532,4204375,4215232,4226103,4236988,4247887,
  161. 4258800,4269727,4280668,4291623,4302592,4313575,4324572,4335583,4346608,4357647,4368700,4379767,4390848,4401943,4413052,4424175,4435312,4446463,4457628,4468807,
  162. 4480000,4491207,4502428,4513663,4524912,4536175,4547452,4558743,4570048,4581367,4592700,4604047,4615408,4626783,4638172,4649575,4660992,4672423,4683868,4695327,
  163. 4706800,4718287,4729788,4741303,4752832,4764375,4775932,4787503,4799088,4810687,4822300,4833927,4845568,4857223,4868892,4880575,4892272,4903983,4915708,4927447,
  164. 4939200,4950967,4962748,4974543,4986352,4998175,5010012,5021863,5033728,5045607,5057500,5069407,5081328,5093263,5105212,5117175,5129152,5141143,5153148,5165167,
  165. 5177200,5189247,5201308,5213383,5225472,5237575,5249692,5261823,5273968,5286127,5298300,5310487,5322688,5334903,5347132,5359375,5371632,5383903,5396188,5408487,
  166. 5420800,5433127,5445468,5457823,5470192,5482575,5494972,5507383,5519808,5532247,5544700,5557167,5569648,5582143,5594652,5607175,5619712,5632263,5644828,5657407,
  167. 5670000,5682607,5695228,5707863,5720512,5733175,5745852,5758543,5771248,5783967,5796700,5809447,5822208,5834983,5847772,5860575,5873392,5886223,5899068,5911927,
  168. 5924800,5937687,5950588,5963503,5976432,5989375,6002332,6015303,6028288,6041287,6054300,6067327,6080368,6093423,6106492,6119575,6132672,6145783,6158908,6172047,
  169. 6185200,6198367,6211548,6224743,6237952,6251175,6264412,6277663,6290928,6304207,6317500,6330807,6344128,6357463,6370812,6384175,6397552,6410943,6424348,6437767,
  170. 6451200,6464647,6478108,6491583,6505072,6518575,6532092,6545623,6559168,6572727,6586300,6599887,6613488,6627103,6640732,6654375,6668032,6681703,6695388,6709087,
  171. 6722800,6736527,6750268,6764023,6777792,6791575,6805372,6819183,6833008,6846847,6860700,6874567,6888448,6902343,6916252,6930175,6944112,6958063,6972028,6986007,//1000
  172. 7000000,7014007,7028028,7042063,7056112,7070175,7084252,7098343,7112448,7126567,7140700,7154847,7169008,7183183,7197372,7211575,7225792,7240023,7254268,7268527,
  173. 7282800,7297087,7311388,7325703,7340032,7354375,7368732,7383103,7397488,7411887,7426300,7440727,7455168,7469623,7484092,7498575,7513072,7527583,7542108,7556647,
  174. 7571200,7585767,7600348,7614943,7629552,7644175,7658812,7673463,7688128,7702807,7717500,7732207,7746928,7761663,7776412,7791175,7805952,7820743,7835548,7850367,
  175. 7865200,7880047,7894908,7909783,7924672,7939575,7954492,7969423,7984368,7999327,8014300,8029287,8044288,8059303,8074332,8089375,8104432,8119503,8134588,8149687,
  176. 8164800,8179927,8195068,8210223,8225392,8240575,8255772,8270983,8286208,8301447,8316700,8331967,8347248,8362543,8377852,8393175,8408512,8423863,8439228,8454607,
  177. 8470000,8485407,8500828,8516263,8531712,8547175,8562652,8578143,8593648,8609167,8624700,8640247,8655808,8671383,8686972,8702575,8718192,8733823,8749468,8765127,
  178. 8780800,8796487,8812188,8827903,8843632,8859375,8875132,8890903,8906688,8922487,8938300,8954127,8969968,8985823,9001692,9017575,9033472,9049383,9065308,9081247,
  179. 9097200,9113167,9129148,9145143,9161152,9177175,9193212,9209263,9225328,9241407,9257500,9273607,9289728,9305863,9322012,9338175,9354352,9370543,9386748,9402967,
  180. 9419200,9435447,9451708,9467983,9484272,9500575,9516892,9533223,9549568,9565927,9582300,9598687,9615088,9631503,9647932,9664375,9680832,9697303,9713788,9730287,
  181. 9746800,9763327,9779868,9796423,9812992,9829575,9846172,9862783,9879408,9896047,9912700,9929367,9946048,9962743,9979452,9996175,10012912,10029663,10046428,10063207,
  182. 10080000};
  183.  
  184. new poeni_igraca[33];
  185. new energija_igraca[33];
  186. new inteligencija_igraca[33];
  187. new snaga_igraca[33];
  188. new Float:smanjene_povrede_igraca[33];
  189. new kondicija_igraca[33];
  190. new maximalna_energija_igraca[33];
  191. new Float:brzina_igraca[33];
  192.  
  193.  
  194. enum { NONE = 0,
  195. Snajperista,
  196. Marinac,
  197. ProStrelac,
  198. Mitraljezac,
  199. Doktor,
  200. VatrenaPodrska,
  201. Miner,
  202. Demolitions,
  203. Rusher,
  204. Rambo,
  205. Partizan,
  206. Spijun,
  207. Bombarder,
  208. Gunner,
  209. Pesadinac,
  210. Pobunjenik,
  211. Assassin,
  212. SWAT,
  213. Major,
  214. Hitman,
  215. NjemackiStrijelac,
  216. Armageddon,
  217. Terminator,
  218. ProMiner,
  219. Zagor,
  220. Camper,
  221. Slayer,
  222. ProAssassin,
  223. Zastavnik,
  224. Admiral,
  225. Fighter,
  226. Policajac,
  227. Specijalac,
  228. Predator,
  229. NemackiOficir,
  230. Kurwa,
  231. ProfVojnik,
  232. Crysis,
  233. ProfStrelac,
  234. UniverzalniSoldier,
  235. Komandos,
  236. ProSwat,
  237. JuliM4A1,
  238. Juliscout,
  239. JuliHE,
  240. JuliGhost,
  241. Ninja,
  242. Noizy,
  243. Tito,
  244. Dragon,
  245. Merlin,
  246. OTR,
  247. dinamita,
  248. raketa,
  249. mina
  250.  
  251. }
  252. new const energija_klasa[] = { //Helti Klase
  253. 0, // Nema
  254. 120, // Snajperista
  255. 140, // Marinac
  256. 130, // Pro-Strelac
  257. 120, // Mitraljezac
  258. 110, // Doktor
  259. 100, // Vatrena Podrska
  260. 100, // Miner
  261. 110, // Demolitions
  262. 100, // Rusher
  263. 130, // Rambo
  264. 120, // Partizan
  265. 110, // Spijun
  266. 120, // Bombarder
  267. 70, // Gunner
  268. 110, // Pesadinac
  269. 150, // Pobunjenik
  270. 110, // Assassin
  271. 120, // SWAT
  272. 120, //Major
  273. 120, //Hitman
  274. 100, //Njemacki Strijelac
  275. 130, //Armageddon
  276. 100, //Terminator
  277. 120, //ProMiner
  278. 120, //Zagor
  279. 130, //Camper
  280. 140, //Slayer
  281. 120, //ProAssassin
  282. 110, // Zastavnik
  283. 125, // Admiral
  284. 150, // Fighter
  285. 120, // Policajac
  286. 110, // Specijalac
  287. 100, // Predator
  288. 105, // NemackiOficir
  289. 124, // Kurwa
  290. 130, // ProfVojnik
  291. 80, // Crysis
  292. 105, // ProfStrelac
  293. 120, //UniverzalniSoldier
  294. 130, //Komandos
  295. 120, //ProSwat
  296. 300, //JuliM4A1
  297. 300,
  298. 300,
  299. 300,
  300. 500,
  301. 150,
  302. 300,
  303. 1000,
  304. 300,
  305. 500,
  306. 150,
  307. 150,
  308. 150
  309. }
  310. new const Float:brzina_klasa[] = { //Brzina Klase
  311. 0.0, // Nema
  312. 1.2, // Snajperista
  313. 1.35, // Marinac
  314. 0.8, // Pro-Strelac
  315. 0.8, // Mitraljezac
  316. 1.0, // Doktor
  317. 1.0, // Vatrena Podrska
  318. 1.0, // Miner
  319. 1.0, // Demolitions
  320. 1.3, // Rusher
  321. 1.15, // Rambo
  322. 1.1, // Partizan
  323. 1.2, // Spijun
  324. 0.9, // Bombarder
  325. 1.35, // Gunner
  326. 1.2, // Pesadinac
  327. 1.5, // Pobunjenik
  328. 2.0, // Assassin
  329. 0.8, // SWAT
  330. 1.5, //Major
  331. 1.2, //Hitman
  332. 1.15, //Njemacki Strijelac
  333. 1.2, //Armageddon
  334. 1.2, //Terminator
  335. 1.3, //ProMiner
  336. 1.3, //Zagor
  337. 1.2, //Camper
  338. 1.1, //Slayer
  339. 1.2, //ProAssassin
  340. 1.4, // Zastavnik
  341. 1.1, // Admiral
  342. 1.4, // Fighter
  343. 1.2, // Policajac
  344. 1.8, // Specijalac
  345. 1.3, // Predator
  346. 1.0, // NemackiOficir
  347. 1.2, // Kurwa
  348. 1.6, // ProfVojnik
  349. 1.8, // Crysis
  350. 1.0, // ProfStrelac
  351. 1.3, //UniverzalniSoldier
  352. 1.2, //Komandos
  353. 1.2, //ProSwat
  354. 2.0,
  355. 2.0,
  356. 2.0,
  357. 2.0,
  358. 2.0,
  359. 2.0,
  360. 2.0,
  361. 2.0,
  362. 2.0,
  363. 2.0,
  364. 1.3,
  365. 1.3,
  366. 1.3
  367. }
  368. new const oklop_klase[] = { //Armor Klase
  369. 0, // Nema
  370. 120, // Snajperista
  371. 140, // Marinac
  372. 130, // Pro-Strelac
  373. 120, // Mitraljezac
  374. 110, // Doktor
  375. 100, // Vatrena Podrska
  376. 100, // Miner
  377. 110, // Demolitions
  378. 100, // Rusher
  379. 130, // Rambo
  380. 120, // Partizan
  381. 110, // Spijun
  382. 120, // Bombarder
  383. 70, // Gunner
  384. 110, // Pesadinac
  385. 150, // Pobunjenik
  386. 110, // Assassin
  387. 120, // SWAT
  388. 120, //Major
  389. 110, //Hitman
  390. 100, //Njemacki Strijelac
  391. 120, //Armageddon
  392. 100, //Terminator
  393. 100, //ProMiner
  394. 100, //Zagor
  395. 100, //Camper
  396. 100, //Slayer
  397. 160, //ProAssassin
  398. 8300, //Zastavnik
  399. 70, //Admiral
  400. 100, //Fighter
  401. 50, //Policajac
  402. 0, //Specijalac
  403. 25, //Predator
  404. 80, //NemackiOficir
  405. 100, //Kurwa
  406. 90, //ProfVojnik
  407. 10, //Crysis
  408. 45, //ProfStrelac
  409. 568, //UniverzalniSoldier
  410. 100, //Komandos
  411. 100, //ProSwat
  412. 300, //JULIM4A1
  413. 300,
  414. 300,
  415. 50000,
  416. 100,
  417. 150,
  418. 150,
  419. 3000,
  420. 100,
  421. 500,
  422. 100,
  423. 100,
  424. 100
  425. }
  426. new const naziv_klase[][] = {"Nema",
  427. "Snajperista",
  428. "Marinac",
  429. "Pro-Strelac",
  430. "Mitraljezac",
  431. "Doktor",
  432. "Vatrena podrska",
  433. "Miner",
  434. "Demolitions",
  435. "Rusher",
  436. "Rambo",
  437. "Partizan",
  438. "Spijun",
  439. "Bombarder",
  440. "Gunner",
  441. "Pesadinac",
  442. "Pobunjenik",
  443. "Assassin (2 boost)",
  444. "SWAT",
  445. "Major (2 boost)",
  446. "Hitman (2 boost)",
  447. "Njemacki Strijelac",
  448. "Armageddon",
  449. "Terminator",
  450. "ProMiner",
  451. "Zagor (3 boost)",
  452. "Camper (3 boost)",
  453. "Slayer",
  454. "ProAssassin (3 boost )",
  455. "Zastavnik",
  456. "Admiral",
  457. "Fighter",
  458. "Policajac",
  459. "Specijalac",
  460. "Predator",
  461. "Nemacki Oficir",
  462. "Kurwa",
  463. "Profesionalni Vojnik",
  464. "Crysis",
  465. "Profesionalni Strelac",
  466. "UniverzalniSoldier (2 boost)",
  467. "Komandos (2 boost)",
  468. "ProSwat (3 boost)",
  469. "JuliM4A1 (4 boost) ",
  470. "Juliscout (4 boost)",
  471. "JuliHE (4 boost)",
  472. "JuliGhost(4 boost)",
  473. "Ninja (4 boost) ",
  474. "Noizy ",
  475. "Tito (4 boost) ",
  476. "Dragon (Admin only) ",
  477. "Merlin (4 Boost)",
  478. " OTR (4 boost) ",
  479. " dinamita (2 boost) ",
  480. "raketa (2boost) ",
  481. "min (2boost)"
  482.  
  483.  
  484. };
  485. new const frakcije[][] = {
  486. "Nema",
  487. "\yObicne Klase",
  488. "\yPremium Klase",
  489. "\ySuper Premium",
  490. "\yMin,Dynamit,Rockets",
  491. "\yJuli Premium",
  492. "\yMega Premium",
  493. "\yAdmin Only"
  494. }
  495.  
  496. enum {
  497. NONE = 0,
  498. obicna,
  499. premium,
  500. superpremium,
  501. mn,
  502. juli,
  503. mg,
  504. adm
  505. }
  506.  
  507. new const pripada[] = {
  508. NONE, // Nema 0
  509. obicna, // Snajperista 1
  510. obicna, // Marinac 2
  511. obicna, // Pro Strelac 3
  512. obicna, // Mitraljezac 4
  513. obicna, // Doktor 5
  514. obicna, // Vatrena Podrska 6
  515. obicna, // Miner 7
  516. obicna, // Demolitions 8
  517. obicna, // Rusher 9
  518. obicna, // Rambo 10
  519. obicna, // Partizan 11
  520. obicna, // Spijun 12
  521. obicna, // Bomberder 13
  522. obicna, // Gunner 14
  523. obicna,
  524. obicna,
  525. premium,
  526. obicna,
  527. premium,
  528. premium,
  529. obicna,
  530. obicna,
  531. obicna,
  532. obicna,
  533. superpremium,
  534. superpremium,
  535. obicna,
  536. superpremium,
  537. obicna,
  538. obicna,
  539. obicna,
  540. obicna,
  541. obicna,
  542. obicna,
  543. obicna,
  544. obicna,
  545. obicna,
  546. obicna,
  547. obicna,
  548. premium,
  549. premium,
  550. superpremium,
  551. juli,
  552. juli,
  553. juli,
  554. juli,
  555. mg,
  556. obicna,
  557. mg,
  558. adm,
  559. mg,
  560. mg,
  561. mn,
  562. mn,
  563. mn
  564.  
  565.  
  566. }
  567. new frakcija_igraca[33]
  568. new const opis_klase[][] = {"Nema",
  569. "\yOruzije:\w AWP, Deagle, Scout^n\yEnergija:\w 120 HP^n\yArmor:\w 100 AP^n\yBrzina:\w 120%^n\ySpecijalne moci:\w 1:3 sansa za brzo ubijanje nozem",
  570. "\yOruzije:\w Deagle^n\yEnergija:\w 140 HP^n\yArmor:\w 100 AP^n\yBrzina:\w 135%^n\ySpecijalne moci:\w Odma ubija nozem",
  571. "\yOruzije:\w AK47, M4A1^n\yEnergija:\w 110 HP^n\yArmor:\w 100 AP^n\yBrzina:\w 80%^n\ySpecijalne moci:\w Nema",
  572. "\yOruzije:\w M249(krmaca)^n\yEnergija:\w 120 HP^n\yArmor:\w 150 AP^n\yBrzina:\w 80%^n\ySpecijalne moci:\w Otporan na mine, ima sve bombe",
  573. "\yOruzije:\w UMP45^n\yEnergija:\w 110 HP^n\yArmor:\w 100 AP^n\yBrzina:\w 100%^n\ySpecijalne moci:\w Ima komplet za prvu pomoc",
  574. "\yOruzije:\w MP5^n\yEnergija:\w 100 HP^n\yArmor:\w 0 AP^n\yBrzina:\w 100%^n\ySpecijalne moci:\w Ima dve rakete",
  575. "\yOruzije:\w P90^n\yEnergija:\w 100 HP^n\yArmor:\w 100 AP^n\yBrzina:\w 100%^n\ySpecijalne moci:\w Dobija 3 mine",
  576. "\yOruzije:\w AUG^n\yEnergija:\w 110 HP^n\yArmor:\w 100 AP^n\yBrzina:\w 100%^n\ySpecijalne moci:\w Ima sve bombe, dobija dinamit, koji ubija sve u krugu od 1m",
  577. "\yOruzije:\w M3(pumparica)^n\yEnergija:\w 100 HP^n\yArmor:\w 0 AP^n\yBrzina:\w 130%^n\ySpecijalne moci:\w Nema",
  578. "\yOruzije:\w FAMAS^n\yEnergija:\w 130 HP^n\yArmor:\w 150 AP^n\yBrzina:\w 115%^n\ySpecijalne moci:\w Za svako ubistvo dobija 20 HP i pun sanzer, dupli skok^n\yKontakt:\w vaske.va08@hotmail.com",
  579. "\yOruzije:\w P90, FLASHBANG^n\yEnergija:\w 100 HP^n\yArmor:\w 0 AP^n\yBrzina:\w 110%^n\ySpecijalne moci:\w Manje je vidljiv",
  580. "\yOruzije:\w Deagle^n\yEnergija:\w 70 HP^n\yArmor:\w 0 AP^n\yBrzina:\w 120%^n\ySpecijalne moci:\w Kamuflaza (izgleda kao neprijatelj)",
  581. "\yOruzije:\w M4A1, Deagle, HE-Grenade^n\yEnergija:\w 140 HP^n\yArmor:\w 150 AP^n\yBrzina:\w 90%^n\ySpecijalne moci:\w Nema",
  582. "\yOruzije:\w G3/SG-1(rafalni snajper)^n\yEnergija:\w 125 HP^n\yArmor:\w 50 AP^n\yBrzina:\w 90%^n\ySpecijalne moci:\w Ima 1 raketu^n\yKontakt:\w vaske.va08@hotmail.com",
  583. "\yOruzije:\w GAIL + P228,^n\yEnergija:\w 100 HP^n\yArmor:\w 0 AP^n\yBrzina:\w 135%^n\ySpecijalne moci:\w Nema",
  584. "\yOruzije:\w SG552, HE-Grenade^n\yEnergija:\w 100 HP^n\yArmor:\w 25 AP^n\yBrzina:\w 120%^n\ySpecijalne moci:\w Ima 1 minu",
  585. "\yOruzije:\w Noz, USP^n\yEnergija:\w 10 HP^n\yArmor:\w 100 AP^n\yBrzina:\w 200%^n\ySpecijalne moci:\w Nevidljiv kad ima noz^n\yKontakt:\w vaske.va08@hotmail.com",
  586. "\yOruzije:\w M4a1^n\yEnergija:\w 100 HP^n\yArmor:\w 0 AP^n\yBrzina:\w 80%^n\ySpecijalne moci:\w Otporan na noz",
  587. "\rOruzije:\y Ak47,M4a1,Svi pistolji^n\rEnergija:\y 90HP^n\rPancir:\y 0AP\r^nBrzina:\y 110%\r^nSpecijalne moci:\y Ima 10 mine",
  588. "\rOruzije:\y Ak47,M4a1^n\rEnergija:\y 90HP^n\rPancir:\y 0AP\r^nBrzina:\y 110%\r^nSpecijalne moci:\y Ima 6 Raketa",
  589. "\yOruzije:\w Ak47 \yEnergija:\w 120 HP^n\yArmor:\w 110 AP^n\yBrzina:\w 100%^n\ySpecijalne moci:\w Ima 2 Raketa",
  590. "\rOruzije:\y AK47, AUG, HE^n\rEnergija:\y 160HP ^n\rPancir:\y 120AP\r^nBrzina:\y 140%\r^nSpecijalne moci:\y Manje je vidljiv i 2 dinamita",
  591. "\rOruzije:\y AK47+Deagle^n\rEnergija:\y 140HP ^n\rPancir:\y 50AP\r^nBrzina:\y 120%\r^nSpecijalne moci:\y 2 Rakete",
  592. "\rOruzije:\y MP5^n\rEnergija:\y 140HP ^n\rPancir:\y 50AP\r^nBrzina:\y 120%\r^nSpecijalne moci:\y Ima 5 mini",
  593. "\rOruzije:\y M4a1, ak47^n\rEnergija:\y 120HP ^n\rPancir:\y 50AP\r^nBrzina:\y 120%\r^nSpecijalne moci:\y Ima 10 Raketa",
  594. "\rOruzije:\y AWP, Deagle^n\rEnergija:\y 120HP ^n\rPancir:\y 50AP\r^nBrzina:\y 120%\r^nSpecijalne moci:\y Ima awp master",
  595. "\rOruzije:\y Famas, P90^n\rEnergija:\y 110HP^n\rPancir:\y 120AP\r^nBrzina:\y 140%\r^nSpecijalne moci:\yIma 3 rakete",
  596. "\rOruzije:\y Ak47, Deagle^n\rEnergija:\y 110HP^n\rPancir:\y 160AP\r^nBrzina:\y 140%\r^nSpecijalne moci:\y Ima m249 1/5 Sansi sA Killom",
  597. "\rOruzije:\y M4A1, P90, Deagle ^n\rEnergija:\y 90HP ^n\rPancir:\y 300AP \r^nBrzina:\y 140% \r^nSpecijalne moci:\y 2 rakete", // 42
  598. "\rOruzije:\y AK47, Famas ^n\rEnergija:\y 125HP ^n\rPancir:\y 70AP \r^nBrzina:\y 110% \r^nSpecijalne moci:\y NEMA", // 43
  599. "\rOruzije:\y M4A1, Scout, USP ^n\rEnergija:\y 150HP ^n\rPancir:\y 100AP \r^nBrzina:\y 140% \r^nSpecijalne moci:\y 2 dinamita, dupli skok, 1/3 za instant kill nozem", // 44
  600. "\rOruzije:\y XM1014, TMP, fiveseven ^n\rEnergija:\y 150HP ^n\rPancir:\y 50AP \r^nBrzina:\y 120% \r^nSpecijalne moci:\y NEMA", // 45
  601. "\rOruzije:\y FAMAS, P228 ^n\rEnergija:\y 110HP ^n\rPancir:\y 0AP \r^nBrzina:\y 150% \r^nSpecijalne moci:\y NEMA", // 46
  602. "\rOruzije:\y sg552, glock18, smokegrenade ^n\rEnergija:\y 100HP ^n\rPancir:\y 25AP \r^nBrzina:\y 130% \r^nSpecijalne moci:\y NEMA", // 47
  603. "\rOruzije:\y P90, glock18, smokegrenade ^n\rEnergija:\y 105HP ^n\rPancir:\y 80AP \r^nBrzina:\y 100% \r^nSpecijalne moci:\y NEMA", // 48
  604. "\rOruzije:\y AK47, 2 HE ^n\rEnergija:\y 124HP ^n\rPancir:\y 100AP \r^nBrzina:\y 120% \r^nSpecijalne moci:\y 2 dinamita", // 49
  605. "\rOruzije:\y FAMAS,USP ^n\rEnergija:\y 130HP ^n\rPancir:\y 90AP \r^nBrzina:\y 160% \r^nSpecijalne moci:\y 1 raketu", // 50
  606. "\rOruzije:\y SG552,m4a1 ^n\rEnergija:\y 80HP ^n\rPancir:\y 10AP \r^nBrzina:\y 180% \r^nSpecijalne moci:\y 2 rakete, super speed, nevidljiv", // 51
  607. "\rOruzije:\y AWP, m4a1 ^n\rEnergija:\y 105HP ^n\rPancir:\y 45AP \r^nBrzina:\y 100% \r^nSpecijalne moci:\y Smanjeno trzanje puske", // 52
  608. "\rOruzije:\y Bazook,Usp ^n\rEnergija:\y 125HP ^n\rPancir:\y 586AP \r^nBrzina:\y 100% \r^nSpecijalne moci:\y IMa bazooku",
  609. "\rOruzije:\y M4a1\r^nEnergija:\y 150 HP^n\rPancir:\y 100 AP^n\rBrzina:\y 120%^n\rSpecijalne moci: Ima 3 rakete,dinamita,mine i instant kill nozem(levi klik)",
  610. "\rOruzije:\y M4a1\r^nEnergija:\y 150 HP^n\rPancir:\y 100 AP^n\rBrzina:\y 120%^n\rSpecijalne moci: Ima 1/3 Sanse Sa killom M4A1",
  611. "\rOruzije:\y M4a1\r^nEnergija:\y 300 HP^n\rPancir:\y 300 AP^n\rBrzina:\y 200%^n\rSpecijalne moci: Instant kill with M4A1 , little invsible",
  612. "\rOruzije:\y scout\r^nEnergija:\y 300 HP^n\rPancir:\y 300 AP^n\rBrzina:\y 200%^n\rSpecijalne moci: Instant kill with Scout , little invsible",
  613. "\rOruzije:\y Famas,HE\r^nEnergija:\y 300 HP^n\rPancir:\y 300 AP^n\rBrzina:\y 200%^n\rSpecijalne moci: Instant kill with HE , little invsible 30 mina ",
  614. "\rOruzije:\y Tmp\r^nEnergija:\y 300 HP^n\rPancir:\y 300 AP^n\rBrzina:\y 200%^n\rSpecijalne moci: Instant kill with Knife , noone can see it ",
  615. "\rOruzije:\y M4A1 \r^nEnergija:\y 300 HP^n\rPancir:\y 300 AP^n\rBrzina:\y 200%^n\rSpecijalne moci: duck=invisible ",
  616. "\roruzije:\y M4A1 \r^nEnergija:\y 150 HP^n\rPancir:\y 150 AP^n\rBrzina:\y 200%^n\rSpecijalne moci: 1/10 instant kill ",
  617. "\roruzije:\y M4A1, AK47 \r^nEnergija:\y 300 HP^n\rPancir:\y 150 AP^n\rBrzina:\y 200%^n\rSpecijalne moci: 1/5 with Ak47 and M4A1 ",
  618. "\roruzije:\y tmp \r^nEnergija:\y 300 HP^n\rPancir:\y 150 AP^n\rBrzina:\y 200%^n\rSpecijalne moci: instant kill with tmp , head only ",
  619. "\roruzije:\y Ak47 \r^nEnergija:\y 300 HP^n\rPancir:\y 150 AP^n\rBrzina:\y 200%^n\rSpecijalne moci: Duck= invisible 1/10 with ak47 ",
  620. "\roruzije:\y AWP , Scout \r^nEnergija:\y 300 HP^n\rPancir:\y 150 AP^n\rBrzina:\y 200%^n\rSpecijalne moci: instant kill with awp and scout ",
  621. "\roruzije:\y P90 \r^nEnergija:\y 150 HP^n\rPancir:\y 150 AP^n\rBrzina:\y 200%^n\rSpecijalne moci: 20 dynamites ",
  622. "\roruzije:\y P90 \r^nEnergija:\y 150 HP^n\rPancir:\y 150 AP^n\rBrzina:\y 200%^n\rSpecijalne moci: 20 rockets ",
  623. "\roruzije:\y P90 \r^nEnergija:\y 150 HP^n\rPancir:\y 150 AP^n\rBrzina:\y 200%^n\rSpecijalne moci: 20 min "
  624.  
  625.  
  626.  
  627.  
  628.  
  629. };
  630. new broj_medkit_igraca[33];
  631. new broj_raketa_igraca[33];
  632. new Float:prethodna_raketa_igraca[33];
  633. new broj_min_igraca[33];
  634. new broj_dinamita_igraca[33];
  635. new broj_skokova_igraca[33];
  636.  
  637. new bool:freezetime = true;
  638.  
  639. public plugin_init()
  640. {
  641. register_plugin(PLUGIN, VERSION, AUTHOR);
  642.  
  643. g_vault = nvault_open("CodMod");
  644.  
  645. register_think("MedKit","MedKitThink");
  646.  
  647. RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
  648. RegisterHam(Ham_Spawn, "player", "Pocetak", 1);
  649. RegisterHam(Ham_Touch, "armoury_entity", "DodirOruzija");
  650. RegisterHam(Ham_Touch, "weapon_shield", "DodirOruzija");
  651. RegisterHam(Ham_Touch, "weaponbox", "DodirOruzija");
  652.  
  653. register_forward(FM_CmdStart, "CmdStart");
  654. register_forward(FM_TraceLine,"fw_traceline");
  655. register_forward(FM_EmitSound, "EmitSound");
  656.  
  657. register_logevent("PocetakRunde", 2, "1=Round_Start");
  658.  
  659. register_event("DeathMsg", "Death", "ade");
  660. register_event("Damage", "Damage", "b", "2!=0");
  661. register_event("CurWeapon","CurWeapon","be", "1=1");
  662. register_event("HLTV", "novaRunda", "a", "1=0", "2=0");
  663.  
  664. register_touch("Rocket", "*" , "DodirRakete");
  665. register_touch("Mine", "player", "DodirMine");
  666.  
  667. cvar_xp_za_ubistvo = register_cvar("cod_killxp", "1000");
  668. register_concmd("cod_addlvl", "cmd_addlvl", ADMIN_RCON, "<name> <level>");
  669.  
  670. register_clcmd("say /klasa", "IzaberiKlasu");
  671. register_clcmd("say /opis", "OpisKlase");
  672. register_clcmd("say /predmet", "OpisPredmeta");
  673. register_clcmd("say /item", "OpisPredmeta");
  674. register_clcmd("say /drop", "IzbaciPredmet");
  675. register_clcmd("say /prodaj", "IzbaciPredmet");
  676. register_clcmd("say /izbaci", "IzbaciPredmet");
  677. register_clcmd("say /reset", "KomandaResetujPoene");
  678. register_clcmd("say /shop", "Shop");
  679. register_clcmd("say /pomoc", "Pomoc");
  680. register_clcmd("say /help", "Pomoc");
  681. register_clcmd("fullupdate", "BlokirajKomande");
  682. register_clcmd("say", "hook_say")
  683.  
  684. g_msg_screenfade = get_user_msgid("ScreenFade");
  685.  
  686. SyncHudObj = CreateHudSyncObj();
  687. SyncHudObj3 = CreateHudSyncObj();
  688.  
  689. register_menucmd(register_menuid("Klasa:"), 1023, "OpisKlase");
  690. iskustvo_za_pare = 400;
  691. iskustvo_za_mnogopara = 1000;
  692.  
  693. format(za_hejtere, 10, "1")
  694. }
  695.  
  696. public plugin_cfg()
  697. {
  698. server_cmd("sv_maxspeed 9999");
  699. }
  700.  
  701. public plugin_precache()
  702. {
  703. new Entity = create_entity( "info_map_parameters" );
  704.  
  705. DispatchKeyValue( Entity, "buying", "3" );
  706. DispatchSpawn( Entity );
  707.  
  708. sprite_white = precache_model("sprites/white.spr") ;
  709. sprite_blast = precache_model("sprites/dexplo.spr");
  710. sprite_beam = precache_model("sprites/zbeam4.spr")
  711.  
  712. precache_sound("QTM_CodMod/select.wav");
  713. precache_sound("QTM_CodMod/start.wav");
  714. precache_sound("QTM_CodMod/start2.wav");
  715. precache_sound("QTM_CodMod/levelup.wav");
  716.  
  717. precache_model("models/w_medkit.mdl");
  718. precache_model("models/rpgrocket.mdl");
  719. precache_model("models/mine.mdl");
  720. }
  721.  
  722. public pfn_keyvalue( Entity )
  723. {
  724. new ClassName[ 20 ], Dummy[ 2 ];
  725. copy_keyvalue( ClassName, charsmax( ClassName ), Dummy, charsmax( Dummy ), Dummy, charsmax( Dummy ) );
  726.  
  727. if( equal( ClassName, "info_map_parameters" ) )
  728. {
  729. remove_entity( Entity );
  730. return PLUGIN_HANDLED ;
  731. }
  732. return PLUGIN_CONTINUE;
  733. }
  734.  
  735. public CmdStart(id, uc_handle)
  736. {
  737. if(!is_user_alive(id))
  738. return FMRES_IGNORED;
  739.  
  740. new button = get_uc(uc_handle, UC_Buttons);
  741. new flags = pev(id, pev_flags);
  742.  
  743.  
  744. if(klasa_igraca[id] == Ninja || klasa_igraca[id] == Merlin)
  745. {
  746. if(button & IN_DUCK)
  747. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 1)
  748. else
  749. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255)
  750.  
  751. }
  752. if(informacije_predmet_igraca[id][0] == 11 || klasa_igraca[id] == Rambo || klasa_igraca[id] == JuliM4A1)
  753. {
  754. new oldbutton = pev(id, pev_oldbuttons);
  755.  
  756. if((button & IN_JUMP) && !(flags & FL_ONGROUND) && !(oldbutton & IN_JUMP) && broj_skokova_igraca[id] > 0)
  757. {
  758. broj_skokova_igraca[id]--;
  759. new Float:velocity[3];
  760. pev(id, pev_velocity,velocity);
  761. velocity[2] = random_float(265.0,285.0);
  762. set_pev(id, pev_velocity,velocity);
  763. }
  764. else if(flags & FL_ONGROUND)
  765. {
  766. broj_skokova_igraca[id] = 0;
  767. if(informacije_predmet_igraca[id][0] == 11)
  768. broj_skokova_igraca[id]++;
  769. if(klasa_igraca[id] == Rambo)
  770. broj_skokova_igraca[id]++;
  771. if(klasa_igraca[id] == JuliM4A1)
  772. broj_skokova_igraca[id]++;
  773. if(klasa_igraca[id] == Tito)
  774. broj_skokova_igraca[id]++;
  775. if(klasa_igraca[id] == Dragon)
  776. broj_skokova_igraca[id]++;
  777. if(klasa_igraca[id] == OTR)
  778. broj_skokova_igraca[id]++;
  779. }
  780. }
  781.  
  782. if(button & IN_ATTACK)
  783. {
  784. new Float:punchangle[3];
  785.  
  786. if(informacije_predmet_igraca[id][0] == 20)
  787. set_pev(id, pev_punchangle, punchangle);
  788. if(informacije_predmet_igraca[id][0] == 23)
  789. {
  790. set_pev(id, pev_punchangle, punchangle);
  791. for(new i=0; i<3;i++)
  792. punchangle[i]*=0.9;
  793. set_pev(id, pev_punchangle, punchangle);
  794. }
  795. }
  796.  
  797. if(informacije_predmet_igraca[id][0] == 28 && button & IN_JUMP && button & IN_DUCK && flags & FL_ONGROUND && get_gametime() > informacije_predmet_igraca[id][1]+4.0)
  798. {
  799. informacije_predmet_igraca[id][1] = floatround(get_gametime());
  800. new Float:velocity[3];
  801. VelocityByAim(id, 700, velocity);
  802. velocity[2] = random_float(265.0,285.0);
  803. set_pev(id, pev_velocity, velocity);
  804. }
  805. return FMRES_IGNORED;
  806. }
  807.  
  808. public cmd_addlvl(id, level, cid)
  809. {
  810. if(!cmd_access(id,level,cid,3))
  811. return PLUGIN_HANDLED;
  812. new arg1[33];
  813. new arg2[6];
  814. read_argv(1, arg1, 32);
  815. read_argv(2, arg2, 5);
  816. new player = cmd_target(id, arg1);
  817. new value = str_to_num(arg2)-1;
  818.  
  819. iskustvo_igraca[player] = iskustvo_levelu[value];
  820. level_igraca[player] = 0;
  821. ProveriNivo(player);
  822. return PLUGIN_HANDLED;
  823. }
  824.  
  825. public Shop(id)
  826. {
  827. new menu = menu_create("Shop:", "Shop_Handle");
  828. menu_additem(menu, "Aspirin \r[Dodaje 50 HP] \yCena: \r3000$");
  829. menu_additem(menu, "Morfijum \r[Dodaje 100 HP] \yCena: \r5000$");
  830. menu_additem(menu, "RedBull \r[Veci Skok + Veca Brzina] \yCena: \r7500$");
  831. menu_additem(menu, "Iskustvo \r[Dodaje 400 XP] \yCena: \r5000$");
  832. menu_additem(menu, "Super iskustvo \r[Dodaje 1000 XP] \yCena: \r10000$");
  833. menu_additem(menu, "Slucajni Izbor \r[Predmet] \yCena: \r3000$");
  834. menu_additem(menu, "Mine \r[Dobijate 2 Mine] \yCena: \r10000$");
  835. menu_display(id, menu);
  836. }
  837. public Shop_Handle(id, menu, item)
  838. {
  839. client_cmd(id, "spk QTM_CodMod/select");
  840.  
  841. if(item == MENU_EXIT)
  842. {
  843. menu_destroy(menu);
  844. return PLUGIN_CONTINUE;
  845. }
  846. menu_display(id, menu);
  847. new pare_igraca = cs_get_user_money(id);
  848. new hp = get_user_health(id);
  849. switch(item)
  850. {
  851. case 0:
  852. {
  853. new cena = 3000;
  854. if (pare_igraca<cena)
  855. {
  856. ColorChat(id,GREEN,"[Shop] ^1Nemas dovoljno para.");
  857. return PLUGIN_CONTINUE;
  858. }
  859. if(hp >= maximalna_energija_igraca[id] || klasa_igraca[id] == Assassin)
  860. {
  861. ColorChat(id,GREEN,"[Shop] ^1Vec imate maximalnu energiju.");
  862. return PLUGIN_CONTINUE;
  863. }
  864. new ammount=50;
  865. new nova_energija = (hp+ammount<maximalna_energija_igraca[id])? hp+ammount: maximalna_energija_igraca[id];
  866. set_user_health(id, nova_energija);
  867. ColorChat(id,GREEN,"[Shop] ^1kupio si ^3Aspirin");
  868. cs_set_user_money(id, pare_igraca-cena);
  869. }
  870. case 1:
  871. {
  872. new cena = 5000;
  873. if (pare_igraca<cena)
  874. {
  875. ColorChat(id,GREEN,"[Shop] ^1Nemas dovoljno para.");
  876. return PLUGIN_CONTINUE;
  877. }
  878. if(hp >= maximalna_energija_igraca[id] || klasa_igraca[id] == Assassin)
  879. {
  880. ColorChat(id,GREEN,"[Shop] ^1Vec imate maximalnu energiju.");
  881. return PLUGIN_CONTINUE;
  882. }
  883. new ammount=100;
  884. new nova_energija = (hp+ammount<maximalna_energija_igraca[id])? hp+ammount: maximalna_energija_igraca[id];
  885. set_user_health(id, nova_energija);
  886. ColorChat(id,GREEN,"[Shop] ^1Kupio si^3 Morfijum");
  887. cs_set_user_money(id, pare_igraca-cena);
  888. }
  889. case 2:
  890. {
  891. new cena = 7500;
  892. if (pare_igraca<cena)
  893. {
  894. ColorChat(id,GREEN,"[Shop] ^1Nemas dovoljno para.");
  895. return PLUGIN_CONTINUE;
  896. }
  897. set_user_gravity(id,get_user_gravity(id) - 0.3);
  898. set_user_maxspeed(id,get_user_maxspeed(id) + 10.0);
  899. ColorChat(id,GREEN,"[Shop]^1 Kupio si^3 RedBull");
  900. cs_set_user_money(id, pare_igraca-cena)
  901. }
  902. case 3:
  903. {
  904. new cena = 5000;
  905. if (pare_igraca<cena)
  906. {
  907. ColorChat(id,GREEN,"[Shop]^1 Nemas dovoljno para.");
  908. return PLUGIN_CONTINUE;
  909. }
  910. iskustvo_igraca[id] += iskustvo_za_pare;
  911. ColorChat(id,GREEN,"[Shop] ^1Kupio si ^3Iskustvo");
  912. cs_set_user_money(id, pare_igraca-cena)
  913. ProveriNivo(id);
  914. }
  915. case 4:
  916. {
  917. new cena = 10000;
  918. if (pare_igraca<cena)
  919. {
  920. ColorChat(id,GREEN,"[Shop]^1 Nemas dovoljno para.");
  921. return PLUGIN_CONTINUE;
  922. }
  923. iskustvo_igraca[id] += iskustvo_za_mnogopara;
  924. ColorChat(id,GREEN,"[Shop]^1Kupio si ^3Super Iskustvo");
  925. cs_set_user_money(id, pare_igraca-cena)
  926. ProveriNivo(id);
  927. }
  928. case 5:
  929. {
  930. new cena = 3000;
  931. if (pare_igraca<cena)
  932. {
  933. ColorChat(id,RED,"[Shop]^1 Nemas dovoljno para!");
  934. return PLUGIN_CONTINUE;
  935. }
  936. cs_set_user_money(id, pare_igraca-cena)
  937. DajPredmet(id, random_num(1, sizeof naziv_predmeta-1));
  938. }
  939. case 6:
  940. {
  941. new cena = 10000;
  942. if (pare_igraca<cena)
  943. {
  944. ColorChat(id,RED,"[Shop]^1 Nemas dovoljno para!");
  945. return PLUGIN_HANDLED;
  946. }
  947. else if(klasa_igraca[id] == VatrenaPodrska || klasa_igraca[id] == Marinac || klasa_igraca[id] == Miner || klasa_igraca[id] == Demolitions || klasa_igraca[id] == Gunner)
  948. {
  949. ColorChat(id,GREEN,"[Shop]^1 Vasa klasa ne moze da kupi mine");
  950. return PLUGIN_CONTINUE;
  951. }
  952. broj_min_igraca[id] +=2;
  953. ColorChat(id,GREEN,"[Shop]^1 Kupio si^3 2 ^1mine");
  954. cs_set_user_money(id, pare_igraca-cena)
  955. }
  956. }
  957. return PLUGIN_CONTINUE;
  958. }
  959.  
  960. public Pocetak(id)
  961. {
  962. if(!is_user_alive(id) || !is_user_connected(id))
  963. return PLUGIN_CONTINUE;
  964.  
  965.  
  966. if(nova_klasa_igraca[id])
  967. {
  968. klasa_igraca[id] = nova_klasa_igraca[id];
  969. nova_klasa_igraca[id] = 0;
  970. strip_user_weapons(id);
  971. give_item(id, "weapon_knife");
  972.  
  973. UcitajPodatke(id, klasa_igraca[id]);
  974. }
  975.  
  976. if(!klasa_igraca[id])
  977. {
  978. IzaberiKlasu(id);
  979. return PLUGIN_CONTINUE;
  980. }
  981.  
  982. switch(klasa_igraca[id])
  983. {
  984. case Snajperista:
  985. {
  986. give_item(id, "weapon_awp");
  987. give_item(id, "weapon_scout");
  988. give_item(id, "weapon_deagle");
  989. }
  990. case Marinac:
  991. {
  992. give_item(id, "weapon_deagle");
  993. }
  994. case ProStrelac:
  995. {
  996. give_item(id, "weapon_m4a1");
  997. give_item(id, "weapon_ak47");
  998. }
  999. case Mitraljezac:
  1000. {
  1001. give_item(id, "weapon_m249");
  1002. give_item(id, "weapon_hegrenade");
  1003. give_item(id, "weapon_flashbang");
  1004. give_item(id, "weapon_smokegrenade");
  1005. }
  1006. case Doktor:
  1007. {
  1008. give_item(id, "weapon_ump45");
  1009. broj_medkit_igraca[id] = 2;
  1010. }
  1011. case VatrenaPodrska:
  1012. {
  1013. give_item(id, "weapon_mp5navy");
  1014. broj_raketa_igraca[id] = 2;
  1015. }
  1016. case Miner:
  1017. {
  1018. give_item(id, "weapon_p90");
  1019. broj_min_igraca[id] = 3;
  1020. }
  1021. case Demolitions:
  1022. {
  1023. give_item(id, "weapon_aug");
  1024. give_item(id, "weapon_hegrenade");
  1025. give_item(id, "weapon_flashbang");
  1026. give_item(id, "weapon_smokegrenade");
  1027. broj_dinamita_igraca[id] = 1;
  1028. }
  1029. case Rusher:
  1030. {
  1031. give_item(id, "weapon_m3");
  1032. }
  1033. case Rambo:
  1034. {
  1035. give_item(id, "weapon_famas");
  1036. }
  1037. case Partizan:
  1038. {
  1039. give_item(id, "weapon_p90");
  1040. give_item(id, "weapon_flashbang");
  1041. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 70);
  1042. }
  1043. case Spijun:
  1044. {
  1045. give_item(id, "weapon_deagle");
  1046. PromeniModel(id, 0);
  1047. }
  1048. case Bombarder:
  1049. {
  1050. give_item(id, "weapon_m4a1");
  1051. give_item(id, "weapon_deagle");
  1052. give_item(id, "weapon_hegrenade");
  1053. }
  1054. case Gunner:
  1055. {
  1056. give_item(id, "weapon_g3sg1");
  1057. broj_raketa_igraca[id] = 1 ;
  1058. }
  1059. case Pesadinac:
  1060. {
  1061. give_item(id, "weapon_galil");
  1062. give_item(id, "weapon_p228");
  1063. }
  1064. case Pobunjenik:
  1065. {
  1066. give_item(id, "weapon_sg552");
  1067. give_item(id, "weapon_hegrenade");
  1068. broj_min_igraca[id] = 1 ;
  1069. }
  1070. case Assassin:
  1071. {
  1072. give_item(id, "weapon_knife");
  1073. give_item(id, "weapon_usp");
  1074. }
  1075. case SWAT:
  1076. {
  1077. give_item(id, "weapon_m4a1");
  1078. }
  1079. case Major:
  1080. {
  1081. give_item(id, "weapon_glock18");
  1082. give_item(id, "weapon_m4a1");
  1083. give_item(id, "weapon_usp");
  1084. give_item(id, "weapon_p228");
  1085. give_item(id, "weapon_deagle");
  1086. give_item(id, "weapon_elite");
  1087. give_item(id, "weapon_fiveseven");
  1088. give_item(id, "weapon_smokegrenade");
  1089. broj_min_igraca[id] = 10
  1090. }
  1091. case Hitman:
  1092. {
  1093. give_item(id, "weapon_m4a1");
  1094. give_item(id, "weapon_ak47");
  1095. give_item(id, "weapon_hegrenade");
  1096. give_item(id, "weapon_deagle");
  1097. broj_raketa_igraca[id] = 5;
  1098. }
  1099. case NjemackiStrijelac:
  1100. {
  1101. give_item(id, "weapon_ak47");
  1102. broj_raketa_igraca[id] = 2;
  1103. }
  1104. case Armageddon:
  1105. {
  1106. give_item(id, "weapon_ak47");
  1107. give_item(id, "weapon_aug");
  1108. give_item(id, "weapon_hegrenade");
  1109. broj_dinamita_igraca[id] = 3
  1110. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 30);
  1111. }
  1112. case Terminator:
  1113. {
  1114. give_item(id, "weapon_ak47");
  1115. give_item(id, "weapon_usp");
  1116. broj_raketa_igraca[id] = 2;
  1117. }
  1118. case ProMiner:
  1119. {
  1120. give_item(id, "weapon_mp5navy");
  1121. give_item(id, "weapon_usp");
  1122. broj_min_igraca[id] = 5;
  1123. }
  1124. case Zagor:
  1125. {
  1126. give_item(id, "weapon_m4a1");
  1127. give_item(id, "weapon_ak47");
  1128. broj_raketa_igraca[id] = 10;
  1129. }
  1130. case Camper:
  1131. {
  1132. give_item(id, "weapon_awp");
  1133. give_item(id, "weapon_deagle");
  1134. broj_raketa_igraca[id] = 10;
  1135. }
  1136. case Slayer:
  1137. {
  1138. give_item(id, "weapon_p90");
  1139. give_item(id, "weapon_famas");
  1140. broj_raketa_igraca[id] = 3;
  1141. }
  1142. case ProAssassin:
  1143. {
  1144. give_item(id, "weapon_m249");
  1145. give_item(id, "weapon_deagle");
  1146. }
  1147. case Zastavnik:
  1148. {
  1149. give_item(id, "weapon_p90");
  1150. give_item(id, "weapon_deagle");
  1151. broj_raketa_igraca[id] = 2;
  1152. }
  1153. case raketa:
  1154. {
  1155. give_item(id, "weapon_p90");
  1156. give_item(id, "weapon_deagle");
  1157. broj_raketa_igraca[id] = 20;
  1158. }
  1159. case dinamita:
  1160. {
  1161. give_item(id, "weapon_p90");
  1162. give_item(id, "weapon_deagle");
  1163. broj_dinamita_igraca[id] = 20;
  1164. }
  1165. case mina:
  1166. {
  1167. give_item(id, "weapon_p90");
  1168. give_item(id, "weapon_deagle");
  1169. broj_min_igraca[id] = 20;
  1170. }
  1171. case Admiral:
  1172. {
  1173. give_item(id, "weapon_ak47");
  1174. give_item(id, "weapon_famas");
  1175. }
  1176. case Fighter:
  1177. {
  1178. give_item(id, "weapon_mac10");
  1179. give_item(id, "weapon_scout");
  1180. give_item(id, "weapon_usp");
  1181. broj_dinamita_igraca[id] = 2
  1182. }
  1183. case Policajac:
  1184. {
  1185. give_item(id, "weapon_xm1014");
  1186. give_item(id, "weapon_tmp");
  1187. give_item(id, "weapon_fiveseven");
  1188.  
  1189. }
  1190. case Specijalac:
  1191. {
  1192. give_item(id, "weapon_famas");
  1193. give_item(id, "weapon_p228");
  1194. give_item(id, "weapon_m3");
  1195.  
  1196. }
  1197. case Predator:
  1198. {
  1199. give_item(id, "weapon_sg552");
  1200. give_item(id, "weapon_glock18");
  1201. give_item(id, "weapon_smokegrenade");
  1202.  
  1203. }
  1204. case NemackiOficir:
  1205. {
  1206. give_item(id, "weapon_p90");
  1207. give_item(id, "weapon_glock18");
  1208. give_item(id, "weapon_smokegrenade");
  1209. }
  1210. case Kurwa:
  1211. {
  1212. give_item(id, "weapon_ak47");
  1213. give_item(id, "weapon_hegrenade");
  1214. give_item(id, "weapon_hegrenade");
  1215. broj_dinamita_igraca[id] = 2
  1216. }
  1217. case ProfVojnik:
  1218. {
  1219. give_item(id, "weapon_famas");
  1220. give_item(id, "weapon_usp");
  1221. broj_raketa_igraca[id] = 2;
  1222. }
  1223. case Crysis:
  1224. {
  1225. give_item(id, "weapon_sg552");
  1226. give_item(id, "weapon_m4a1");
  1227. }
  1228. case ProfStrelac:
  1229. {
  1230. give_item(id, "weapon_awp");
  1231. give_item(id, "weapon_m4a1");
  1232. broj_raketa_igraca[id] = 2;
  1233. }
  1234. case UniverzalniSoldier:
  1235. {
  1236. give_item(id, "weapon_ak47");
  1237. give_item(id, "weapon_deagle");
  1238. }
  1239. case Komandos:
  1240. {
  1241. give_item(id, "weapon_m4a1");
  1242. broj_dinamita_igraca[id] = 3;
  1243. broj_raketa_igraca[id] = 3;
  1244. broj_min_igraca[id] = 3;
  1245. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 20);
  1246.  
  1247. }
  1248. case JuliM4A1:
  1249. {
  1250. give_item(id, "weapon_m4a1");
  1251. }
  1252. case Juliscout:
  1253. {
  1254. give_item(id, "weapon_scout");
  1255. }
  1256. case Ninja:
  1257. {
  1258. give_item(id, "weapon_m4a1");
  1259. }
  1260. case Merlin:
  1261. {
  1262. give_item(id, "weapon_ak47");
  1263. }
  1264. case JuliHE:
  1265. {
  1266. give_item(id, "weapon_famas");
  1267. give_item(id, "weapon_hegrenade");
  1268. }
  1269. case JuliGhost:
  1270. {
  1271. give_item(id, "weapon_tmp");
  1272. give_item(id, "weapon_hegrenade");
  1273. }
  1274. case Tito:
  1275. {
  1276. give_item(id, "weapon_m4a1");
  1277. give_item(id, "weapon_ak47");
  1278. give_item(id, "weapon_hegrenade");
  1279. }
  1280. case Dragon:
  1281. {
  1282. give_item(id, "weapon_tmp");
  1283. give_item(id, "weapon_hegrenade");
  1284. }
  1285. case OTR:
  1286. {
  1287. give_item(id, "weapon_awp");
  1288. give_item(id, "weapon_hegrenade");
  1289. give_item(id, "weapon_scout");
  1290.  
  1291. }
  1292. case Noizy:
  1293. {
  1294. give_item(id, "weapon_m4a1");
  1295. give_item(id, "weapon_hegrenade");
  1296.  
  1297. }
  1298. case ProSwat:
  1299. {
  1300. give_item(id, "weapon_m4a1");
  1301. }
  1302.  
  1303. }
  1304.  
  1305. if(poeni_igraca[id]>0)
  1306. DodelaPoena(id);
  1307.  
  1308. if(informacije_predmet_igraca[id][0] == 10 || informacije_predmet_igraca[id][0] == 9)
  1309. give_item(id, "weapon_hegrenade");
  1310.  
  1311. if(informacije_predmet_igraca[id][0] == 9)
  1312. PromeniModel(id, 0);
  1313.  
  1314. if(informacije_predmet_igraca[id][0] == 1)
  1315. set_user_footsteps(id, 1);
  1316. else
  1317. set_user_footsteps(id, 0);
  1318.  
  1319. if(informacije_predmet_igraca[id][0] == 13)
  1320. give_item(id, "weapon_awp");
  1321.  
  1322. if(informacije_predmet_igraca[id][0] == 16)
  1323. give_item(id, "weapon_deagle");
  1324.  
  1325. if(informacije_predmet_igraca[id][0] == 19)
  1326. informacije_predmet_igraca[id][1] = 1;
  1327.  
  1328. if(informacije_predmet_igraca[id][0] == 27)
  1329. informacije_predmet_igraca[id][1] = 3;
  1330.  
  1331. if(informacije_predmet_igraca[id][0] == 29)
  1332. set_user_gravity(id,get_user_gravity(id) - 0.4);
  1333.  
  1334.  
  1335. new weapons[32];
  1336. new weaponsnum;
  1337. get_user_weapons(id, weapons, weaponsnum);
  1338. for(new i=0; i<weaponsnum; i++)
  1339. if(is_user_alive(id))
  1340. if(maxAmmo[weapons[i]] > 0)
  1341. cs_set_user_bpammo(id, weapons[i], maxAmmo[weapons[i]]);
  1342.  
  1343. PostaviAtribute(id)
  1344.  
  1345. return PLUGIN_CONTINUE;
  1346. }
  1347.  
  1348. public PostaviAtribute(id)
  1349. {
  1350. smanjene_povrede_igraca[id] = (0.7*(1.0-floatpower(1.1, -0.112311341*float(snaga_igraca[id]))));
  1351. maximalna_energija_igraca[id] = energija_klasa[klasa_igraca[id]]+energija_igraca[id]*2;
  1352. brzina_igraca[id] = STANDARDNA_brzina*brzina_klasa[klasa_igraca[id]]+floatround(kondicija_igraca[id]*1.3);
  1353.  
  1354. if(informacije_predmet_igraca[id][0] == 18 && klasa_igraca[id] != Assassin)
  1355. {
  1356. maximalna_energija_igraca[id] += 100;
  1357. brzina_igraca[id] -= 0.4;
  1358. }
  1359.  
  1360. if(informacije_predmet_igraca[id][0] == 25 && klasa_igraca[id] != Assassin)
  1361. {
  1362. maximalna_energija_igraca[id] += 50;
  1363. brzina_igraca[id] -= 0.3;
  1364. }
  1365. if(informacije_predmet_igraca[id][0] == 30)
  1366. {
  1367. brzina_igraca[id] += 1.2;
  1368. }
  1369. set_user_armor(id, oklop_klase[klasa_igraca[id]]);
  1370.  
  1371. if(informacije_predmet_igraca[id][0] == 17)
  1372. set_user_armor(id, 500);
  1373.  
  1374. set_user_health(id, maximalna_energija_igraca[id]);
  1375.  
  1376. if(klasa_igraca[id] == JuliM4A1 || klasa_igraca[id] == JuliGhost || klasa_igraca[id] == Tito)
  1377. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 30);
  1378. else
  1379. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 255);
  1380.  
  1381. }
  1382.  
  1383. public PocetakRunde()
  1384. {
  1385. freezetime = false;
  1386. for(new id=0;id<=32;id++)
  1387. {
  1388. if(!is_user_alive(id))
  1389. continue;
  1390.  
  1391. set_task(0.1, "PostaviBrzinu", id+ZADATAK_POSTAVI_brzinu);
  1392.  
  1393. switch(get_user_team(id))
  1394. {
  1395. case 1: client_cmd(id, "spk QTM_CodMod/start2");
  1396. case 2: client_cmd(id, "spk QTM_CodMod/start");
  1397. }
  1398. }
  1399. }
  1400.  
  1401. public novaRunda()
  1402. {
  1403. freezetime = true;
  1404. new iEnt = find_ent_by_class(-1, "Mine");
  1405. while(iEnt > 0)
  1406. {
  1407. remove_entity(iEnt);
  1408. iEnt = find_ent_by_class(iEnt, "Mine");
  1409. }
  1410. }
  1411.  
  1412. public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
  1413. {
  1414. if(!is_user_alive(this) || !is_user_connected(this) || informacije_predmet_igraca[this][0] == 24 || !is_user_connected(idattacker) || get_user_team(this) == get_user_team(idattacker) || !klasa_igraca[idattacker])
  1415. return HAM_IGNORED;
  1416.  
  1417. new health = get_user_health(this);
  1418. new weapon = get_user_weapon(idattacker);
  1419.  
  1420. if(health < 2)
  1421. return HAM_IGNORED;
  1422.  
  1423. if(informacije_predmet_igraca[this][0] == 27 && informacije_predmet_igraca[this][1]>0)
  1424. {
  1425. informacije_predmet_igraca[this][1]--;
  1426. return HAM_SUPERCEDE;
  1427. }
  1428.  
  1429. if(snaga_igraca[this]>0)
  1430. damage -= smanjene_povrede_igraca[this]*damage;
  1431.  
  1432. if(informacije_predmet_igraca[this][0] == 2 || informacije_predmet_igraca[this][0] == 3)
  1433. damage-=(float(informacije_predmet_igraca[this][1])<damage)? float(informacije_predmet_igraca[this][1]): damage;
  1434.  
  1435. if(informacije_predmet_igraca[idattacker][0] == 5 && !UTIL_In_FOV(this, idattacker) && UTIL_In_FOV(idattacker, this))
  1436. damage*=2.0;
  1437.  
  1438. if(informacije_predmet_igraca[idattacker][0] == 10)
  1439. damage+=informacije_predmet_igraca[idattacker][1];
  1440.  
  1441. if(informacije_predmet_igraca[this][0] == 12)
  1442. damage-=(5.0<damage)? 5.0: damage;
  1443.  
  1444. if(weapon == CSW_AWP && informacije_predmet_igraca[idattacker][0] == 13)
  1445. damage=float(health);
  1446.  
  1447. if(informacije_predmet_igraca[idattacker][0] == 21)
  1448. damage+=10;
  1449.  
  1450. if(informacije_predmet_igraca[idattacker][0] == 22)
  1451. damage+=20;
  1452.  
  1453. if(idinflictor != idattacker && entity_get_int(idinflictor, EV_INT_movetype) != 5)
  1454. {
  1455. if((informacije_predmet_igraca[idattacker][0] == 9 && random_num(1, informacije_predmet_igraca[idattacker][1]) == 1) || informacije_predmet_igraca[idattacker][0] == 10)
  1456. damage = float(health);
  1457. }
  1458.  
  1459. if(weapon == CSW_KNIFE)
  1460. {
  1461. if(klasa_igraca[this] == SWAT)
  1462. return HAM_SUPERCEDE;
  1463. if(informacije_predmet_igraca[this][0] == 4)
  1464. damage=damage*1.4+inteligencija_igraca[idattacker];
  1465. if(informacije_predmet_igraca[idattacker][0] == 8 || (klasa_igraca[idattacker] == Snajperista && random_num(1,2) == 1) || klasa_igraca[idattacker] == Marinac || klasa_igraca[idattacker] == JuliGhost || klasa_igraca[idattacker] == Assassin && !(get_user_button(idattacker) & IN_ATTACK))
  1466. damage = float(health);
  1467. }
  1468.  
  1469. if(klasa_igraca[idattacker] == Camper)
  1470. {
  1471. if(weapon == CSW_AWP)
  1472. damage = float(health);
  1473. }
  1474. if(klasa_igraca[idattacker] == ProSwat)
  1475. {
  1476. if(weapon == CSW_M4A1 && !random(3))
  1477. damage = float(health);
  1478. }
  1479. if(klasa_igraca[idattacker] == JuliM4A1)
  1480. {
  1481. if(weapon == CSW_M4A1 && !random(1))
  1482. damage = float(health);
  1483. }
  1484. if(klasa_igraca[idattacker] == Dragon)
  1485. {
  1486. if(weapon == CSW_TMP && !random(1))
  1487. damage = float(health);
  1488. }
  1489. if(klasa_igraca[idattacker] == Merlin)
  1490. {
  1491. if(weapon == CSW_AK47 && !random(4))
  1492. damage = float(health);
  1493. }
  1494. if(klasa_igraca[idattacker] == Noizy)
  1495. {
  1496. if(weapon == CSW_M4A1 && !random(10))
  1497. damage = float(health);
  1498. }
  1499. if(klasa_igraca[idattacker] == Tito)
  1500. {
  1501. if(weapon == CSW_M4A1 && !random(5))
  1502. damage = float(health);
  1503. }
  1504. if(klasa_igraca[idattacker] == OTR)
  1505. {
  1506. if(weapon == CSW_AWP && !random(1))
  1507. damage = float(health);
  1508. }
  1509. if(klasa_igraca[idattacker] == OTR)
  1510. {
  1511. if(weapon == CSW_SCOUT && !random(1))
  1512. damage = float(health);
  1513. }
  1514. if(klasa_igraca[idattacker] == Tito)
  1515. {
  1516. if(weapon == CSW_AK47 && !random(5))
  1517. damage = float(health);
  1518. }
  1519. if(klasa_igraca[idattacker] == Juliscout)
  1520. {
  1521. if(weapon == CSW_SCOUT && !random(1))
  1522. damage = float(health);
  1523. }
  1524. if(klasa_igraca[idattacker] == JuliHE)
  1525. {
  1526. if(weapon == CSW_HEGRENADE && !random(1))
  1527. damage = float(health);
  1528. }
  1529. if(klasa_igraca[idattacker] == Ninja)
  1530. {
  1531. if(weapon == CSW_M4A1 && !random(9))
  1532. damage = float(health);
  1533. }
  1534. if(klasa_igraca[idattacker] == UniverzalniSoldier)
  1535. {
  1536. if(weapon == CSW_AK47 && !random(9))
  1537. damage = float(health);
  1538. }
  1539. if(klasa_igraca[idattacker] == UniverzalniSoldier)
  1540. {
  1541. if(weapon == CSW_AK47 && !random(10))
  1542. damage = float(health);
  1543. }
  1544. if(klasa_igraca[idattacker] == ProAssassin)
  1545. {
  1546. if(weapon == CSW_M249 && !random(5))
  1547. damage = float(health);
  1548. }
  1549.  
  1550. if(informacije_predmet_igraca[this][0] == 26 && random_num(1, informacije_predmet_igraca[this][1]) == 1)
  1551. {
  1552. SetHamParamEntity(3, this);
  1553. SetHamParamEntity(1, idattacker);
  1554. }
  1555.  
  1556.  
  1557. SetHamParamFloat(4, damage);
  1558. return HAM_IGNORED;
  1559. }
  1560.  
  1561. public Damage(id)
  1562. {
  1563. new attacker = get_user_attacker(id);
  1564. new damage = read_data(2);
  1565. if(!is_user_alive(attacker) || !is_user_connected(attacker) || id == attacker || !klasa_igraca[attacker])
  1566. return PLUGIN_CONTINUE;
  1567.  
  1568. if(informacije_predmet_igraca[attacker][0] == 12 && random_num(1, informacije_predmet_igraca[id][1]) == 1)
  1569. Display_Fade(id,1<<14,1<<14 ,1<<16,255,155,50,230);
  1570.  
  1571. if(get_user_team(id) != get_user_team(attacker))
  1572. {
  1573. while(damage>20)
  1574. {
  1575. damage-=20;
  1576. iskustvo_igraca[attacker]++;
  1577. }
  1578. }
  1579. ProveriNivo(attacker);
  1580. return PLUGIN_CONTINUE;
  1581. }
  1582. public fw_traceline(Float:vecStart[3],Float:vecEnd[3],ignoreM,id,trace)
  1583. {
  1584. if(!is_user_connected(id))
  1585. return;
  1586.  
  1587. new hit = get_tr2(trace, TR_pHit);
  1588.  
  1589. if(!is_user_connected(hit))
  1590. return;
  1591.  
  1592. new hitzone = get_tr2(trace, TR_iHitgroup);
  1593. if(informacije_predmet_igraca[hit][0] == 31 && hitzone != HIT_HEAD || klasa_igraca[hit] == Dragon && hitzone != HIT_HEAD)
  1594. set_tr2(trace, TR_iHitgroup, 8);
  1595.  
  1596. }
  1597. public Death()
  1598. {
  1599. new id = read_data(2);
  1600. new attacker = read_data(1);
  1601.  
  1602. if(!is_user_alive(attacker) || !is_user_connected(attacker))
  1603. return PLUGIN_CONTINUE;
  1604.  
  1605. new weapon = get_user_weapon(attacker);
  1606. new energija = get_user_health(attacker);
  1607.  
  1608. if(get_user_team(id) != get_user_team(attacker) && klasa_igraca[attacker])
  1609. {
  1610. new iskustvo_za_ubistvo = get_pcvar_num(cvar_xp_za_ubistvo);
  1611. new novo_iskustvo = get_pcvar_num(cvar_xp_za_ubistvo);
  1612.  
  1613. if(klasa_igraca[id] == Rambo && klasa_igraca[attacker] != Rambo)
  1614. novo_iskustvo += iskustvo_za_ubistvo*2;
  1615.  
  1616. if(level_igraca[id] > level_igraca[attacker])
  1617. novo_iskustvo += (level_igraca[id]-level_igraca[attacker])*(iskustvo_za_ubistvo/10);
  1618.  
  1619. if(klasa_igraca[attacker] == Rambo || informacije_predmet_igraca[attacker][0] == 15 && maxClip[weapon] != -1)
  1620. {
  1621.  
  1622. new nova_energija = (energija+20<maximalna_energija_igraca[attacker])? energija+20: maximalna_energija_igraca[attacker];
  1623. set_user_clip(attacker, maxClip[weapon]);
  1624. set_user_health(attacker, nova_energija);
  1625. }
  1626. #if defined BOTY
  1627. if(is_user_bot2(attacker) && random(9) == 0)
  1628. IzbaciPredmet(id);
  1629. #endif
  1630. if(!informacije_predmet_igraca[attacker][0])
  1631. DajPredmet(attacker, random_num(1, sizeof naziv_predmeta-1));
  1632.  
  1633. if(informacije_predmet_igraca[attacker][0] == 14)
  1634. {
  1635. new nova_energija = (energija+50<maximalna_energija_igraca[attacker])? energija+50: maximalna_energija_igraca[attacker];
  1636. set_user_health(attacker, nova_energija);
  1637. }
  1638. iskustvo_igraca[attacker] += novo_iskustvo;
  1639. }
  1640.  
  1641. ProveriNivo(attacker);
  1642.  
  1643. if(informacije_predmet_igraca[id][0] == 7 && random_num(1, informacije_predmet_igraca[id][1]) == 1)
  1644. set_task(0.1, "Provera", id+ZADATAK_PROVERA);
  1645.  
  1646. return PLUGIN_CONTINUE;
  1647. }
  1648.  
  1649. public client_putinserver(id)
  1650. {
  1651. DeleteSkills(id);
  1652.  
  1653. ObrisiZadatke(id);
  1654. Obrisipredmet(id);
  1655.  
  1656. set_task(3.0, "PokaziInformacije", id+ZADATAK_POKAZI_INFORMACIJE);
  1657. set_task(10.0, "PokaziReklame", id+ZADATAK_POKAZI_REKLAME);
  1658. }
  1659.  
  1660. public client_disconnect(id)
  1661. {
  1662. SacuvajPodatke(id);
  1663. DeleteSkills(id);
  1664. ObrisiZadatke(id);
  1665. Obrisipredmet(id);
  1666. }
  1667. public DeleteSkills(id)
  1668. {
  1669. klasa_igraca[id] = 0;
  1670. level_igraca[id] = 0;
  1671. iskustvo_igraca[id] = 0;
  1672. poeni_igraca[id] = 0;
  1673. energija_igraca[id] = 0;
  1674. inteligencija_igraca[id] = 0;
  1675. snaga_igraca[id] = 0;
  1676. kondicija_igraca[id] = 0;
  1677. maximalna_energija_igraca[id] = 0;
  1678. brzina_igraca[id] = 0.0;
  1679. }
  1680.  
  1681. public ObrisiZadatke(id)
  1682. {
  1683. remove_task(id+ZADATAK_POKAZI_INFORMACIJE);
  1684. remove_task(id+ZADATAK_POKAZI_REKLAME);
  1685. remove_task(id+ZADATAK_POSTAVI_brzinu);
  1686. remove_task(id+ZADATAK_PROVERA);
  1687. }
  1688.  
  1689. public OpisKlase(id)
  1690. {
  1691. new menu = menu_create("Izaberi Klasu:", "OpisKlase_Handle");
  1692. for(new i=1; i <sizeof naziv_klase; i++)
  1693. menu_additem(menu, naziv_klase[i]);
  1694. menu_setprop(menu, MPROP_EXITNAME, "Izlaz");
  1695. menu_setprop(menu, MPROP_BACKNAME, "Prethodna strana");
  1696. menu_setprop(menu, MPROP_NEXTNAME, "Sledeca strana");
  1697. menu_display(id, menu);
  1698.  
  1699. client_cmd(id, "spk QTM_CodMod/select");
  1700. }
  1701.  
  1702. public OpisKlase_Handle(id, menu, item)
  1703. {
  1704. client_cmd(id, "spk QTM_CodMod/select");
  1705.  
  1706. if(item++ == MENU_EXIT)
  1707. {
  1708. menu_destroy(menu);
  1709. return PLUGIN_CONTINUE;
  1710. }
  1711. new opis[512];
  1712. format(opis, charsmax(opis), "\yKlasa: \w%s^n%s", naziv_klase[item], opis_klase[item]);
  1713. show_menu(id, 1023, opis);
  1714.  
  1715. return PLUGIN_CONTINUE;
  1716. }
  1717. public IzaberiKlasu(id)
  1718. {
  1719. new menu = menu_create("\rIzaberi Klase:", "IzaberiFrakciju_Handle");
  1720. for(new i = 1;i<sizeof(frakcije);i++)
  1721. {
  1722. menu_additem(menu, frakcije[i]);
  1723. }
  1724. menu_display(id, menu);
  1725. menu_setprop(menu, MPROP_EXITNAME, "Izadji");
  1726. }
  1727.  
  1728. public IzaberiFrakciju_Handle(id, menu2, item)
  1729. {
  1730. if(item == MENU_EXIT)
  1731. {
  1732. menu_destroy(menu2);
  1733. return PLUGIN_CONTINUE;
  1734. }
  1735.  
  1736. item++;
  1737. frakcija_igraca[id] = item;
  1738. new menu = menu_create("\rIzaberi Klase:", "IzaberiKlasu_Handle");
  1739. new klasa[50];
  1740. for(new i=1; i<sizeof naziv_klase; i++)
  1741. {
  1742. if(pripada[i] == item)
  1743. {
  1744. UcitajPodatke(id, i);
  1745. format(klasa, 49, "\y%s \rLevel: %i", naziv_klase[i], level_igraca[id]);
  1746. menu_additem(menu, klasa);
  1747. }
  1748. }
  1749.  
  1750. UcitajPodatke(id, klasa_igraca[id]);
  1751.  
  1752. menu_setprop(menu, MPROP_EXITNAME, "Izadji");
  1753. menu_setprop(menu, MPROP_BACKNAME, "Predhodna Strana");
  1754. menu_setprop(menu, MPROP_NEXTNAME, "Sledeca Strana");
  1755. menu_display(id, menu);
  1756.  
  1757. client_cmd(id, "spk QTM_CodMod/select");
  1758.  
  1759. return PLUGIN_CONTINUE;
  1760. }
  1761. public IzaberiKlasu_Handle(id, menu, item)
  1762. {
  1763.  
  1764. client_cmd(id, "spk QTM_CodMod/select");
  1765.  
  1766. if(item == MENU_EXIT)
  1767. {
  1768. menu_destroy(menu);
  1769. return PLUGIN_CONTINUE;
  1770. }
  1771.  
  1772. item++;
  1773.  
  1774. new ile = 0;
  1775. for(new i=1; i<sizeof naziv_klase; i++)
  1776. {
  1777. if(pripada[i] == frakcija_igraca[id])
  1778. {
  1779. ile++;
  1780. }
  1781. if(ile == item)
  1782. {
  1783. item = i;
  1784. break;
  1785. }
  1786. }
  1787.  
  1788. if(item == klasa_igraca[id])
  1789. return PLUGIN_CONTINUE;
  1790.  
  1791. if(item == ProSwat && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == JuliHE && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == ProAssassin && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == Komandos && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == Camper && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == Zagor && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == UniverzalniSoldier && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == Assassin && !(get_user_flags(id) & ADMIN_LEVEL_E )
  1792. || item == Dragon && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == Tito && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == Ninja && !(get_user_flags(id) & ADMIN_LEVEL_C) || item == JuliGhost && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == Juliscout && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == JuliM4A1 && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == Hitman && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == Major && !(get_user_flags(id) & ADMIN_LEVEL_D )
  1793. || item == OTR && !(get_user_flags(id) & ADMIN_LEVEL_B )
  1794. || item == Merlin && !(get_user_flags(id) & ADMIN_LEVEL_A)
  1795. || item == mina && !(get_user_flags(id) & ADMIN_LEVEL_A)
  1796. || item == raketa && !(get_user_flags(id) & ADMIN_LEVEL_A)
  1797. || item == dinamita && !(get_user_flags(id) & ADMIN_LEVEL_A))
  1798.  
  1799.  
  1800.  
  1801.  
  1802. {
  1803. ColorChat(id, NORMAL, "^4[COD:MW] ^1Nemate dozvolu za ovu Klasu Morate Boost Za vise Informacija pitajte Head Admina.");
  1804. IzaberiKlasu(id);
  1805. return PLUGIN_CONTINUE;
  1806. }
  1807.  
  1808. if(klasa_igraca[id])
  1809. {
  1810. nova_klasa_igraca[id] = item;
  1811. ColorChat(id, NORMAL, "^4[COD:MW] ^1Klasa ce biti izmenjena u sledecoj rundi.");
  1812. }
  1813. else
  1814. {
  1815. klasa_igraca[id] = item;
  1816. UcitajPodatke(id, klasa_igraca[id]);
  1817. Pocetak(id);
  1818. }
  1819. return PLUGIN_CONTINUE;
  1820. }
  1821. public DodelaPoena(id)
  1822. {
  1823. new inteligencija[65], inteligencija10[65];
  1824. new energija[60], energija10[60];
  1825. new snaga[60], snaga10[60];
  1826. new kondicija[60], kondicija10[60];
  1827. new naslov[25];
  1828. format(inteligencija, 64, "Inteligencija: \r%i \y(Povecava napad)", inteligencija_igraca[id]);
  1829. format(energija, 59, "Energija: \r%i \y(Povecaca energiju)", energija_igraca[id]);
  1830. format(snaga, 59, "Snaga: \r%i \y(Smanjuje povrede)", snaga_igraca[id]);
  1831. format(kondicija, 59, "Kondicija: \r%i \y(Povecava tempo hodanja)", kondicija_igraca[id]);
  1832. format(inteligencija10, 64, "Dodaj 10 poena na inteligenciju");
  1833. format(energija10, 59, "Dodaj 10 poena na energiju");
  1834. format(snaga10, 59, "Dodaj 10 poena na snagu");
  1835. format(kondicija10, 59, "Dodaj 10 poena na kondiciju");
  1836. format(naslov, 24, "Dodeli poena(%i):", poeni_igraca[id]);
  1837. new menu = menu_create(naslov, "DodelaPoena_Handler");
  1838. menu_additem(menu, inteligencija);
  1839. menu_additem(menu, energija);
  1840. menu_additem(menu, snaga);
  1841. menu_additem(menu, kondicija);
  1842. menu_additem(menu, inteligencija10);
  1843. menu_additem(menu, energija10);
  1844. menu_additem(menu, snaga10);
  1845. menu_additem(menu, kondicija10);
  1846. menu_display(id, menu);
  1847. #if defined BOTY
  1848. if(is_user_bot2(id))
  1849. DodelaPoena_Handler(id, menu, random(4));
  1850. #endif
  1851. }
  1852.  
  1853. public DodelaPoena_Handler(id, menu, item)
  1854. {
  1855. client_cmd(id, "spk QTM_CodMod/select");
  1856.  
  1857. if(item == MENU_EXIT)
  1858. {
  1859. menu_destroy(menu);
  1860. return PLUGIN_CONTINUE;
  1861. }
  1862.  
  1863.  
  1864. if(poeni_igraca[id] < 1)
  1865. return PLUGIN_CONTINUE;
  1866.  
  1867. switch(item)
  1868. {
  1869. case 0:
  1870. {
  1871. if(inteligencija_igraca[id]<4001)
  1872. {
  1873. inteligencija_igraca[id]++;
  1874. poeni_igraca[id]--;
  1875. }
  1876. else
  1877. ColorChat(id, NORMAL, "^4[COD:MW] ^1Dostigli ste maximalni nivo inteligencije");
  1878.  
  1879. }
  1880. case 1:
  1881. {
  1882. if(energija_igraca[id]<4001)
  1883. {
  1884. energija_igraca[id]++;
  1885. poeni_igraca[id]--;
  1886. }
  1887. else
  1888. ColorChat(id, NORMAL, "^4[COD:MW] ^1Dostigli ste maximalni nivo energije");
  1889. }
  1890. case 2:
  1891. {
  1892. if(snaga_igraca[id]<4001)
  1893. {
  1894. snaga_igraca[id]++;
  1895. poeni_igraca[id]--;
  1896. }
  1897. else
  1898. ColorChat(id, NORMAL, "^4[COD:MW] ^1Dostigli ste maximalni nivo snage");
  1899.  
  1900. }
  1901. case 3:
  1902. {
  1903. if(kondicija_igraca[id]<4001)
  1904. {
  1905. kondicija_igraca[id]++;
  1906. poeni_igraca[id]--;
  1907. }
  1908. else
  1909. ColorChat(id, NORMAL, "^4[COD:MW] ^1Dostigli ste maximalni nivo kondicije");
  1910. }
  1911. case 4:
  1912. {
  1913. if(poeni_igraca[id] < 10)
  1914. {
  1915. ColorChat(id, NORMAL, "^4[COD:MW] ^1Nemate dovoljno poena");
  1916. }
  1917. else if(inteligencija_igraca[id]<4001)
  1918. {
  1919. inteligencija_igraca[id]+=10;
  1920. poeni_igraca[id]-=10
  1921. }
  1922. else
  1923. ColorChat(id, NORMAL, "^4[COD:MW] ^1Dostigli ste maximalni nivo inteligencije");
  1924. }
  1925. case 5:
  1926. {
  1927. if(poeni_igraca[id] < 10)
  1928. {
  1929. ColorChat(id, NORMAL, "^4[COD:MW] ^1Nemate dovoljno poena");
  1930. }
  1931. else if(energija_igraca[id]<4001)
  1932. {
  1933. energija_igraca[id]+=10;
  1934. poeni_igraca[id]-=10;
  1935. }
  1936. else
  1937. ColorChat(id, NORMAL, "^4[COD:MW] ^1Dostigli ste maximalni nivo energije");
  1938. }
  1939. case 6:
  1940. {
  1941. if(poeni_igraca[id] < 10)
  1942. {
  1943. ColorChat(id, NORMAL, "^4[COD:MW] ^1Nemate dovoljno poena");
  1944. }
  1945. else if(snaga_igraca[id]<4001)
  1946. {
  1947. snaga_igraca[id]+=10;
  1948. poeni_igraca[id]-=10;
  1949. }
  1950. else
  1951. ColorChat(id, NORMAL, "^4[COD:MW] ^1Dostigli ste maximalni nivo snage");
  1952. }
  1953. case 7:
  1954. {
  1955. if(poeni_igraca[id] < 10)
  1956. {
  1957. ColorChat(id, NORMAL, "^4[COD:MW] ^1Nemate dovoljno poena");
  1958. }
  1959. else if(kondicija_igraca[id]<4001)
  1960. {
  1961. kondicija_igraca[id]+=10;
  1962. poeni_igraca[id]-=10;
  1963. }
  1964. else
  1965. ColorChat(id, NORMAL, "^4[COD:MW] ^1Dostigli ste maximalni nivo kondicije");
  1966. }
  1967.  
  1968. }
  1969.  
  1970. if(poeni_igraca[id]>0)
  1971. DodelaPoena(id);
  1972.  
  1973. return PLUGIN_CONTINUE;
  1974. }
  1975.  
  1976. public KomandaResetujPoene(id)
  1977. {
  1978. ColorChat(id, NORMAL, "^4[COD:MW] ^1Poeni su resetovani");
  1979. client_cmd(id, "spk QTM_CodMod/select");
  1980.  
  1981. ResetujPoene(id)
  1982. }
  1983.  
  1984. public ResetujPoene(id)
  1985. {
  1986. poeni_igraca[id] = level_igraca[id]*2-2;
  1987. inteligencija_igraca[id] = 0;
  1988. energija_igraca[id] = 0;
  1989. kondicija_igraca[id] = 0;
  1990. snaga_igraca[id] = 0;
  1991.  
  1992. if(poeni_igraca[id])
  1993. DodelaPoena(id);
  1994. }
  1995.  
  1996. public KreirajMedKit(id)
  1997. {
  1998. if (!broj_medkit_igraca[id])
  1999. {
  2000. client_print(id, print_center, "Imate samo 2 paketa za prvu pomoc u jednoj rundi!");
  2001. return PLUGIN_CONTINUE;
  2002. }
  2003.  
  2004. if(inteligencija_igraca[id] < 1)
  2005. client_print(id, print_center, "Da koristite paket za prvu pomoc, morate povecati inteligenciju");
  2006.  
  2007. broj_medkit_igraca[id]--;
  2008.  
  2009. new Float:origin[3];
  2010. entity_get_vector(id, EV_VEC_origin, origin);
  2011.  
  2012. new ent = create_entity("info_target");
  2013. entity_set_string(ent, EV_SZ_classname, "MedKit");
  2014. entity_set_edict(ent, EV_ENT_owner, id);
  2015. entity_set_int(ent, EV_INT_solid, SOLID_NOT);
  2016. entity_set_vector(ent, EV_VEC_origin, origin);
  2017. entity_set_float(ent, EV_FL_ltime, halflife_time() + 7 + 0.1);
  2018.  
  2019.  
  2020. entity_set_model(ent, "models/w_medkit.mdl");
  2021. set_rendering ( ent, kRenderFxGlowShell, 255,0,0, kRenderFxNone, 255 ) ;
  2022. drop_to_floor(ent);
  2023.  
  2024. entity_set_float(ent, EV_FL_nextthink, halflife_time() + 0.1);
  2025.  
  2026. return PLUGIN_CONTINUE;
  2027. }
  2028.  
  2029. public MedKitThink(ent)
  2030. {
  2031. new id = entity_get_edict(ent, EV_ENT_owner);
  2032. new totem_dist = 300;
  2033. new totem_heal = 5+floatround(inteligencija_igraca[id]*0.5);
  2034. if (entity_get_edict(ent, EV_ENT_euser2) == 1)
  2035. {
  2036. new Float:forigin[3], origin[3];
  2037. entity_get_vector(ent, EV_VEC_origin, forigin);
  2038. FVecIVec(forigin,origin);
  2039.  
  2040. new entlist[33];
  2041. new numfound = find_sphere_class(0,"player",totem_dist+0.0,entlist, 32,forigin);
  2042.  
  2043. for (new i=0; i < numfound; i++)
  2044. {
  2045. new pid = entlist[i];
  2046.  
  2047. if (get_user_team(pid) != get_user_team(id))
  2048. continue;
  2049.  
  2050. new energija = get_user_health(pid);
  2051. new nova_energija = (energija+totem_heal<maximalna_energija_igraca[pid])?energija+totem_heal:maximalna_energija_igraca[pid];
  2052. if (is_user_alive(pid)) set_user_health(pid, nova_energija);
  2053. }
  2054.  
  2055. entity_set_edict(ent, EV_ENT_euser2, 0);
  2056. entity_set_float(ent, EV_FL_nextthink, halflife_time() + 1.5);
  2057.  
  2058. return PLUGIN_CONTINUE;
  2059. }
  2060.  
  2061. if (entity_get_float(ent, EV_FL_ltime) < halflife_time() || !is_user_alive(id))
  2062. {
  2063. remove_entity(ent);
  2064. return PLUGIN_CONTINUE;
  2065. }
  2066.  
  2067. if (entity_get_float(ent, EV_FL_ltime)-2.0 < halflife_time())
  2068. set_rendering ( ent, kRenderFxNone, 255,255,255, kRenderTransAlpha, 100 ) ;
  2069.  
  2070. new Float:forigin[3], origin[3];
  2071. entity_get_vector(ent, EV_VEC_origin, forigin);
  2072. FVecIVec(forigin,origin);
  2073.  
  2074. //Find people near and give them health
  2075. message_begin( MSG_BROADCAST, SVC_TEMPENTITY, origin );
  2076. write_byte( TE_BEAMCYLINDER );
  2077. write_coord( origin[0] );
  2078. write_coord( origin[1] );
  2079. write_coord( origin[2] );
  2080. write_coord( origin[0] );
  2081. write_coord( origin[1] + totem_dist );
  2082. write_coord( origin[2] + totem_dist );
  2083. write_short( sprite_white );
  2084. write_byte( 0 ); // startframe
  2085. write_byte( 0 ); // framerate
  2086. write_byte( 10 ); // life
  2087. write_byte( 10 ); // width
  2088. write_byte( 255 ); // noise
  2089. write_byte( 255 ); // r, g, b
  2090. write_byte( 100 );// r, g, b
  2091. write_byte( 100 ); // r, g, b
  2092. write_byte( 128 ); // brightness
  2093. write_byte( 5 ); // speed
  2094. message_end();
  2095.  
  2096. entity_set_edict(ent, EV_ENT_euser2 ,1);
  2097. entity_set_float(ent, EV_FL_nextthink, halflife_time() + 0.5);
  2098.  
  2099.  
  2100. return PLUGIN_CONTINUE;
  2101. }
  2102.  
  2103.  
  2104. public KreirajRakete(id)
  2105. {
  2106. if (!broj_raketa_igraca[id])
  2107. {
  2108. client_print(id, print_center, "Vec ste iskoristili sve rakete!");
  2109. return PLUGIN_CONTINUE;
  2110. }
  2111.  
  2112. if(prethodna_raketa_igraca[id] + 2.0 > get_gametime())
  2113. {
  2114. client_print(id, print_center, "Mozate da koristite raketu za 2 sekunde!");
  2115. return PLUGIN_CONTINUE;
  2116. }
  2117.  
  2118. if (is_user_alive(id))
  2119. {
  2120. if(inteligencija_igraca[id] < 1)
  2121. client_print(id, print_center, "Da koristite rakete, morate povecati inteligenciju!");
  2122.  
  2123. prethodna_raketa_igraca[id] = get_gametime();
  2124. broj_raketa_igraca[id]--;
  2125.  
  2126. new Float: Origin[3], Float: vAngle[3], Float: Velocity[3];
  2127.  
  2128. entity_get_vector(id, EV_VEC_v_angle, vAngle);
  2129. entity_get_vector(id, EV_VEC_origin , Origin);
  2130.  
  2131. new Ent = create_entity("info_target");
  2132.  
  2133. entity_set_string(Ent, EV_SZ_classname, "Rocket");
  2134. entity_set_model(Ent, "models/rpgrocket.mdl");
  2135.  
  2136. vAngle[0] *= -1.0;
  2137.  
  2138. entity_set_origin(Ent, Origin);
  2139. entity_set_vector(Ent, EV_VEC_angles, vAngle);
  2140.  
  2141. entity_set_int(Ent, EV_INT_effects, 2);
  2142. entity_set_int(Ent, EV_INT_solid, SOLID_BBOX);
  2143. entity_set_int(Ent, EV_INT_movetype, MOVETYPE_FLY);
  2144. entity_set_edict(Ent, EV_ENT_owner, id);
  2145.  
  2146. VelocityByAim(id, 1000 , Velocity);
  2147. entity_set_vector(Ent, EV_VEC_velocity ,Velocity);
  2148.  
  2149. message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
  2150. write_byte(22)
  2151. write_short(Ent)
  2152. write_short(sprite_beam)
  2153. write_byte(45)
  2154. write_byte(4)
  2155. write_byte(255)
  2156. write_byte(105)
  2157. write_byte(180)
  2158. write_byte(25)
  2159. message_end()
  2160. }
  2161. return PLUGIN_CONTINUE;
  2162. }
  2163. public KreirajDinamit(id)
  2164. {
  2165. if(!broj_dinamita_igraca[id])
  2166. {
  2167. client_print(id, print_center, "Vec ste iskoristili sav dinamit!");
  2168. return PLUGIN_CONTINUE;
  2169. }
  2170.  
  2171. if(inteligencija_igraca[id] < 1)
  2172. client_print(id, print_center, "Da koristite dinamit, morate povecati inteligenciju!");
  2173.  
  2174. broj_dinamita_igraca[id]--;
  2175.  
  2176. new Float:fOrigin[3];
  2177. entity_get_vector(id, EV_VEC_origin, fOrigin);
  2178.  
  2179. new iOrigin[3];
  2180. for(new i=0;i<3;i++)
  2181. iOrigin[i] = floatround(fOrigin[i]);
  2182.  
  2183. message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
  2184. write_byte(TE_EXPLOSION);
  2185. write_coord(iOrigin[0]);
  2186. write_coord(iOrigin[1]);
  2187. write_coord(iOrigin[2]);
  2188. write_short(sprite_blast);
  2189. write_byte(32);
  2190. write_byte(20);
  2191. write_byte(0);
  2192. message_end();
  2193.  
  2194. message_begin( MSG_BROADCAST, SVC_TEMPENTITY, iOrigin );
  2195. write_byte( TE_BEAMCYLINDER );
  2196. write_coord( iOrigin[0] );
  2197. write_coord( iOrigin[1] );
  2198. write_coord( iOrigin[2] );
  2199. write_coord( iOrigin[0] );
  2200. write_coord( iOrigin[1] + 300 );
  2201. write_coord( iOrigin[2] + 300 );
  2202. write_short( sprite_white );
  2203. write_byte( 0 ); // startframe
  2204. write_byte( 0 ); // framerate
  2205. write_byte( 10 ); // life
  2206. write_byte( 10 ); // width
  2207. write_byte( 255 ); // noise
  2208. write_byte( 255 ); // r, g, b
  2209. write_byte( 100 );// r, g, b
  2210. write_byte( 100 ); // r, g, b
  2211. write_byte( 128 ); // brightness
  2212. write_byte( 8 ); // speed
  2213. message_end();
  2214.  
  2215. new entlist[33];
  2216. new numfound = find_sphere_class(id, "player", 300.0 , entlist, 32);
  2217.  
  2218. for (new i=0; i < numfound; i++)
  2219. {
  2220. new pid = entlist[i];
  2221.  
  2222. if (!is_user_alive(pid) || get_user_team(id) == get_user_team(pid) || informacije_predmet_igraca[pid][0] == 24)
  2223. continue;
  2224. ExecuteHam(Ham_TakeDamage, pid, 0, id, 90.0+float(inteligencija_igraca[id]) , 1);
  2225. }
  2226. return PLUGIN_CONTINUE;
  2227. }
  2228.  
  2229. public PostaviMine(id)
  2230. {
  2231. if (!broj_min_igraca[id])
  2232. {
  2233. client_print(id, print_center, "Vec ste iskoristili sve mine!");
  2234. return PLUGIN_CONTINUE;
  2235. }
  2236.  
  2237. if(inteligencija_igraca[id] < 1)
  2238. client_print(id, print_center, "Da koristite mine, morate povecati inteligenciju!");
  2239.  
  2240. broj_min_igraca[id]--;
  2241.  
  2242. new Float:origin[3];
  2243. entity_get_vector(id, EV_VEC_origin, origin);
  2244.  
  2245. new ent = create_entity("info_target");
  2246. entity_set_string(ent ,EV_SZ_classname, "Mine");
  2247. entity_set_edict(ent ,EV_ENT_owner, id);
  2248. entity_set_int(ent, EV_INT_movetype, MOVETYPE_TOSS);
  2249. entity_set_origin(ent, origin);
  2250. entity_set_int(ent, EV_INT_solid, SOLID_BBOX);
  2251.  
  2252. entity_set_model(ent, "models/mine.mdl");
  2253. entity_set_size(ent,Float:{-16.0,-16.0,0.0},Float:{16.0,16.0,2.0});
  2254.  
  2255. drop_to_floor(ent);
  2256.  
  2257. entity_set_float(ent,EV_FL_nextthink,halflife_time() + 0.01) ;
  2258.  
  2259. set_rendering(ent,kRenderFxNone, 0,0,0, kRenderTransTexture,50) ;
  2260.  
  2261.  
  2262. return PLUGIN_CONTINUE;
  2263. }
  2264.  
  2265. public DodirMine(ent, id)
  2266. {
  2267. new attacker = entity_get_edict(ent, EV_ENT_owner);
  2268. if (get_user_team(attacker) != get_user_team(id))
  2269. {
  2270. new Float:fOrigin[3];
  2271. entity_get_vector( ent, EV_VEC_origin, fOrigin);
  2272.  
  2273. new iOrigin[3];
  2274. for(new i=0;i<3;i++)
  2275. iOrigin[i] = floatround(fOrigin[i]);
  2276.  
  2277. message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
  2278. write_byte(TE_EXPLOSION);
  2279. write_coord(iOrigin[0]);
  2280. write_coord(iOrigin[1]);
  2281. write_coord(iOrigin[2]);
  2282. write_short(sprite_blast);
  2283. write_byte(32); // scale
  2284. write_byte(20); // framerate
  2285. write_byte(0);// flags
  2286. message_end();
  2287. new entlist[33];
  2288. new numfound = find_sphere_class(ent,"player", 90.0 ,entlist, 32);
  2289.  
  2290. for (new i=0; i < numfound; i++)
  2291. {
  2292. new pid = entlist[i];
  2293.  
  2294. if (!is_user_alive(pid) || get_user_team(attacker) == get_user_team(pid) || informacije_predmet_igraca[pid][0] == 24 || klasa_igraca[id] == Mitraljezac)
  2295. continue;
  2296.  
  2297. ExecuteHam(Ham_TakeDamage, pid, ent, attacker, 90.0+float(inteligencija_igraca[attacker]) , 1);
  2298. }
  2299. remove_entity(ent);
  2300. }
  2301. }
  2302.  
  2303. public DodirRakete(ent)
  2304. {
  2305. if ( !is_valid_ent(ent))
  2306. return;
  2307.  
  2308. new attacker = entity_get_edict(ent, EV_ENT_owner);
  2309.  
  2310. new Float:fOrigin[3];
  2311. entity_get_vector(ent, EV_VEC_origin, fOrigin);
  2312.  
  2313. new iOrigin[3];
  2314. for(new i=0;i<3;i++)
  2315. iOrigin[i] = floatround(fOrigin[i]);
  2316.  
  2317. message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
  2318. write_byte(TE_EXPLOSION);
  2319. write_coord(iOrigin[0]);
  2320. write_coord(iOrigin[1]);
  2321. write_coord(iOrigin[2]);
  2322. write_short(sprite_blast);
  2323. write_byte(32); // scale
  2324. write_byte(20); // framerate
  2325. write_byte(0);// flags
  2326. message_end();
  2327.  
  2328. new entlist[33];
  2329. new numfound = find_sphere_class(ent, "player", 230.0, entlist, 32);
  2330.  
  2331. for (new i=0; i < numfound; i++)
  2332. {
  2333. new pid = entlist[i];
  2334.  
  2335. if (!is_user_alive(pid) || get_user_team(attacker) == get_user_team(pid) || informacije_predmet_igraca[pid][0] == 24 )
  2336. continue;
  2337. ExecuteHam(Ham_TakeDamage, pid, ent, attacker, 55.0+float(inteligencija_igraca[attacker]) , 1);
  2338. }
  2339. remove_entity(ent);
  2340. }
  2341.  
  2342. public CurWeapon(id)
  2343. {
  2344. if(freezetime || !klasa_igraca[id])
  2345. return PLUGIN_CONTINUE;
  2346.  
  2347. new weapon = get_user_weapon(id);
  2348.  
  2349. if(klasa_igraca[id] == Assassin && weapon == CSW_KNIFE)
  2350. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 10);
  2351. else if(klasa_igraca[id] == Assassin && weapon != CSW_KNIFE)
  2352. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 255);
  2353.  
  2354. new weapons[32];
  2355. new weaponsnum;
  2356. get_user_weapons(id, weapons, weaponsnum);
  2357. for(new i=0; i<weaponsnum; i++)
  2358. if(is_user_alive(id))
  2359. if(maxAmmo[weapons[i]] > 0)
  2360. cs_set_user_bpammo(id, weapons[i], maxAmmo[weapons[i]]);
  2361.  
  2362. PostaviBrzinu(id);
  2363. return PLUGIN_CONTINUE;
  2364. }
  2365.  
  2366. public EmitSound(id, iChannel, szSound[], Float:fVol, Float:fAttn, iFlags, iPitch )
  2367. {
  2368. if(!is_user_alive(id))
  2369. return FMRES_IGNORED;
  2370.  
  2371. if(equal(szSound, "common/wpn_denyselect.wav"))
  2372. {
  2373. KoristiPredmet(id);
  2374. return FMRES_SUPERCEDE;
  2375. }
  2376.  
  2377. return FMRES_IGNORED;
  2378. }
  2379.  
  2380. public KoristiPredmet(id)
  2381. {
  2382. if(informacije_predmet_igraca[id][0] == 19 && informacije_predmet_igraca[id][1]>0)
  2383. {
  2384. set_user_health(id, maximalna_energija_igraca[id]);
  2385. informacije_predmet_igraca[id][1]--;
  2386. }
  2387.  
  2388. if(broj_medkit_igraca[id]>0)
  2389. KreirajMedKit(id);
  2390. if(broj_raketa_igraca[id]>0)
  2391. KreirajRakete(id);
  2392. if(broj_min_igraca[id]>0)
  2393. PostaviMine(id);
  2394. if(broj_dinamita_igraca[id]>0)
  2395. KreirajDinamit(id);
  2396.  
  2397. return PLUGIN_HANDLED;
  2398. }
  2399.  
  2400. public SacuvajPodatke(id)
  2401. {
  2402. if(!klasa_igraca[id])
  2403. return PLUGIN_CONTINUE;
  2404.  
  2405. new vaultkey[128],vaultdata[256], ID_igraca[64];
  2406. format(vaultdata, charsmax(vaultdata),"#%i#%i#%i#%i#%i#%i", iskustvo_igraca[id], level_igraca[id], inteligencija_igraca[id], energija_igraca[id], snaga_igraca[id], kondicija_igraca[id]);
  2407.  
  2408. get_user_authid(id, ID_igraca, charsmax(ID_igraca))
  2409.  
  2410. format(vaultkey, charsmax(vaultkey),"%s-%i-cod", ID_igraca, klasa_igraca[id]);
  2411. nvault_set(g_vault,vaultkey,vaultdata);
  2412.  
  2413. return PLUGIN_CONTINUE;
  2414. }
  2415.  
  2416. public hook_say(id)
  2417. {
  2418. new chat[192]
  2419. read_args(chat, 191)
  2420. remove_quotes(chat)
  2421.  
  2422. new name[32]
  2423. get_user_name(id, name, 31)
  2424.  
  2425. if(equal(chat, ""))
  2426. return PLUGIN_HANDLED
  2427.  
  2428. new CsTeams:userteam = cs_get_user_team(id)
  2429.  
  2430. if (is_user_alive(id))
  2431. {
  2432. ColorChat(0, RED, " ^x04[%s - %i] ^3%s ^x01%s", naziv_klase[klasa_igraca[id]], level_igraca[id], name, chat);
  2433.  
  2434. }
  2435. else if (!is_user_alive(id) && userteam != CS_TEAM_SPECTATOR)
  2436. {
  2437. ColorChat(0, GREY, "[DEATH]^x04[%s - %i] ^3%s ^x01%s", naziv_klase[klasa_igraca[id]], level_igraca[id], name, chat);
  2438. }
  2439. else
  2440. {
  2441. ColorChat(0, GREY, "[SPEC]^x04[%s - %i] ^3%s ^x01%s", naziv_klase[klasa_igraca[id]], level_igraca[id], name, chat);
  2442. }
  2443. return PLUGIN_HANDLED
  2444. }
  2445.  
  2446. public UcitajPodatke(id, klasa)
  2447. {
  2448. new vaultkey[128],vaultdata[256], ID_igraca[64];
  2449.  
  2450. get_user_authid(id, ID_igraca, charsmax(ID_igraca))
  2451.  
  2452. format(vaultkey, charsmax(vaultkey),"%s-%i-cod", ID_igraca, klasa);
  2453. nvault_get(g_vault,vaultkey,vaultdata,255);
  2454.  
  2455. replace_all(vaultdata, 255, "#", " ");
  2456.  
  2457. new playerdata[6][32];
  2458.  
  2459. parse(vaultdata, playerdata[0], 31, playerdata[1], 31, playerdata[2], 31, playerdata[3], 31, playerdata[4], 31, playerdata[5], 31);
  2460.  
  2461. iskustvo_igraca[id] = str_to_num(playerdata[0]);
  2462. level_igraca[id] = str_to_num(playerdata[1])>0?str_to_num(playerdata[1]):1;
  2463. inteligencija_igraca[id] = str_to_num(playerdata[2]);
  2464. energija_igraca[id] = str_to_num(playerdata[3]);
  2465. snaga_igraca[id] = str_to_num(playerdata[4]);
  2466. kondicija_igraca[id] = str_to_num(playerdata[5]);
  2467. poeni_igraca[id] = (level_igraca[id]-1)*2-inteligencija_igraca[id]-energija_igraca[id]-snaga_igraca[id]-kondicija_igraca[id];
  2468.  
  2469. return PLUGIN_CONTINUE;
  2470. }
  2471.  
  2472. public IzbaciPredmet(id)
  2473. {
  2474. if(informacije_predmet_igraca[id][0])
  2475. {
  2476. ColorChat(id, NORMAL, "^4[COD:MW] ^1Bacio si ^3%s.", naziv_predmeta[informacije_predmet_igraca[id][0]]);
  2477. Obrisipredmet(id);
  2478. }
  2479. else
  2480. ColorChat(id, NORMAL, "^4[COD:MW] ^1Nemate nijedan predmet.", naziv_predmeta[informacije_predmet_igraca[id][0]]);
  2481. }
  2482.  
  2483. public Obrisipredmet(id)
  2484. {
  2485. informacije_predmet_igraca[id][0] = 0;
  2486. informacije_predmet_igraca[id][1] = 0;
  2487. if(is_user_alive(id))
  2488. {
  2489. set_user_footsteps(id, 0);
  2490. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
  2491. PromeniModel(id, 1);
  2492. }
  2493. }
  2494.  
  2495. public DajPredmet(id, predmet)
  2496. {
  2497. Obrisipredmet(id);
  2498. informacije_predmet_igraca[id][0] = predmet;
  2499. ColorChat(id, NORMAL, "^4[COD:MW] ^1Dobio si ^3%s.", naziv_predmeta[informacije_predmet_igraca[id][0]]);
  2500.  
  2501. switch(predmet)
  2502. {
  2503. case 1:
  2504. {
  2505. set_user_footsteps(id, 1);
  2506. }
  2507. case 2:
  2508. {
  2509. informacije_predmet_igraca[id][1] = random_num(3,6);
  2510. }
  2511. case 3:
  2512. {
  2513. informacije_predmet_igraca[id][1] = random_num(6, 11);
  2514. }
  2515. case 5:
  2516. {
  2517. informacije_predmet_igraca[id][1] = random_num(6, 9);
  2518. }
  2519. case 6:
  2520. {
  2521. if(klasa_igraca[id] == Partizan || klasa_igraca[id] == Assassin )
  2522. {
  2523. DajPredmet(id, random_num(1, sizeof naziv_predmeta-1));
  2524. }
  2525. else
  2526. {
  2527. informacije_predmet_igraca[id][1] = random_num(100, 150);
  2528. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, informacije_predmet_igraca[id][1]);
  2529. }
  2530. }
  2531. case 7:
  2532. {
  2533. informacije_predmet_igraca[id][1] = random_num(2, 4);
  2534. }
  2535. case 8:
  2536. {
  2537. if(klasa_igraca[id] == Marinac || klasa_igraca[id] == Assassin)
  2538. DajPredmet(id, random_num(1, sizeof naziv_predmeta-1));
  2539. }
  2540. case 9:
  2541. {
  2542. informacije_predmet_igraca[id][1] = random_num(1, 3);
  2543. PromeniModel(id, 0);
  2544. give_item(id, "weapon_hegrenade");
  2545. }
  2546. case 10:
  2547. {
  2548. informacije_predmet_igraca[id][1] = random_num(4, 8);
  2549. give_item(id, "weapon_hegrenade");
  2550. }
  2551. case 12:
  2552. {
  2553. informacije_predmet_igraca[id][1] = random_num(1, 4);
  2554. }
  2555. case 13:
  2556. {
  2557. give_item(id, "weapon_awp");
  2558. }
  2559. case 15:
  2560. {
  2561. if(klasa_igraca[id] == Rambo)
  2562. DajPredmet(id, random_num(1, sizeof naziv_predmeta-1));
  2563. }
  2564. case 19:
  2565. {
  2566. informacije_predmet_igraca[id][1] = 1;
  2567. }
  2568. case 24:
  2569. {
  2570. if(klasa_igraca[id] == JuliHE)
  2571. DajPredmet(id, random_num(1, sizeof naziv_predmeta-1));
  2572. }
  2573. case 26:
  2574. {
  2575. informacije_predmet_igraca[id][1] = random_num(3, 6);
  2576. }
  2577. case 27:
  2578. {
  2579. informacije_predmet_igraca[id][1] = 3;
  2580. }
  2581. }
  2582. }
  2583.  
  2584. public OpisPredmeta(id)
  2585. {
  2586. new opis_predmeta[128];
  2587. new slucajne_vrednosti[3];
  2588. num_to_str(informacije_predmet_igraca[id][1], slucajne_vrednosti, 2);
  2589. format(opis_predmeta, 127, opis_predmet[informacije_predmet_igraca[id][0]]);
  2590. replace_all(opis_predmeta, 127, "LW", slucajne_vrednosti);
  2591.  
  2592. ColorChat(id, NORMAL, "^4Predmet: ^1%s.", naziv_predmeta[informacije_predmet_igraca[id][0]]);
  2593. ColorChat(id, NORMAL, "^4Opis: ^1%s.", opis_predmeta);
  2594. }
  2595.  
  2596. public Provera(id)
  2597. {
  2598. id-=ZADATAK_PROVERA;
  2599. ExecuteHamB(Ham_CS_RoundRespawn, id);
  2600. }
  2601.  
  2602. public ProveriNivo(id)
  2603. {
  2604. if(level_igraca[id] < 1200)
  2605. {
  2606. while(iskustvo_igraca[id] >= iskustvo_levelu[level_igraca[id]])
  2607. {
  2608. level_igraca[id]++;
  2609. set_hudmessage(60, 200, 25, -1.0, 0.25, 0, 1.0, 2.0, 0.1, 0.2, 2);
  2610. ShowSyncHudMsg(id, SyncHudObj3, "Dobrodosao na %i level!", level_igraca[id]);
  2611. client_cmd(id, "spk QTM_CodMod/levelup");
  2612. }
  2613. poeni_igraca[id] = (level_igraca[id]-1)*2-inteligencija_igraca[id]-energija_igraca[id]-snaga_igraca[id]-kondicija_igraca[id];
  2614. }
  2615. SacuvajPodatke(id);
  2616. }
  2617.  
  2618. public PokaziInformacije(id)
  2619. {
  2620. id -= ZADATAK_POKAZI_INFORMACIJE;
  2621.  
  2622. set_task(0.1, "PokaziInformacije", id+ZADATAK_POKAZI_INFORMACIJE);
  2623.  
  2624. if(is_user_connected(id) && !is_user_alive(id))
  2625. {
  2626. new target = entity_get_int(id, EV_INT_iuser2);
  2627.  
  2628. if(!target)
  2629. return PLUGIN_CONTINUE;
  2630.  
  2631. set_hudmessage(255, 255, 255, 0.6, -1.0, 0, 0.0, 0.3, 0.0, 0.0, 2);
  2632. ShowSyncHudMsg(id, SyncHudObj, "Klasa : %s^nIskustvo : %i / %i^nLevel : %i^nPredmet : %s^nEnergija %d", naziv_klase[klasa_igraca[target]], iskustvo_igraca[target], iskustvo_levelu[level_igraca[target]], level_igraca[target], naziv_predmeta[informacije_predmet_igraca[target][0]], get_user_health(target));
  2633.  
  2634. return PLUGIN_CONTINUE;
  2635. }
  2636. set_hudmessage(0, 255, 0, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0, -1);
  2637. ShowSyncHudMsg(id, SyncHudObj, "[Klasa : %s]^n[Iskustvo : %i / %i]^n[Level : %i]^n[Predmet : %s]^n[Energija: %d]", naziv_klase[klasa_igraca[id]], iskustvo_igraca[id], iskustvo_levelu[level_igraca[id]], level_igraca[id], naziv_predmeta[informacije_predmet_igraca[id][0]], get_user_health(id));
  2638.  
  2639. return PLUGIN_CONTINUE;
  2640. }
  2641.  
  2642. public PokaziReklame(id)
  2643. {
  2644. id-=ZADATAK_POKAZI_REKLAME;
  2645. ColorChat(0, GREEN, "[COD:MW4] ^1KY COD:MW4 Mod eshte bere nga ^3JULI")
  2646. }
  2647.  
  2648. public Pomoc(id)
  2649. show_menu(id, 1023, "\y/reset\w - Resetuje poene^n\y/klasa\w - Promeni klasu^n\y/drop\w - Izbaci predmet^n\y/perk\w - Pokazuje opis vaseg predmeta^n\y/opis\w - Pokazuje opis klase^n\y+use\w - Koristi specijalne moci klase", -1, "Pomoc");
  2650.  
  2651. public PostaviBrzinu(id)
  2652. {
  2653. id -= id>32? ZADATAK_POSTAVI_brzinu: 0;
  2654.  
  2655. if(klasa_igraca[id])
  2656. set_user_maxspeed(id, brzina_igraca[id]);
  2657. }
  2658.  
  2659. public PromeniModel(id,reset)
  2660. {
  2661. if (id<1 || id>32 || !is_user_connected(id))
  2662. return PLUGIN_CONTINUE;
  2663.  
  2664. if (reset)
  2665. cs_reset_user_model(id);
  2666. else
  2667. {
  2668. new num = random_num(0,3);
  2669. switch(get_user_team(id))
  2670. {
  2671. case 1: cs_set_user_model(id, Ubrania_CT[num]);
  2672. case 2:cs_set_user_model(id, Ubrania_Terro[num]);
  2673. }
  2674. }
  2675. return PLUGIN_CONTINUE;
  2676. }
  2677. public DodirOruzija(weapon,id)
  2678. {
  2679. if(!is_user_connected(id))
  2680. return HAM_IGNORED;
  2681.  
  2682. new model[23];
  2683. pev(weapon, pev_model, model, 22);
  2684. if (pev(weapon, pev_owner) == id || containi(model, "w_backpack") != -1)
  2685. return HAM_IGNORED;
  2686. return HAM_SUPERCEDE;
  2687. }
  2688.  
  2689. stock bool:UTIL_In_FOV(id,target)
  2690. {
  2691. if (Find_Angle(id,target,9999.9) > 0.0)
  2692. return true;
  2693.  
  2694. return false;
  2695. }
  2696. #if defined BOTY
  2697. public is_user_bot2(id)
  2698. {
  2699. new ping, loss
  2700. get_user_ping(id, ping, loss)
  2701. if(ping > 0 && loss > 0)
  2702. return false
  2703. return true
  2704. }
  2705. #endif
  2706.  
  2707. stock Float:Find_Angle(Core,Target,Float:dist)
  2708. {
  2709. new Float:vec2LOS[2];
  2710. new Float:flDot;
  2711. new Float:CoreOrigin[3];
  2712. new Float:TargetOrigin[3];
  2713. new Float:CoreAngles[3];
  2714.  
  2715. pev(Core,pev_origin,CoreOrigin);
  2716. pev(Target,pev_origin,TargetOrigin);
  2717.  
  2718. if (get_distance_f(CoreOrigin,TargetOrigin) > dist)
  2719. return 0.0;
  2720.  
  2721. pev(Core,pev_angles, CoreAngles);
  2722.  
  2723. for ( new i = 0; i < 2; i++ )
  2724. vec2LOS[i] = TargetOrigin[i] - CoreOrigin[i];
  2725.  
  2726. new Float:veclength = Vec2DLength(vec2LOS);
  2727.  
  2728. //Normalize V2LOS
  2729. if (veclength <= 0.0)
  2730. {
  2731. vec2LOS[0] = 0.0;
  2732. vec2LOS[1] = 0.0;
  2733. }
  2734. else
  2735. {
  2736. new Float:flLen = 1.0 / veclength;
  2737. vec2LOS[0] = vec2LOS[0]*flLen;
  2738. vec2LOS[1] = vec2LOS[1]*flLen;
  2739. }
  2740.  
  2741. //Do a makevector to make v_forward right
  2742. engfunc(EngFunc_MakeVectors,CoreAngles);
  2743.  
  2744. new Float:v_forward[3];
  2745. new Float:v_forward2D[2];
  2746. get_global_vector(GL_v_forward, v_forward);
  2747.  
  2748. v_forward2D[0] = v_forward[0];
  2749. v_forward2D[1] = v_forward[1];
  2750.  
  2751. flDot = vec2LOS[0]*v_forward2D[0]+vec2LOS[1]*v_forward2D[1];
  2752.  
  2753. if ( flDot > 0.5 )
  2754. {
  2755. return flDot;
  2756. }
  2757.  
  2758. return 0.0;
  2759. }
  2760.  
  2761. stock Float:Vec2DLength( Float:Vec[2] )
  2762. {
  2763. return floatsqroot(Vec[0]*Vec[0] + Vec[1]*Vec[1] );
  2764. }
  2765.  
  2766. stock Display_Fade(id,duration,holdtime,fadetype,red,green,blue,alpha)
  2767. {
  2768. message_begin( MSG_ONE, g_msg_screenfade,{0,0,0},id );
  2769. write_short( duration ); // Duration of fadeout
  2770. write_short( holdtime ); // Hold time of color
  2771. write_short( fadetype ); // Fade type
  2772. write_byte ( red ); // Red
  2773. write_byte ( green ); // Green
  2774. write_byte ( blue ); // Blue
  2775. write_byte ( alpha ); // Alpha
  2776. message_end();
  2777. }
  2778.  
  2779. stock set_user_clip(id, ammo)
  2780. {
  2781. new weaponname[32], weaponid = -1, weapon = get_user_weapon(id, _, _);
  2782. get_weaponname(weapon, weaponname, 31);
  2783. while ((weaponid = find_ent_by_class(weaponid, weaponname)) != 0)
  2784. if(entity_get_edict(weaponid, EV_ENT_owner) == id)
  2785. {
  2786. set_pdata_int(weaponid, 51, ammo, 4);
  2787. return weaponid;
  2788. }
  2789. return 0;
  2790. }
  2791.  
  2792. public BlokirajKomande()
  2793. return PLUGIN_HANDLED;
  2794.  
  2795. public plugin_end()
  2796. nvault_close( g_vault )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement