HLMOD.HU Forrás Megtekintés - www.hlmod.hu
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <cstrike>
  4. #include <fun>
  5. #include <fakemeta>
  6. #include <engine>
  7. #include <hamsandwich>
  8. #include <nvault>
  9. #include <colorchat>
  10.  
  11. #define PLUGIN "Call of Duty: MW3 Mod"
  12. #define VERSION "1.0.2"
  13. #define AUTHOR "QTM_Peyote, Edit: Bani"
  14. #define EDIT "by K.O & Pele"
  15.  
  16. new bool:bSilent[33]
  17. new Odliczanie[33]
  18. new itemo[33]
  19.  
  20. #define ZADANIE_POKAZ_INFORMACJE 672
  21. #define ZADANIE_WSKRZES 704
  22. #define ZADANIE_WYSZKOLENIE_SANITARNE 736
  23. #define ZADANIE_POKAZ_REKLAME 768
  24. #define ZADANIE_USTAW_SZYBKOSC 832
  25. #define ZADANIE_ODBIJAJ -96
  26.  
  27. #define TASKID_REVIVE 1337
  28. #define TASKID_RESPAWN 1338
  29. #define TASKID_CHECKRE 1339
  30. #define TASKID_CHECKST 13310
  31. #define TASKID_ORIGIN 13311
  32. #define TASKID_SETUSER 13312
  33.  
  34. #define pev_zorigin pev_fuser4
  35. #define seconds(%1) ((1<<12) * (%1))
  36. #define Keysrod (1<<0)|(1<<1)|(1<<9) // Keys: 1234567890
  37.  
  38. new SyncHudObj
  39. new SyncHudObj2
  40. new SyncHudObj3
  41. new g_msg_screenfade
  42.  
  43. new sprite_white
  44. new sprite_blast
  45.  
  46. new g_vault
  47.  
  48. new podkladajacy
  49. new rozbrajajacy
  50.  
  51. new doswiadczenia_za_zabojstwo
  52. new doswiadczenie_za_bombe
  53. new doswiadczenie_za_wygrana
  54. new doswiadczenie_za_hs
  55. new oddaj_id[33]
  56. new bool:dostal_przedmiot[33]
  57.  
  58. new Ubrania_CT[4][] = {"sas","gsg9","urban","gign"}
  59. new Ubrania_Terro[4][] = {"arctic","leet","guerilla","terror"}
  60.  
  61. new g_msgHostageAdd, g_msgHostageDel
  62.  
  63. new pozostale_elektromagnesy[33]
  64.  
  65. new pcvar_ilosc_elektromagnesow, pcvar_zasieg, pcvar_widocznosc_fali
  66.  
  67. 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}
  68. new const maxClip[31] = {-1,13,-1,10,1,7,1,30,30,1,30,20,25,30,35,25,12,20,10,30,100,8,30,30,20,2,7,30,30,-1,50}
  69.  
  70. new informacje_przedmiotu_gracza[33][2]
  71. new const nazwy_przedmiotow[][] = {
  72. "Nincs",
  73. "TamadoCsizmak", //1
  74. "Dupla Melleny", //2
  75. "Megerositett melleny", //3
  76. "Veteran Kes", //4
  77. "Meglepetes Tamadas", //5
  78. "Nindzsa Kopeny", //6
  79. "Ujraeldo", //7
  80. "Kommando Kes", //8
  81. "Ke'm szemuveg", //9
  82. "Titokzatos Granat", //10
  83. "Nindzsa Lab", //11
  84. "Titokzatos Katona", //12
  85. "AWP Mester", //13
  86. "Adrenalin", //14
  87. "Rambo", //15
  88. "Egeszseges Edzes", //16
  89. "NASA Melleny", //17
  90. "Edzett Veteran", //18
  91. "Elsosegely csomag", //19
  92. "Recoil Eliminator", //20
  93. "Titan Toltenyek", //21
  94. "Ezres Toltenyek", //22
  95. "Recoil Szamlalo", //23
  96. "SWAT", //24
  97. "Edzett Ujonc", //25
  98. "Relective Fegyverzet", //26
  99. "Kapitanyi Feljegyzesek", //27
  100. "Jet Modul", //28
  101. "Isten Hitte", //29
  102. "Mr.Busta", //30
  103. "Mikulas", //31
  104. "Generalis", //32
  105. "Kulonleges Kommandos", //33
  106. "Deagle Mester", //34
  107. "Assasin Pro", //35
  108. "Tekkno" , //36
  109. "Mc.Donals", //37
  110. "Kicker", //38
  111. "Nehez", //39
  112. "Titan", //40
  113. "Monolitos", //41
  114. "RuhaGeneralis", //42
  115. "Megfigyelo", //43
  116. "Bhopp", //44
  117. "Jokker", //45
  118. "Samuraj", //46
  119. "HitMan", //47
  120. "Noclipes", //49
  121. "TavcsovesGeneralis", //50
  122. "NemKe'm", //51
  123. "GordonBlou", //52
  124. "MesterLovesz", //53
  125. "Misztikus", //54
  126. "Trololo", //55
  127. "Stiles", //56
  128. "BronzErme", //57
  129. "LegendasSamurai", //58
  130. "Profi", //59
  131. "M4 SWATOS", //60
  132. "Gyoker", //61
  133. "Galil Predator", //62
  134. "Vodkas Mesterlovesz", //63
  135. "Inteligens Ember", //64
  136. "HS mentes", //65
  137. "Docktor", //66
  138. "Samuraj Felszereles", //67
  139. "Kakashi", //68
  140. "Amerikai Felszereles", // 69
  141. "Sike's", //70
  142. "HP Boot", //71
  143. "Super Mentos", //72
  144. "Hp lopo", //73
  145. "Kavboy", //74
  146. "Rusher", //75
  147. "2x Jump", //76
  148. "Ogre", // 77
  149. "Misztikus Ninja", //78
  150. "Misztikus ROCKER", //79
  151. "Kemeny Gumi", // 80
  152. "Misztikus Kreaper", //81
  153. "Misztikus Kenyer", //82
  154. "Kapitany", //83
  155. "C4es",//84
  156. "Elektro Ember", //85
  157. "Radaros", //86
  158. "Kuklop", //87
  159. "OstonPower", //88
  160. "MesterJoda" //89
  161. }
  162.  
  163. new const opisy_przedmiotow[][] = {
  164. "Egy ellenseg megolese utan kapsz targyat!", //!=
  165. "Halk Futas", //1
  166. "Csokkenti a becsapodo sebzeseket",//2
  167. "Csokkenti a becsapodo sebzeseket", //3
  168. "Sokkal erosebb szuras kessel", //4
  169. "A hatulrol eltalalt ellenfel, 2x nagyobb sebzest kap az atlagtol",//5
  170. "Reszben lathatatlanna tesz teged", //6
  171. "1/3 esely az ujraeledesre ha megolnek",//7
  172. "Azonnali oles a kessel",//8
  173. "1/3 eselyt kapsz hogy granattal azonnali halalt okozz.",//9
  174. "Azonnali oles HE granattal",//10
  175. "2x tudsz ugrani a levegoben",//11
  176. "A seruleseid csokkennek 1/3-hoz. 1/3-hoz eselyed van arra, hogy megvakitsd az ellenseget",//12
  177. "Azonnali oles AWP-vel", //13
  178. "Minden Frag utan, kapsz +50 HP-t",//14
  179. "Minden Frag utan, full tarat es +20 HP-t kapsz",//15
  180. "Visszakapsz 10 HP-t 3 masodpercenkent", //16
  181. "+500 Armor",//17
  182. "Kapsz minden korben 100 HP-t, viszont lassaban futsz", //18
  183. "Nyomj E betut HP tolteshez", //19
  184. "No recoil",//20
  185. "+15 Sebzes",//21
  186. "+25 Sebzes", //22
  187. "A recoil-od alacsony", //23
  188. "A targyak nem hatraltatnak teged.", //24
  189. "Minden korben +50 HP-t kapsz és lassabban futsz", //25
  190. "1/3 eselyed arra hogy visszaveri a ka'rod",//26
  191. "Immunis leszel minden egyes korben 3 golyora", //27
  192. "Nyomj CTRL-t és SPACE-t a modul hasznalatahoz, 4 masodpercenkent toltodik ujra a modul",//28
  193. "Minden Korben kapsz 50HP-t es Lassaban Futsz", //29
  194. "Kapsz +100hp-t, +20 Energiat,es felszereltseged 30 lesz", //30
  195. "+25 Tamadas, Ugy Nezel ki mint az elenfeled, 1/3 Az azonali oles HE vel", //31
  196. "1/1 es oles Ak val es AWP vel", //32
  197. "M4a1 el Erosseb vagy", //33
  198. "1/3 Eselyed Deaglevel az oles", //34
  199. "1/3 Oles shotgunal", //35
  200. "Beállítja a zöld réteg vastagságát 30 ra és nem több kárt 9-re", //36
  201. "Minden korben +100 hp",//37
  202. "Kapsz 5 Complet Cucot", //38
  203. "Nagy Pancel", //39
  204. "Gyorsabban jon az EXP", //40
  205. "5mp enkent regeneralodik 15hp-d", //41
  206. "Koronkent kapsz 100hpt es lassaban futsz", //42
  207. "Karok csokentese 10,gyors futas,+10 dmg", //43
  208. "Kapsz BunnyHopot+ 70 hpt", //44
  209. "HP regeneralodas (valtazo idonkent)", //45
  210. "500 pancel, 1/3 esely az azonali olesre", //46
  211. "20% Tobbet sebzel Raketaval", //47
  212. "Gugolj es lathatatlan vagy", //48
  213. "10mp noclip", //49
  214. "10 sebzés, tixo futás +100 hp", //50
  215. "+5dmg sebzes csokken 7dmgvel", //51
  216. "5mp kent kapsz valamit", //52
  217. "1/1 Awp , 1/2 Deagle", //53
  218. "Te egy pro vagy :) !!!", //54
  219. "Ugy nezel ki mint elenseged es 1/3 a scoutal", //55
  220. "Kapsz m4a1 + 1/3 azonnali Olest", //56
  221. "Kapsz Ak-t + 1/3 Olest", //57
  222. "+20dmg,Tixo futas", //58
  223. "15 DGM, Tixi lépéseket, 1/3 azonali oles HE-vel", //59
  224. "1/3 Oles m4el +Pancel", //60
  225. "Kapsz 5 aknat koronkent", //61
  226. "Kapsz galil-t + 1/3 Oles vele ", //62
  227. "Kapsz minden fegyora Zoomot", //63
  228. "Ön gazdag", //64
  229. "Hs imunitast kapsz", //65
  230. "HS azonali halal", //66
  231. "1/2 oles Usp-vel, ugy nezel ki mint elenseged es 1/5 oles mp5-tel", //67
  232. "végtelen lõszer", //68
  233. "1/10-hez halal AWP-vel", //69
  234. "+100 HP", //70
  235. "+100 hp olesenkent +25", //71
  236. "oelesenkent teljes tar", //72
  237. "Hpt lopsz", //73
  238. "+40....(rajozs ird meg nekunk)", //74
  239. "10 másodpercig sétálhatunk a falakon", //75
  240. "Dupla Ugras", //76
  241. "Ha megtudod ird meg nekunk", //77
  242. "Kisseb gravitacó", //78
  243. "5 Dmg + 10 sebesség, 3 aknat",//79
  244. "+ hp-t kapsz M3-t es 1\5 Olesi eselyt ", //80
  245. "- 10 sebesseget, +20 sebzest es +25hp-t / oles", //81
  246. "Összesen 25 HP láthatatlansagot+ 1/1 olest késsel", //82
  247. "Láthatóság csökkent 15,90 HP 1/1 esélye sérülés csökken 5", //83
  248. "Beállíthatjuk Bomba detonációt ",//84
  249. "Nem tom mi ez valami energiat kapsz es Kapsz Inteligenciat", //85
  250. "áthatjuk ellenséget a radaron", //86
  251. "Kapsz 3mp kent valamit", //87
  252. "Kapsz 50% HP es Hs imunitast", //88
  253. "Lathatalan + sok granyo" //89
  254. //Helti Klase
  255. 0, //Nincs
  256. 120, //Snajperista
  257. 140, //Marinac
  258. 130, //Pro-Strelac
  259. 120, //Mitraljezac
  260. 110, //Doktor
  261. 100, //Vatrena Podrska
  262. 100, //Miner
  263. 110, //Demolitions
  264. 100, //Rusher
  265. 130, //Rambo
  266. 120, //Revolveras
  267. 110, //Bombarder
  268. 120, //Strelac
  269. 70, //Informator
  270. 110, //Pukovnik
  271. 150, //Pobunjenik
  272. 110, //Serijski ubica
  273. 120, //Desetar
  274. 110, //Vodnik
  275. 120, //Kamikaza
  276. 30, //Assassin
  277. 100, //Major
  278. 100, //Kapetan
  279. 100, //Potpukovnik
  280. 120, //Marsal
  281. 120, //Nemacki strelac
  282. 130, //Ruski pukovnik
  283. 100, //Poljska pesadija
  284. 110, //Mornar
  285. 150, //Napadac
  286. 100, //Legija
  287. 160, //Armageddon
  288. 100, //Samuraj
  289. 150, //Ratko Mladic
  290. 150, //SWAT
  291. 100, //Partizan
  292. 125, //Gunner
  293. 100, //Cleric
  294. 130, //General
  295. 140, //Terminator
  296. 80, //Slayer
  297. 110, //Zastavnik
  298. 125, //Admiral
  299. 150, //Fighter
  300. 120, //Policajac
  301. 110, //Specijalac
  302. 100, //Predator
  303. 105, //NemackiOficir
  304. 124, //Cetnik
  305. 130, //ProfVojnik
  306. 80, //Crysis
  307. 105, //ProfStrelac
  308. 145, //Pijandura
  309. 500, //EXTREME
  310. 200, //LIKEABOSS
  311. 240, //Makarov
  312. 220, //sandman
  313. 250 //extremezone
  314. }
  315.  
  316. new const Float:szybkosc_klasy[] = { //Brzina Klase
  317. 0.0, //None
  318. 1.3, //Snajperista
  319. 1.35, //Marinac
  320. 1.0, //Pro-Strelac
  321. 0.8, //Mitraljezac
  322. 1.5, //Doktor
  323. 1.2, //Vatrena Podrska
  324. 1.1, //Miner
  325. 1.1, //Demolitions
  326. 1.3, //Rusher
  327. 1.2, //Rambo
  328. 1.1, //Revolveras
  329. 1.1, //Bombarder
  330. 1.0, //Strelac
  331. 1.6, //Informator
  332. 1.1, //Pukovnik
  333. 1.4, //Pobunjenik
  334. 1.0, //Serijski ubica
  335. 1.0, //Desetar
  336. 1.1, //Vodnik
  337. 1.0, //Kamikaza
  338. 1.2, //Assassin
  339. 1.2, //Major
  340. 1.0, //Kapetan
  341. 1.6, //Potpukovnik
  342. 1.1, //Marsal
  343. 1.0, //Nemacki strelac
  344. 1.0, //Ruski pukovnik
  345. 1.2, //Poljska pesadija
  346. 0.7, //Mornar
  347. 1.2, //Napadac
  348. 1.0, //Legija
  349. 1.0, //Armageddon
  350. 1.4, //Samuraj
  351. 1.4, //Ratko Mladic
  352. 1.3, //SWAT
  353. 1.3, //Partizan
  354. 1.0, //Gunner
  355. 1.2, //Cleric
  356. 1.2, //General
  357. 1.4, //Terminator
  358. 1.6, //Slayer
  359. 1.4, //Zastavnik
  360. 1.1, //Admiral
  361. 1.4, //Fighter
  362. 1.2, //Policajac
  363. 1.8, //Specijalac
  364. 1.3, //Predator
  365. 1.0, //NemackiOficir
  366. 1.2, //Cetnik
  367. 1.6, //ProfVojnik
  368. 1.8, //Crysis
  369. 1.0, //ProfStrelac
  370. 1.2, //Pijandura
  371. 2.0, //EXTREME
  372. 1.8, //LIKEABOSS
  373. 1.7, //Makarov
  374. 2.0, //sandman
  375. 2.0 //Extremezone
  376. }
  377.  
  378. new const pancerz_klasy[] = { //Armor Klase
  379. 0, //None
  380. 100, //Snajperi
  381. 100, //Marinac
  382. 100, //Pro-Strelac
  383. 40, //Mitraljezac
  384. 0, //Doktor
  385. 0, //Vatrena Podrska
  386. 0, //Miner
  387. 100, //Demolitions
  388. 40, //Rusher
  389. 0, //Rambo
  390. 0, //Revolveras
  391. 100, //Bombarder
  392. 40, //Strelac
  393. 0, //Informator
  394. 200, //Pukovnik
  395. 500, //Pobunjenik
  396. 100, //Serijski ubica
  397. 0, //Desetar
  398. 200, //Vodnik
  399. 300, //Kamikaza
  400. 100, //Assassin
  401. 0, //Major
  402. 0, //Kapetan
  403. 200, //Potpukovnik
  404. 0, //Marsal
  405. 100, //Nemacki strelac
  406. 0, //Ruski pukovnik
  407. 0, //Poljska pesadija
  408. 100, //Mornar
  409. 0, //Napadac
  410. 0, //Legija
  411. 120, //Armageddon
  412. 0, //Samuraj
  413. 150, //Ratko Mladic
  414. 110, //SWAT
  415. 100, //Partizan
  416. 100, //Gunner
  417. 150, //Cleric
  418. 120, //General
  419. 50, //Terminator
  420. 120, //Slayer
  421. 300, //Zastavnik
  422. 70, //Admiral
  423. 100, //Fighter
  424. 50, //Policajac
  425. 0, //Specijalac
  426. 25, //Predator
  427. 80, //NemackiOficir
  428. 100, //Cetnik
  429. 90, //ProfVojnik
  430. 10, //Crysis
  431. 45, //ProfStrelac
  432. 100, //Pijandura
  433. 500, //EXTREME
  434. 200, //LIKEABOSS
  435. 170, //Makarov
  436. 900, //sandman
  437. 250 //EZ
  438. }
  439.  
  440. new const nazwy_klas[][] = {
  441. "Nincs",
  442. "Kamikazze(Deagle,Ak,M4a1,1dbDinamit)",
  443. "Comandos[Player]",
  444. "Elfoglalt(TMP,MP5,3dbDinamit)",
  445. "Elerhet'o'(Galil,3dbDinamit)",
  446. "Rejtejes(G3sg1,Usp,M249,1dbRake'ta)",
  447. "Predator(Elites,P90,2dbRake'ta)",
  448. "Asszony(Famas,3dbRake'ta)",
  449. "Ferfi(Sg552,Mac10,AWP,1dbAkna)",
  450. "Baratsagos(M4a1,Scout,2dbAkna)",
  451. "JoEmber(Xm1014,3dbAkna)",
  452. "Papir(2Granyo,Ak47)",
  453. "Erd'o'(VakitoGranyo,M4a1)",
  454. "Tiger(M249,1dbDinamit)",
  455. "Anyag(Mp5,HeGranyo,M4a1)",
  456. "Toll(200Ve'delem,Ak47)",
  457. "Tolltarto(500Ve'delem,Deagle)",
  458. "Polo('O'szesGranyo,Famas)",
  459. "Ruha(Ak47,HeGranyo,M4a1)",
  460. "Sapka(Deagle,M4a1)",
  461. "Ke'z(300Ve'delem,Usp)",
  462. "Kegyenc[Admin]",
  463. "Tengeresz",
  464. "Politikus",
  465. "Csajszi",
  466. "Feltalalo",
  467. "Ormester",
  468. "Rendor",
  469. "CTElharitos",
  470. "TerorEharitos",
  471. "Legendas",
  472. "Samuraj",
  473. "Achilleus",
  474. "SWAT",
  475. "Gyalogos",
  476. "Ezredes",
  477. "AllEzredes",
  478. "Vezer",
  479. "AllVezer",
  480. "Boszorkany",
  481. "Zseni",
  482. "Admiralis",
  483. "Harcos",
  484. "Ninja",
  485. "Shaman",
  486. "Predatorusz",
  487. "HsTorlo",
  488. "HalalOszto",
  489. "Profesor",
  490. "Ember'O'l'o'",
  491. "Admin'O'l'o'",
  492. "Batman",
  493. "Szornyeteg",
  494. "Va'ndor",
  495. "Destroyos",
  496. "SlenderMan",
  497. "KicsiVazze"
  498. }
  499.  
  500. new const frakcje[][] = {
  501. "Sima Kasztok",
  502. "\ySima Kasztok",
  503. "\rAdmin Kasztok \r",
  504. "\yPredator Kasztok \r",
  505. "\rVIP Kasztok \r",
  506. "\yAkna'sKasztok",
  507. "\yRake'tasKasztok",
  508. "\yDinamitosKasztok"
  509. }
  510.  
  511. enum { NONE = 0, o, p, b, s, k, l, m }
  512.  
  513. new const nalezy_do[] = {
  514. NONE,
  515. m,
  516. o,
  517. m,
  518. m,
  519. l,
  520. l,
  521. l,
  522. k,
  523. k,
  524. k,
  525. o,
  526. o,
  527. m,
  528. o,
  529. o,
  530. o,
  531. o,
  532. o,
  533. o,
  534. o,
  535. p,
  536. p,
  537. o,
  538. o,
  539. o,
  540. o,
  541. o,
  542. o,
  543. o,
  544. o,
  545. o,
  546. b,
  547. o,
  548. p,
  549. o,
  550. o,
  551. o,
  552. o,
  553. p,
  554. o,
  555. b,
  556. o,
  557. o,
  558. b,
  559. o,
  560. o,
  561. o,
  562. o,
  563. o,
  564. o,
  565. o,
  566. o,
  567. b,
  568. s,
  569. s,
  570. s,
  571. s,
  572. s,
  573. }
  574.  
  575. new frakcja_gracza[33]
  576.  
  577. #define XO_PLAYER 5
  578. #define m_rgpPlayerItems_0 376
  579.  
  580. new const opisy_klas[][] = {"nincs",
  581. "\yFelszereles:\r AWP, Deagle, Scout^n\yEnergija:\r 120 HP^n\yPajzs:\r 100 AP^n\yHalhatatlasag:\r 130%^n\ySpecijalne moci:\r 1:3 (valami van hozza)",
  582. "\yFelszereles:\r Deagle^n\yEnergija:\r 140 HP^n\yPajzs:\r 100 AP^n\yBrzina:\r 135%^n\ySpecijalne moci:\r instant kill nozem",
  583. "\yFelszereles:\r AK47, M4A1^n\yEnergija:\r 110 HP^n\yPajzs:\r 100 AP^n\yBrzina:\r 80%^n\ySpecijalne moci:\r nema",
  584. "\yFelszereles:\r M246^n\yEnergija:\r 120 HP^n\yPajzs:\r 40 AP^n\yBrzina:\r 80%^n\ySpecijalne moci:\r otporan na mine ima sve bombe.",
  585. "\yFelszereles:\r UMP45^n\yEnergija:\r 110 HP^n\yPajzs:\r 100 AP^n\yBrzina:\r 140%^n\ySpecijalne moci:\r dobija set lekara",
  586. "\yFelszereles:\r MP5, HE^n\yEnergija:\r 100 HP^n\yPajzs:\r 100 AP^n\yBrzina:\r 120%^n\ySpecijalne moci:\r nema",
  587. "\yFelszereles:\r P90, 3 mine^n\yEnergija:\r 100 HP^n\yPajzs:\r 100 AP^n\yBrzina:\r 110%^n\ySpecijalne moci:\r nema",
  588. "\yFelszereles:\r AUG, Sve Bombe^n\yEnergija:\r 110 HP^n\yPajzs:\r 100 AP^n\yBrzina:\r 110%^n\ySpecijalne moci:\r Dinamiti koji ubijaju u krugu od 1 m",
  589. "\yFelszereles:\r M3^n\yEnergija:\r 100 HP^n\yPajzs:\r 100 AP^n\yBrzina:\r 130%^n\ySpecijalne moci:\r nema",
  590. "\yFelszereles:\r Famas^n\yEnergija:\r 130 HP^n\yPajzs:\r 150 AP^n\yBrzina:\r 120%^n\ySpecijalne moci:\r Za svako ubistvo dobija + 20 hp, Pun sarzer, Dupli skok",
  591. "\yFelszereles:\r Elites, 1 raketa^n\yEnergija:\r 120 HP^n\yPajzs:\r / ^n\yBrzina:\r 110%^n\ySpecijalne moci:\r nema",
  592. "\yFelszereles:\r M4A1, Deagle^n\yEnergija:\r 140 HP^n\yPajzs:\r 100 AP^n\yBrzina:\r 90%^n\ySpecijalne moci:\r nema",
  593. "\yFelszereles:\r XM1014, Elites^n\yEnergija:\r 120 HP^n\yPajzs:\r 40 AP^n\yBrzina:\r 100%^n\ySpecijalne moci:\r nema",
  594. "\yFelszereles:\r MP5^n\yEnergija:\r 70 HP^n\yPajzs:\r / ^n\yBrzina:\r 100%^n\ySpecijalne moci:\r nema",
  595. "\yFelszereles:\r Famas, Deagle^n\yEnergija:\r 110 HP^n\yArmor:\r / ^n\yBrzina:\r 100%^n\ySpecijalne moci:\r nema",
  596. "\yFelszereles:\r SG552, 1 Minu, 1 HE^n\yEnergija:\r 100 HP^n\yPajzs:\r / ^n\yBrzina:\r 100%^n\ySpecijalne moci:\r nema",
  597. "\yFelszereles:\r M4A1, Smoke grenade^n\yEnergija:\r 110 HP^n\yArmor:\r 100 AP^n\yBrzina:\r 100%^n\ySpecijalne moci:\r nema",
  598. "\yFelszereles:\r Scout, Deagle^n\yEnergija:\r 120 HP^n\yArmor:\r 100 AP^n\yBrzina:\r 100%^n\ySpecijalne moci:\r nema",
  599. "\yFelszereles:\r M3^n\yEnergija:\r 110 HP^n\yArmor:\r / ^n\yBrzina:\r 110%^n\ySpecijalne moci:\r nema",
  600. "\yFelszereles:\r M4A1, 2 rakete^n\yEnergija:\r 120 HP^n\yArmor:\r / ^n\yBrzina:\r 100%^n\ySpecijalne moci:\r nema",
  601. "\yFelszereles:\r Deagle^n\yEnergija:\r 150 HP^n\yArmor:\r / ^n\yBrzina:\r 200%^n\ySpecijalne moci:\r Nevidljivost, Instant kill nozem",
  602. "\yFelszereles:\r M4A1, Sve pistolje, 10 mina^n\yEnergija:\r 90 HP^n\yArmor:\r / ^n\yBrzina:\r 110%^n\ySpecijalne moci:\r nema",
  603. "\yFelszereles:\r AUG^n\yEnergija:\r 100 HP^n\yArmor:\r / ^n\yBrzina:\r 100%^n\ySpecijalne moci:\r nema",
  604. "\yFelszereles:\r AWP, Deagle^n\yEnergija:\r 100 HP^n\yArmor:\r 200 AP^n\yBrzina:\r 100%^n\ySpecijalne moci:\r Manje je vidljiv",
  605. "\yFelszereles:\r Deagle^n\yEnergija:\r 120 HP^n\yArmor:\r / ^n\yBrzina:\r 120%^n\ySpecijalne moci:\r nema",
  606. "\yFelszereles:\r AK47, 2 rakete^n\yEnergija:\r 90 HP^n\yArmor:\r 100 AP^n\yBrzina:\r 120%^n\ySpecijalne moci:\r nema",
  607. "\yFelszereles:\r M4A1, 1 minu^n\yEnergija:\r 130 HP^n\yArmor:\r / ^n\yBrzina:\r 70%^n\ySpecijalne moci:\r nema",
  608. "\yFelszereles:\r MP5, 2 dinamita^n\yEnergija:\r 100 HP^n\yArmor:\r / ^n\yBrzina:\r 100%^n\ySpecijalne moci:\r nema",
  609. "\yFelszereles:\r MAC10, 2 mine^n\yEnergija:\r 110 HP^n\yArmor:\r 100 AP^n\yBrzina:\r 100%^n\ySpecijalne moci:\r Ima 50% gravitacije",
  610. "\yFelszereles:\r Famas, P90, 3 dinamita^n\yEnergija:\r 110 HP^n\yArmor:\r / ^n\yBrzina:\r 100%^n\ySpecijalne moci:\r Smanjena gravitacija",
  611. "\yFelszereles:\r M4A1, Deagle^n\yEnergija:\r 100 HP^n\yArmor:\r / ^n\yBrzina:\r 100%^n\ySpecijalne moci:\r nema",
  612. "\yFelszereles:\r AK47, AUG, HE, 2 dinamita^n\yEnergija:\r 160 HP^n\yArmor:\r 120 AP^n\yBrzina:\r 140%^n\ySpecijalne moci:\r Manje je vidljiv",
  613. "\yFelszereles:\r USP,^n\yEnergija:\r 100 HP^n\yArmor:\r / ^n\yBrzina:\r 120%^n\ySpecijalne moci:\r nema",
  614. "\yFelszereles:\r Scout, Deagle, 5 raketa^n\yEnergija:\r 140 HP^n\yArmor:\r 150 AP^n\yBrzina:\r 130%^n\ySpecijalne moci:\r Instant kill sa Scout-om, Dupli skok ",
  615. "\yOFelszereles:\r M4A1, USP,^n\yEnergija:\r 150 HP^n\yArmor:\r 110 AP^n\yBrzina:\r 10%^n\ySpecijalne moci:\r nema",
  616. "\yFelszereles:\r P90, Flash grenade^n\yEnergija:\r 100 HP^n\yArmor:\r 100 AP^n\yBrzina:\r 100%^n\ySpecijalne moci:\r Manje je vidljiv",
  617. "\yFelszereles:\r G3SG1, HE^n\yEnergija:\r 125 HP^n\yArmor:\r 100 AP^n\yBrzina:\r 120%^n\ySpecijalne moci:\r nema",
  618. "\yFelszereles:\r AK47, Elites, 3 mine^n\yEnergija:\r 140 HP^n\yArmor:\r 50 AP^n\yBrzina:\r 100%^n\ySpecijalne moci:\r nema",
  619. "\yFelszereles:\r M4A1, P90, Deagle^n\yEnergija:\r 140 HP^n\yArmor:\r 130 AP^n\yBrzina:\r 120%^n\ySpecijalne moci:\r 1/10 sa deaglom, Kamuflaza",
  620. "\yFelszereles:\r AK47, Deagle^n\yEnergija:\r 110 HP^n\yArmor:\r 120 AP^n\yBrzina:\r 120%^n\ySpecijalne moci:\r nema",
  621. "\yFelszereles:\r FAMAS, P90, 3 rakete^n\yEnergija:\r 110 HP^n\yArmor:\r 50 AP^n\yBrzina:\r 120%^n\ySpecijalne moci:\r nema",
  622. "\yFelszereles:\r M4A1, P90, Deagle, 2 rakete^n\yEnergija:\r 90 HP^n\yArmor:\r 300AP^n\yBrzina:\r 140%^n\ySpecijalne moci:\r nema",
  623. "\yFelszereles:\r AK47, Famas^n\yEnergija:\r 125 HP^n\yArmor:\r 70AP^n\yBrzina:\r 110%^n\ySpecijalne moci:\r nema",
  624. "\yFelszereles:\r M4A1, Scout, USP, 2 dinamita, dupli skok^n\yEnergija:\r 150 HP^n\yArmor:\r 0 AP^n\yBrzina:\r 140%^n\ySpecijalne moci:\r 1/3 za instant kill nozem",
  625. "\yFelszereles:\r XM1014, TMP, fiveseven^n\yEnergija:\r 150 HP^n\yArmor:\r 50 AP^n\yBrzina:\r 120%^n\ySpecijalne moci:\r nema",
  626. "\yFelszereles:\r Famas, p228^n\yEnergija:\r 110 HP^n\yArmor:\r 0 AP^n\yBrzina:\r 150%^n\ySpecijalne moci:\r nema",
  627. "\yFelszereles:\r sg552, glock18, smokegrenade^n\yEnergija:\r 100 HP^n\yArmor:\r 25 AP^n\yBrzina:\r 150%^n\ySpecijalne moci:\r nema",
  628. "\yFelszereles:\r p90, glock18, smokegrenade^n\yEnergija:\r 105 HP^n\yArmor:\r 80 AP^n\yBrzina:\r 130%^n\ySpecijalne moci:\r nema",
  629. "\yFelszereles:\r AK47, 2 HE, 2 dinamita^n\yEnergija:\r 124 HP^n\yArmor:\r 100 AP^n\yBrzina:\r 120%^n\ySpecijalne moci:\r nema",
  630. "\yFelszereles:\r Famas, USP, 1 raketu^n\yEnergija:\r 130 HP^n\yArmor:\r 90 AP^n\yBrzina:\r 130%^n\ySpecijalne moci:\r nema",
  631. "\yFelszereles:\r sg552, m4a1, 2 rakete^n\yEnergija:\r 80 HP^n\yArmor:\r 10 AP^n\yBrzina:\r 135%^n\ySpecijalne moci:\r super speed, 65% nevidljiv",
  632. "\yFelszereles:\r AWP, m4a1^n\yEnergija:\r 105 HP^n\yArmor:\r 45 AP^n\yBrzina:\r 120%^n\ySpecijalne moci:\r nema",
  633. "\yFelszereles:\r M4a1, AK47, AWP, 5 dinamita^n\yEnergija:\r 500 HP^n\yArmor:\r 500 AP^n\yBrzina:\r 180%^n\ySpecijalne moci:\r Super Speed, Instant kill sa Knife i HE",
  634. "\yFelszereles:\r M4a1, AK47, AWP, 5 raketa^n\yEnergija:\r 200 HP^n\yArmor:\r 200 AP^n\yBrzina:\r 160%^n\ySpecijalne moci:\r Super speed, Instant kill HE",
  635. "\yFelszereles:\r M4a1, Deagle, 2 rakete^n\yEnergija:\r 240 HP^n\yArmor:\r 170 AP^n\yBrzina:\r 170%^n\ySpecijalne moci:\r Instant M4a1 1/9, Medium speed",
  636. "\yFelszereles:\r Knife^n\yEnergija:\r 220 HP^n\yArmor:\r 900 AP^n\yBrzina:\r 200%^n\ySpecijalne moci:\r Nevidljivost, Instant Knife i HE, Ultra speed",
  637. "\yFelszereles:\r M4A1, AK47, Deagle^n\yEnergija:\r 250 HP^n\yArmor:\r 250 AP^n\yBrzina:\r 200%^n\ySpecijalne moci:\r Nevidljivost, Instant Knife i HE ,Mega speed"
  638. }
  639. new ilosc_apteczek_gracza[33]
  640. new ilosc_rakiet_gracza[33]
  641. new Float:poprzednia_rakieta_gracza[33]
  642. new ilosc_min_gracza[33]
  643. new ilosc_dynamitow_gracza[33]
  644. new ilosc_skokow_gracza[33]
  645.  
  646. new SOUND_START[] = "items/medshot4.wav"
  647. new SOUND_FINISHED[] = "items/smallmedkit2.wav"
  648. new SOUND_FAILED[] = "items/medshotno1.wav"
  649.  
  650. enum {
  651. ICON_HIDE = 0,
  652. ICON_SHOW,
  653. ICON_FLASH
  654. }
  655.  
  656. new bool:g_haskit[33]
  657. new Float:g_revive_delay[33]
  658. new Float:g_body_origin[33][3]
  659. new bool:g_wasducking[33]
  660.  
  661. new g_msg_bartime
  662. new g_msg_statusicon
  663. new g_msg_clcorpse
  664.  
  665. new cvar_revival_time
  666. new cvar_revival_health
  667. new cvar_revival_dis
  668. new bool:freezetime = true
  669. new hasZoom[33]
  670.  
  671. static const CSW_to_offset[] = {0,385,378,388,381,390,382,389,386,383,382,380,380,380,382,386,377,386,379,381,380,386,378,387,384,380,378,0,383};
  672.  
  673. new cache_trail;
  674.  
  675. new licznik_zabic[33],radar[33],nalot[33],predator[33],nuke[33],emp[33],uav[33], pack[33]
  676. new user_controll[33]
  677. new emp_czasowe
  678.  
  679. new PobraneOrigin[3]
  680. native cod_set_user_xp(id, wartosc)
  681. native cod_get_user_xp(id)
  682.  
  683. static const COLOR[] = "^x04" //green
  684. static const CONTACT[] = ""
  685. new maxplayers
  686. new gmsgSayText
  687. new mpd, mkb, mhb
  688. new g_MsgSync
  689. new health_add
  690. new health_hs_add
  691. new health_max
  692. new nKiller
  693. new nKiller_hp
  694. new nHp_add
  695. new nHp_max
  696. new g_vip_active
  697. new g_menu_active
  698. new bool:HasC4[33]
  699. #define DAMAGE_RECIEVED
  700. #define Keysrod (1<<0)|(1<<1)|(1<<9) // Keys: 1234567890
  701. new round;
  702.  
  703. stock g_WeaponSlots[] = {0,2,0,1,4,1,5,1,1,4,2,2,1,1,1,1,2,2,1,1,1,1,1,1,1,4,2,1,1,3,1}
  704. stock g_MaxBPAmmo[] = {0,52,0,90,1,32,1,100,90,1,120,100,100,90,90,90,100,120,30,120,200,21,90,120,90,2,35,90,90,0,100}
  705.  
  706. public plugin_init()
  707. {
  708. register_plugin(PLUGIN, VERSION, AUTHOR);
  709.  
  710. g_vault = nvault_open("CodMod");
  711.  
  712. register_think("Apteczka","ApteczkaThink");
  713.  
  714. RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
  715. RegisterHam(Ham_Spawn, "player", "Odrodzenie", 1);
  716. RegisterHam(Ham_Touch, "armoury_entity", "DotykBroni");
  717. RegisterHam(Ham_Touch, "weapon_shield", "DotykBroni");
  718. RegisterHam(Ham_Touch, "weaponbox", "DotykBroni");
  719. RegisterHam(Ham_Killed, "player", "SmiercGracza", 1);
  720. RegisterHam(Ham_Touch, "player", "pack_touch", 1);
  721.  
  722. register_forward(FM_CmdStart, "CmdStart");
  723. register_forward(FM_EmitSound, "EmitSound");
  724. register_forward(FM_EmitSound, "fwd_emitsound")
  725. register_forward(FM_PlayerPostThink, "fwd_playerpostthink")
  726. register_forward(FM_PlayerPreThink, "forward_player_prethink" );
  727. register_forward(FM_TraceLine,"fw_traceline");
  728. register_forward(FM_Touch, "fw_Touch");
  729. register_forward(FM_PlayerPreThink, "player_predator");
  730. register_forward(FM_PlayerPreThink, "Forward_FM_PlayerPreThink")
  731. register_forward(FM_ClientKill, "cmdKill")
  732. set_task (2.0,"radar_scan2",_,_,_,"b");
  733.  
  734. register_logevent("PoczatekRundy", 2, "1=Round_Start");
  735. register_logevent("BombaPodlozona", 3, "2=Planted_The_Bomb");
  736. register_event("SendAudio", "BombaRozbrojona", "a", "2&%!MRAD_BOMBDEF");
  737. register_event("BarTime", "RozbrajaBombe", "be", "1=10", "1=5");
  738. register_event("DeathMsg", "Death", "ade");
  739. register_event("Damage", "Damage", "b", "2!=0");
  740. register_event("CurWeapon","CurWeapon","be", "1=1");
  741. register_event("HLTV", "NowaRunda", "a", "1=0", "2=0");
  742. register_event("DeathMsg", "event_death", "a")
  743. register_event("HLTV", "event_hltv", "a", "1=0", "2=0")
  744.  
  745. register_touch("Rocket", "*" , "DotykRakiety");
  746. register_touch("Mine", "player", "DotykMiny");
  747.  
  748. register_cvar("cod_killxp", "100");
  749. register_cvar("cod_bombxp", "250");
  750. register_cvar("cod_hsexp", "150");
  751. register_cvar("cod_winxp", "200");
  752.  
  753. cvar_revival_time = register_cvar("amx_revkit_time", "4")
  754. cvar_revival_health = register_cvar("amx_revkit_health", "75")
  755. cvar_revival_dis = register_cvar("amx_revkit_distance", "100.0")
  756. register_message(get_user_msgid("Health"),"message_health");
  757. register_cvar("codmw42byfroyd", "2.0", (FCVAR_SERVER|FCVAR_SPONLY))
  758.  
  759. register_event("SendAudio", "WygranaTerro" , "a", "2&%!MRAD_terwin");
  760. register_event("SendAudio", "WygranaCT", "a", "2&%!MRAD_ctwin");
  761.  
  762. register_menucmd(register_menuid("rod"), Keysrod, "Pressedrod")
  763. register_clcmd("radio2", "uzyj_nagrody");
  764.  
  765. register_clcmd("say /fegyo", "WybierzKlase")
  766. register_clcmd("say /osztaly", "WybierzKlase")
  767. register_clcmd("say /fegyoinfo", "OpisKlasy")
  768. register_clcmd("say /osztalyinfo", "OpisKlasy")
  769. register_clcmd("say /nullazas", "KomendaResetujPunkty");
  770. register_clcmd("say /ujra", "KomendaResetujPunkty");
  771. register_clcmd("say /targy", "OpisPrzedmiotu")
  772. register_clcmd("say /dobas", "WyrzucPrzedmiot")
  773. register_clcmd("say /shop", "Sklep")
  774. register_clcmd("say /bolt", "Sklep")
  775. register_clcmd("say /pomoc", "WylaczPomoc")
  776. register_clcmd("say /adas", "OddajPrzedmiot")
  777. register_clcmd("say /keres", "SprzedajPrzedmiot")
  778.  
  779. register_clcmd("fullupdate", "BlokujKomende");
  780. register_clcmd("cl_autobuy", "BlokujKomende");
  781. register_clcmd("say /molotov", "BlokujKomende");
  782. register_clcmd("say molotov", "BlokujKomende");
  783. register_clcmd("cl_rebuy", "BlokujKomende");
  784. register_clcmd("cl_setautobuy","BlokujKomende");
  785. register_clcmd("rebuy", "BlokujKomende");
  786. register_clcmd("autobuy", "BlokujKomende");
  787. register_clcmd("glock", "BlokujKomende");
  788. register_clcmd("usp", "BlokujKomende");
  789. register_clcmd("p228", "BlokujKomende");
  790. register_clcmd("deagle", "BlokujKomende");
  791. register_clcmd("elites", "BlokujKomende");
  792. register_clcmd("fn57", "BlokujKomende");
  793. register_clcmd("m3", "BlokujKomende");
  794. register_clcmd("XM1014", "BlokujKomende");
  795. register_clcmd("mac10", "BlokujKomende");
  796. register_clcmd("tmp", "BlokujKomende");
  797. register_clcmd("mp5", "BlokujKomende");
  798. register_clcmd("ump45", "BlokujKomende");
  799. register_clcmd("p90", "BlokujKomende");
  800. register_clcmd("galil", "BlokujKomende");
  801. register_clcmd("ak47", "BlokujKomende");
  802. register_clcmd("scout", "BlokujKomende");
  803. register_clcmd("sg552", "BlokujKomende");
  804. register_clcmd("awp", "BlokujKomende");
  805. register_clcmd("g3sg1", "BlokujKomende");
  806. register_clcmd("famas", "BlokujKomende");
  807. register_clcmd("m4a1", "BlokujKomende");
  808. register_clcmd("bullpup", "BlokujKomende");
  809. register_clcmd("sg550", "BlokujKomende");
  810. register_clcmd("m249", "BlokujKomende");
  811. register_clcmd("shield", "BlokujKomende");
  812. register_clcmd("hegren", "BlokujKomende");
  813. register_clcmd("sgren", "BlokujKomende");
  814. register_clcmd("flash", "BlokujKomende");
  815. register_clcmd("vest", "BlokujKomende");
  816. register_clcmd("vesthelm", "BlokujKomende");
  817.  
  818. register_concmd("cod_setlvl", "cmd_setlvl", ADMIN_RCON, "<nev> <level>");
  819. register_concmd("cod_dajpredmet", "KomendaDajPrzedmiot", ADMIN_RCON, "<nick> <item>");
  820. register_message(g_msg_clcorpse, "message_clcorpse")
  821. register_clcmd("say /vips", "print_adminlist")
  822. gmsgSayText = get_user_msgid("SayText")
  823.  
  824. g_msg_screenfade = get_user_msgid("ScreenFade");
  825. g_msg_bartime = get_user_msgid("BarTime")
  826. g_msg_clcorpse = get_user_msgid("ClCorpse")
  827. g_msg_statusicon = get_user_msgid("StatusIcon")
  828. SyncHudObj = CreateHudSyncObj();
  829. SyncHudObj2 = CreateHudSyncObj();
  830. SyncHudObj3 = CreateHudSyncObj();
  831. doswiadczenia_za_zabojstwo = get_cvar_num("cod_killxp");
  832. doswiadczenie_za_bombe = get_cvar_num("cod_bombxp");
  833. doswiadczenie_za_wygrana = get_cvar_num("cod_winxp");
  834. doswiadczenie_za_hs = get_cvar_num("cod_hsexp");
  835.  
  836. register_event("ResetHUD", "ResetHUD", "abe");
  837. register_think("magnet","MagnetThink");
  838.  
  839. pcvar_ilosc_elektromagnesow = register_cvar("cod_magnets", "1");
  840. pcvar_zasieg = register_cvar("cod_magnetradius", "250");
  841. pcvar_widocznosc_fali = register_cvar("cod_wavesvisibility", "5");
  842. /* --==[ VIP ] ==-- */
  843. mpd = register_cvar("money_per_damage","10")
  844. mkb = register_cvar("money_kill_bonus","1000")
  845. mhb = register_cvar("money_hs_bonus","500")
  846. health_add = register_cvar("amx_vip_hp", "150")
  847. health_hs_add = register_cvar("amx_vip_hp_hs", "100")
  848. health_max = register_cvar("amx_vip_max_hp", "1000")
  849. g_vip_active = register_cvar("vip_active", "0")
  850. g_menu_active = register_cvar("menu_active", "0")
  851.  
  852. register_event("CurWeapon", "event_CurWeapon_Vip", "be", "1=1")
  853.  
  854. register_event("Damage","Damage2","b")
  855. register_event("Damage", "on_damage", "b", "2!0", "3=0", "4!0")
  856.  
  857. register_menucmd(register_menuid("rod"), Keysrod, "Pressedrod")
  858. register_clcmd("say /help","ShowMotd")
  859.  
  860. maxplayers = get_maxplayers()
  861. g_MsgSync = CreateHudSyncObj()
  862. gmsgSayText = get_user_msgid("SayText")
  863. register_clcmd("say", "handle_say")
  864. register_cvar("sv_contact", CONTACT, FCVAR_SERVER)
  865.  
  866. register_logevent("Round_Reset", 2, "1=Game_Commencing")
  867. register_event("TextMsg", "Round_Reset", "a", "2&Game_will_restart_in")
  868. register_event("DeathMsg", "hook_death", "a", "1>0")
  869. /* --==[ VIP ] ==-- */
  870. set_task(30.0, "Pomoc");
  871.  
  872. g_msgHostageAdd = get_user_msgid("HostagePos");
  873. g_msgHostageDel = get_user_msgid("HostageK");
  874.  
  875. set_task(1.5, "radar_scan", _, _, _, "b");
  876. set_task(10.0, "REKLAMA");
  877.  
  878. register_event("CurWeapon","beskonacno","be","1=1","3=0")
  879. }
  880.  
  881. public Sklep(id)
  882. {
  883. new menu = menu_create("\rShop:", "Sklep_Handle");
  884. menu_additem(menu, "\yNagyonKicsi HP Csomag \r[20 HP] \yA'ra: \w4000$");
  885. menu_additem(menu, "\yKicsi HP Csomag \r[50 HP] \yA'ra: \w10000$");
  886. menu_additem(menu, "\yNormalis HP Csomag \r[100 HP] \yA'ra: \w15000$");
  887. menu_additem(menu, "\yNagy HP Csomag \r[250 HP] \yA'ra: \w16000$");
  888. menu_additem(menu, "\yRandom Cuc \r[Kulonleges Random Cuc] \yA'ra: \w3000$");
  889. menu_additem(menu, "\yVedelem \r[+80] \yA'ra: \w9000$");
  890. menu_additem(menu, "\yGranyo Felszereles \r[3db Granat] \yA'ra: \w2500$");
  891. menu_additem(menu, "\yFegyvert Felszereles \r[M4A1,AWP,Deagle] \yA'ra: 12000$");
  892. menu_additem(menu, "\yKicsi Exp Csomag \r[Dobijate slucajno od 50 do 200 Exp]\yA'ra: \w2000$");
  893. menu_additem(menu, "\yNormalis Exp Csomag \r[Dobijate slucajno od 200 do 500 Exp]\yA'ra: \w4000$");
  894. menu_additem(menu, "\yKozepes Exp Csomag \r[Dobijate slucajno od 500 do 1000 Exp]\yA'ra: \w8000$");
  895. menu_additem(menu, "\yNagy Exp Csomag \r[Dobijate slucajno od 1000 do 3000 Exp]\yA'ra: \w16000$");
  896. menu_additem(menu, "\yAkna \r[2db Akna] \yA'ra: \w10000$");
  897. menu_additem(menu, "\yDinamit \r[2db Dinamit] \yA'ra: \w10000$");
  898. menu_additem(menu, "\yRaketa \r[2db Rake'ta] \yA'ra: \w16000$");
  899. menu_display(id, menu);
  900. }
  901.  
  902. public Sklep_Handle(id, menu, item)
  903. {
  904. client_cmd(id, "spk mw/select")
  905.  
  906. if(item == MENU_EXIT)
  907. {
  908. menu_destroy(menu)
  909. return PLUGIN_HANDLED
  910. }
  911.  
  912. menu_display(id, menu)
  913.  
  914. new kasa_gracza = cs_get_user_money(id)
  915. new hp = get_user_health(id)
  916.  
  917. switch(item)
  918. {
  919. case 0:
  920. {
  921. new koszt = 4000;
  922. if (kasa_gracza<koszt)
  923. {
  924. ColorChat(id,GREEN,"[Shop]^x01 Nincs eleg Penzed.");
  925. return PLUGIN_CONTINUE;
  926. }
  927. if(hp >= maksymalne_zdrowie_gracza[id])
  928. {
  929. ColorChat(id,GREEN,"[Shop]^x01 parancsolj.");
  930. return PLUGIN_CONTINUE;
  931. }
  932. cs_set_user_money(id, kasa_gracza-koszt);
  933. new ammount=20;
  934. new nowe_zdrowie = (hp+ammount<maksymalne_zdrowie_gracza[id])? hp+ammount: maksymalne_zdrowie_gracza[id];
  935. set_user_health(id, nowe_zdrowie);
  936. ColorChat(id,GREEN,"[Shop]^x01 Sajnalak");
  937. }
  938. case 1:
  939. {
  940. new koszt = 10000;
  941. if (kasa_gracza<koszt)
  942. {
  943. ColorChat(id,GREEN,"[Shop]^x01 Nincs Penzedra.");
  944. return PLUGIN_CONTINUE;
  945. }
  946. if(hp >= maksymalne_zdrowie_gracza[id])
  947. {
  948. ColorChat(id,GREEN,"[Shop]^x01 parancsolj");
  949. return PLUGIN_CONTINUE;
  950. }
  951. cs_set_user_money(id, kasa_gracza-koszt);
  952. new ammount=50;
  953. new nowe_zdrowie = (hp+ammount<maksymalne_zdrowie_gracza[id])? hp+ammount: maksymalne_zdrowie_gracza[id];
  954. set_user_health(id, nowe_zdrowie);
  955. ColorChat(id,GREEN,"[Shop]^x01 Nincs eleg erre");
  956. }
  957. case 2:
  958. {
  959. new koszt = 15000;
  960. if (kasa_gracza<koszt)
  961. {
  962. ColorChat(id,GREEN,"[Shop]^x01 Nincs eleg Penzed erre.");
  963. return PLUGIN_CONTINUE;
  964. }
  965. if(hp >= maksymalne_zdrowie_gracza[id])
  966. {
  967. ColorChat(id,GREEN,"[Shop]^x01 Parancsolj.");
  968. return PLUGIN_CONTINUE;
  969. }
  970. cs_set_user_money(id, kasa_gracza-koszt);
  971. new ammount=100;
  972. new nowe_zdrowie = (hp+ammount<maksymalne_zdrowie_gracza[id])? hp+ammount: maksymalne_zdrowie_gracza[id];
  973. set_user_health(id, nowe_zdrowie);
  974. ColorChat(id,GREEN,"[Shop]^x01 Nincs eleg erre");
  975. }
  976. case 3:
  977. {
  978. new koszt = 16000;
  979. if (kasa_gracza<koszt)
  980. {
  981. ColorChat(id,GREEN,"[Shop]^x01 Nincs Penzed erre.");
  982. return PLUGIN_CONTINUE;
  983. }
  984. if(hp >= maksymalne_zdrowie_gracza[id])
  985. {
  986. ColorChat(id,GREEN,"[Shop]^x01 Parancsolj.");
  987. return PLUGIN_CONTINUE;
  988. }
  989. cs_set_user_money(id, kasa_gracza-koszt);
  990. new ammount=250;
  991. new nowe_zdrowie = (hp+ammount<maksymalne_zdrowie_gracza[id])? hp+ammount: maksymalne_zdrowie_gracza[id];
  992. set_user_health(id, nowe_zdrowie);
  993. ColorChat(id,GREEN,"[Shop]^x01 Nincs eleg erre");
  994. }
  995. case 4:
  996. {
  997. new koszt = 3000;
  998. if (kasa_gracza<koszt)
  999. {
  1000. ColorChat(id,RED,"[Shop]^x01 Nincs eleg erre!!");
  1001. return PLUGIN_HANDLED;
  1002. }
  1003. else if (kasa_gracza >= koszt)
  1004. {
  1005. cs_set_user_money(id, kasa_gracza-koszt);
  1006. DajPrzedmiot(id, random_num(1, sizeof nazwy_przedmiotow-1));
  1007. }
  1008. }
  1009. case 5:
  1010. {
  1011. new jego_wytrzymalosc = wytrzymalosc_itemu[id]
  1012. new koszt= 9000
  1013. new ilosc_wytrzy = 80
  1014.  
  1015. if(kasa_gracza < koszt)
  1016. {
  1017. ColorChat(id, RED, "[COD:MW3]^x04 Sajnalom nincs eleg penzed ^x03 %d.", koszt);
  1018. }
  1019. else if(kasa_gracza >= koszt && jego_wytrzymalosc < 81)
  1020. {
  1021. cs_set_user_money(id, kasa_gracza -= koszt)
  1022. wytrzymalosc_itemu[id] += ilosc_wytrzy
  1023. ColorChat(id, RED, "[COD:MW3] ^x04 kaptal %d enyi eletet ", ilosc_wytrzy);
  1024. }
  1025. else if(jego_wytrzymalosc >= 81)
  1026. {
  1027. ColorChat(id, RED, "[COD:MW3] ^x04 Bruumm DIkk!");
  1028. }
  1029. }
  1030. case 6:
  1031. {
  1032. new koszt = 2500
  1033. if(kasa_gracza < koszt)
  1034. {
  1035. ColorChat(id, RED, "[COD:MW3] ^x04 Sajnalom nincs eleg penzed enyit kene %d $.", koszt)
  1036. }
  1037. else if(kasa_gracza >= koszt)
  1038. {
  1039. cs_set_user_money(id, kasa_gracza -= koszt)
  1040. give_item(id, "weapon_hegrenade");
  1041. give_item(id, "weapon_flashbang");
  1042. give_item(id, "weapon_smokegrenade");
  1043. ColorChat(id, GREEN, "^x04 [COD:MW3] ^x04 Ezek mind Granatok")
  1044. }
  1045. }
  1046. case 7:
  1047. {
  1048. new koszt = 12000
  1049. if(kasa_gracza < koszt)
  1050. {
  1051. ColorChat(id, RED, "[COD:MW3] ^x04 Sajna nincs penzed gyujtsel enyit : %d.", koszt)
  1052. }
  1053. else if(kasa_gracza >= koszt)
  1054. {
  1055. cs_set_user_money(id, kasa_gracza -= koszt)
  1056. give_item(id, "weapon_m4a1");
  1057. give_item(id, "weapon_awp");
  1058. give_item(id, "weapon_deagle");
  1059. ColorChat(id, GREEN, "^x04 [COD:MW3] ^x04 Parancsolj a fegyo pached!")
  1060. }
  1061. }
  1062. case 8:
  1063. {
  1064. new koszt = 2000
  1065. if(kasa_gracza < koszt)
  1066. {
  1067. ColorChat(id, RED, "[COD:MW3] ^x04 Sajnalom nincs eleg penzed")
  1068. }
  1069. else if(kasa_gracza >= koszt)
  1070. {
  1071. cs_set_user_money(id, kasa_gracza -= koszt)
  1072. new exp = random_num(50, 200);
  1073. ColorChat(id, RED, "[COD:MW3] ^x04 Parancsoj Itt az EXP-d", exp)
  1074. doswiadczenie_gracza[id] += exp;
  1075. }
  1076. }
  1077. case 9:
  1078. {
  1079. new koszt = 4000
  1080. if(kasa_gracza < koszt)
  1081. {
  1082. ColorChat(id, RED, "[COD:MW3] ^x04 Sajnalom nincs eleg penzed.")
  1083. }
  1084. else if(kasa_gracza >= koszt)
  1085. {
  1086. cs_set_user_money(id, kasa_gracza -= koszt)
  1087. new exp = random_num(200, 500);
  1088. ColorChat(id, RED, "[COD:MW3] ^x04 Parancsoj Itt az EXP-d", exp)
  1089. doswiadczenie_gracza[id] += exp;
  1090. }
  1091. }
  1092. case 10:
  1093. {
  1094. new koszt = 8000
  1095. if(kasa_gracza < koszt)
  1096. {
  1097. ColorChat(id, RED, "[COD:MW3] ^x04 Sajnalom nincs eleg penzed.")
  1098. }
  1099. else if(kasa_gracza >= koszt)
  1100. {
  1101. cs_set_user_money(id, kasa_gracza -= koszt)
  1102. new exp = random_num(500, 1000);
  1103. ColorChat(id, RED, "[COD:MW3] ^x04 Parancsoj Itt az EXP-d", exp)
  1104. doswiadczenie_gracza[id] += exp;
  1105. }
  1106. }
  1107. case 11:
  1108. {
  1109. new koszt = 16000
  1110. if(kasa_gracza < koszt)
  1111. {
  1112. ColorChat(id, RED, "[COD:MW3] ^x04 Sajnalom nincs eleg penzed.")
  1113. }
  1114. else if(kasa_gracza >= koszt)
  1115. {
  1116. cs_set_user_money(id, kasa_gracza -= koszt)
  1117. new exp = random_num(1000, 5000);
  1118. ColorChat(id, RED, "[COD:MW3]Parancsolj az exp-d", exp)
  1119. doswiadczenie_gracza[id] += exp;
  1120. }
  1121. }
  1122. case 12:
  1123. {
  1124. new koszt = 10000;
  1125. if (kasa_gracza<koszt)
  1126. {
  1127. ColorChat(id,GREEN,"[Shop]^x01 Sajnalom nincs eleg penzed.");
  1128. return PLUGIN_CONTINUE;
  1129. }
  1130. ilosc_min_gracza[id] +=2;
  1131. ColorChat(id,GREEN,"[Shop]^x01 Parancsolj 2 akna-t");
  1132. cs_set_user_money(id, kasa_gracza -= koszt)
  1133. }
  1134. case 13:
  1135. {
  1136. new koszt = 10000;
  1137. if (kasa_gracza<koszt)
  1138. {
  1139. ColorChat(id,GREEN,"[Shop]^x01 Sajnalom nincs eleg penzed.");
  1140. return PLUGIN_CONTINUE;
  1141. }
  1142. ilosc_dynamitow_gracza[id] +=2;
  1143. ColorChat(id,GREEN,"[Shop]^x01 Tesek parancsoj 2 dyanmit");
  1144. cs_set_user_money(id, kasa_gracza -= koszt)
  1145. }
  1146. case 14:
  1147. {
  1148. new koszt = 10000;
  1149. if (kasa_gracza<koszt)
  1150. {
  1151. ColorChat(id,GREEN,"[Shop]^x01 Sajnalom nincs eleg penzed.");
  1152. return PLUGIN_CONTINUE;
  1153. }
  1154. ilosc_rakiet_gracza[id] +=2;
  1155. ColorChat(id,GREEN,"[Shop]^x01 Te kaptal 2db raketat");
  1156. cs_set_user_money(id, kasa_gracza -= koszt)
  1157. }
  1158. }
  1159.  
  1160. return PLUGIN_CONTINUE
  1161. }
  1162.  
  1163. public plugin_precache()
  1164. {
  1165. sprite_white = precache_model("sprites/white.spr")
  1166. sprite_blast = precache_model("sprites/dexplo.spr")
  1167.  
  1168. precache_sound("mw/select.wav")
  1169. precache_sound("mw/start.wav")
  1170. precache_sound("mw/start2.wav")
  1171. precache_sound("mw/levelup.wav")
  1172.  
  1173. precache_model("models/w_medkit.mdl")
  1174. precache_model("models/rpgrocket.mdl")
  1175. precache_model("models/mine.mdl")
  1176.  
  1177. precache_sound("weapons/mine_charge.wav")
  1178. precache_sound("weapons/mine_activate.wav")
  1179. precache_sound("weapons/mine_deploy.wav")
  1180.  
  1181. precache_sound(SOUND_START)
  1182. precache_sound(SOUND_FINISHED)
  1183. precache_sound(SOUND_FAILED)
  1184.  
  1185. /* --==[ KillStreak ]==-- */
  1186. cache_trail = precache_model("sprites/smoke.spr")
  1187. precache_model("models/p_hegrenade.mdl");
  1188. precache_model("models/cod_carepackage.mdl")
  1189. precache_model("models/cod_plane.mdl")
  1190. precache_model("models/cod_predator.mdl")
  1191. precache_sound("mw/jet_fly1.wav")
  1192. precache_sound("mw/nuke_give.wav")
  1193. precache_sound("mw/emp_effect.wav")
  1194. precache_sound("mw/counter_enemy.wav")
  1195. precache_sound("mw/air_give.wav")
  1196. precache_sound("mw/predator_give.wav")
  1197. precache_sound("mw/emp_give.wav")
  1198. precache_sound("mw/uav_give.wav")
  1199. /* --==[ KillStreak ]==-- */
  1200.  
  1201. precache_model("models/player/extreme/extreme.mdl");
  1202. }
  1203.  
  1204. public CmdStart(id, uc_handle)
  1205. {
  1206. if(!is_user_alive(id))
  1207. {
  1208. return FMRES_IGNORED
  1209. }
  1210.  
  1211. if(zatrzymaj_czas && zatrzymaj_czas != id)
  1212. {
  1213. entity_set_vector(id, EV_VEC_velocity, Float:{0.0, 0.0, 0.0});
  1214. entity_set_vector(id, EV_VEC_v_angle, Float:{0.0, 0.0, 0.0});
  1215. entity_set_vector(id, EV_VEC_angles, Float:{0.0, 0.0, 0.0});
  1216. entity_set_int(id, EV_INT_fixangle, 1);
  1217. set_pdata_float(id, 83, 0.1, 5);
  1218. set_uc(uc_handle, UC_Buttons, 0);
  1219. new name[55];
  1220. get_user_name(zatrzymaj_czas, name, 54);
  1221. client_print(id, print_center, "%s A többi ido az o persze 3 sec.", name);
  1222. }
  1223.  
  1224. new button = get_uc(uc_handle, UC_Buttons);
  1225. new oldbutton = get_user_oldbutton(id);
  1226. new flags = get_entity_flags(id);
  1227.  
  1228. if(informacje_przedmiotu_gracza[id][0] == 11 || klasa_gracza[id] == Rambo)
  1229. {
  1230. if((button & IN_JUMP) && !(flags & FL_ONGROUND) && !(oldbutton & IN_JUMP) && ilosc_skokow_gracza[id] > 0)
  1231. {
  1232. ilosc_skokow_gracza[id]--;
  1233. new Float:velocity[3];
  1234. entity_get_vector(id,EV_VEC_velocity,velocity);
  1235. velocity[2] = random_float(265.0,285.0);
  1236. entity_set_vector(id,EV_VEC_velocity,velocity);
  1237. }
  1238. else if(flags & FL_ONGROUND)
  1239. {
  1240. ilosc_skokow_gracza[id] = 0
  1241.  
  1242. if(informacje_przedmiotu_gracza[id][0] == 11)
  1243. {
  1244. ilosc_skokow_gracza[id]++
  1245. }
  1246.  
  1247. if(klasa_gracza[id] == Rambo)
  1248. {
  1249. ilosc_skokow_gracza[id]++
  1250. }
  1251. }
  1252. }
  1253.  
  1254. if(informacje_przedmiotu_gracza[id][0] == 48)
  1255. {
  1256. if(button & IN_DUCK)
  1257. {
  1258. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 8)
  1259. }
  1260. else
  1261. {
  1262. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255)
  1263. }
  1264. }
  1265.  
  1266. if(button & IN_ATTACK2 && !(pev(id, pev_oldbuttons) & IN_ATTACK2) && informacje_przedmiotu_gracza[id][0] == 63)
  1267. {
  1268. new szClip, szAmmo
  1269. new WeapID = get_user_weapon( id, szClip, szAmmo )
  1270.  
  1271. if(WeapID != CSW_KNIFE && WeapID != CSW_C4 && WeapID != CSW_AWP && WeapID != CSW_SCOUT && WeapID != CSW_SG550 && WeapID != CSW_G3SG1 && !hasZoom[id])
  1272. {
  1273. hasZoom[id] = true;
  1274. cs_set_user_zoom(id, CS_SET_FIRST_ZOOM, 1);
  1275. emit_sound(id, CHAN_ITEM, "weapons/zoom.wav", 0.20, 2.40, 0, 100);
  1276. }
  1277.  
  1278. else if (hasZoom[id])
  1279. {
  1280. hasZoom[id] = false;
  1281. cs_set_user_zoom(id, CS_RESET_ZOOM, 0);
  1282. }
  1283. }
  1284.  
  1285. if(button & IN_ATTACK)
  1286. {
  1287. new Float:punchangle[3];
  1288.  
  1289. if(informacje_przedmiotu_gracza[id][0] == 20)
  1290. entity_set_vector(id, EV_VEC_punchangle, punchangle);
  1291. if(informacje_przedmiotu_gracza[id][0] == 23)
  1292. {
  1293. entity_get_vector(id, EV_VEC_punchangle, punchangle);
  1294. for(new i=0; i<3;i++)
  1295. punchangle[i]*=0.9;
  1296. entity_set_vector(id, EV_VEC_punchangle, punchangle);
  1297. }
  1298.  
  1299. if(informacje_przedmiotu_gracza[id][0] == 70)
  1300. {
  1301. entity_get_vector(id, EV_VEC_punchangle, punchangle);
  1302. for(new i=0; i<3;i++)
  1303. punchangle[i]*=1.1;
  1304. entity_set_vector(id, EV_VEC_punchangle, punchangle);
  1305. }
  1306. }
  1307.  
  1308. if(informacje_przedmiotu_gracza[id][0] == 28 && button & IN_JUMP && button & IN_DUCK && flags & FL_ONGROUND && get_gametime() > informacje_przedmiotu_gracza[id][1]+4.0)
  1309. {
  1310. informacje_przedmiotu_gracza[id][1] = floatround(get_gametime())
  1311. new Float:velocity[3]
  1312. VelocityByAim(id, 700, velocity)
  1313. velocity[2] = random_float(265.0,285.0)
  1314. entity_set_vector(id, EV_VEC_velocity, velocity)
  1315. }
  1316.  
  1317. new clip, ammo, weapon = get_user_weapon(id, clip, ammo);
  1318.  
  1319. if(maxClip[weapon] == -1 || !ammo)
  1320. {
  1321. return FMRES_IGNORED
  1322. }
  1323.  
  1324. if(informacje_przedmiotu_gracza[id][0] == 77 && ((button & IN_RELOAD && !(oldbutton & IN_RELOAD) && !(button & IN_ATTACK)) || !clip))
  1325. {
  1326. cs_set_user_bpammo(id, weapon, ammo-(maxClip[weapon]-clip));
  1327. new new_ammo = min(clip+ammo, maxClip[weapon]);
  1328. set_user_clip(id, new_ammo);
  1329. }
  1330.  
  1331. return FMRES_IGNORED
  1332. }
  1333.  
  1334. public Odrodzenie(id)
  1335. {
  1336. if(!is_user_alive(id) || !is_user_connected(id))
  1337. return PLUGIN_CONTINUE;
  1338.  
  1339. if(nowa_klasa_gracza[id])
  1340. {
  1341. klasa_gracza[id] = nowa_klasa_gracza[id];
  1342. nowa_klasa_gracza[id] = 0;
  1343. strip_user_weapons(id);
  1344. give_item(id, "weapon_knife");
  1345. switch(get_user_team(id))
  1346. {
  1347. case 1: give_item(id, "weapon_glock18");
  1348. case 2: give_item(id, "weapon_usp");
  1349. }
  1350. WczytajDane(id, klasa_gracza[id]);
  1351. }
  1352.  
  1353. if(!klasa_gracza[id])
  1354. {
  1355. WybierzKlase(id);
  1356. return PLUGIN_CONTINUE;
  1357. }
  1358. switch(klasa_gracza[id])
  1359. {
  1360. case Snajperista:
  1361. {
  1362. give_item(id, "weapon_m4a1");
  1363. give_item(id, "weapon_ak47");
  1364. give_item(id, "weapon_deagle");
  1365. ilosc_dynamitow_gracza[id] = 1
  1366.  
  1367. }
  1368. case Marinac:
  1369. {
  1370. give_item(id, "weapon_deagle");
  1371. }
  1372. case ProStrelac:
  1373. {
  1374. give_item(id, "weapon_tmp");
  1375. give_item(id, "weapon_mp5navy");
  1376. ilosc_dynamitow_gracza[id] = 3
  1377. }
  1378. case Mitraljezac:
  1379. {
  1380. give_item(id, "weapon_galil");
  1381. ilosc_dynamitow_gracza[id] = 3
  1382. }
  1383. case Doktor:
  1384. {
  1385. give_item(id, "weapon_g3sg1")
  1386. give_item(id, "weapon_usp")
  1387. give_item(id, "weapon_m249")
  1388. ilosc_rakiet_gracza[id] = 1;
  1389. }
  1390. case VatrenaPodrska:
  1391. {
  1392. give_item(id, "weapon_elites");
  1393. give_item(id, "weapon_p90");
  1394. ilosc_rakiet_gracza[id] = 2;
  1395. }
  1396. case Miner:
  1397. {
  1398. give_item(id, "weapon_famas");
  1399. ilosc_rakiet_gracza[id] = 3;
  1400. }
  1401. case Demolitions:
  1402. {
  1403. give_item(id, "weapon_sg552");
  1404. give_item(id, "weapon_mac10");
  1405. give_item(id, "weapon_awp");
  1406. ilosc_min_gracza[id] = 1
  1407. }
  1408. case Rusher:
  1409. {
  1410. give_item(id, "weapon_m4a1");
  1411. give_item(id, "weapon_scout");
  1412. ilosc_min_gracza[id] = 2
  1413. }
  1414. case Rambo:
  1415. {
  1416. give_item(id, "weapon_xm1014");
  1417. ilosc_min_gracza[id] = 3
  1418. }
  1419. case Revolveras:
  1420. {
  1421. give_item(id, "weapon_smokegrenade");
  1422. give_item(id, "weapon_flashbang");
  1423. give_item(id, "weapon_ak47");
  1424. }
  1425. case Bombarder:
  1426. {
  1427. give_item(id, "weapon_smokegrenade");
  1428. give_item(id, "weapon_m4a1");
  1429. }
  1430. case Strelac:
  1431. {
  1432. give_item(id, "weapon_m249");
  1433. ilosc_dynamitow_gracza[id] = 1
  1434. }
  1435. case Informator:
  1436. {
  1437. give_item(id, "weapon_mp5");
  1438. give_item(id, "weapon_m4a1");
  1439. give_item(id, "weapon_hegrenade");
  1440. }
  1441. case Pukovnik:
  1442. {
  1443. give_item(id, "weapon_ak47");
  1444. }
  1445. case Pobunjenik:
  1446. {
  1447. give_item(id, "weapon_deagle");
  1448. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 65);
  1449. }
  1450. case SerijskiUbica:
  1451. {
  1452. give_item(id, "weapon_hegrenade");
  1453. give_item(id, "weapon_smokegrenade");
  1454. give_item(id, "weapon_flashbang");
  1455. give_item(id, "weapon_famas");
  1456. }
  1457. case Desetar:
  1458. {
  1459. give_item(id, "weapon_ak47");
  1460. give_item(id, "weapon_hegrenade");
  1461. give_item(id, "weapon_m4a1");
  1462.  
  1463. }
  1464. case Vodnik:
  1465. {
  1466. give_item(id, "weapon_m4a1");
  1467. give_item(id, "weapon_deagle");
  1468.  
  1469. }
  1470. case Kamikaza:
  1471. {
  1472. give_item(id, "weapon_usp");
  1473. }
  1474. case Assassin:
  1475. {
  1476. give_item(id, "weapon_deagle");
  1477. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 0);
  1478. }
  1479. case Major:
  1480. {
  1481. give_item(id, "weapon_deagle");
  1482. give_item(id, "weapon_ak47");
  1483. }
  1484. case Kapetan:
  1485. {
  1486. give_item(id, "weapon_aug");
  1487. }
  1488. case Potpukovnik:
  1489. {
  1490. give_item(id, "weapon_awp");
  1491. give_item(id, "weapon_deagle");
  1492. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 55);
  1493. }
  1494. case Marsal:
  1495. {
  1496. give_item(id, "weapon_deagle");
  1497. }
  1498. case NemackiStrelac:
  1499. {
  1500. give_item(id, "weapon_ak47");
  1501. ilosc_rakiet_gracza[id] = 2;
  1502. }
  1503. case RuskiPukovnik:
  1504. {
  1505. give_item(id, "weapon_m4a1");
  1506. ilosc_min_gracza[id] = 1
  1507. }
  1508. case PoljskaPesadija:
  1509. {
  1510. give_item(id, "weapon_mp5navy");
  1511. ilosc_dynamitow_gracza[id] = 2
  1512. }
  1513. case Mornar:
  1514. {
  1515. give_item(id, "weapon_mac10");
  1516. ilosc_min_gracza[id] = 2
  1517. }
  1518. case Napadac:
  1519. {
  1520. give_item(id, "weapon_famas");
  1521. give_item(id, "weapon_p90");
  1522. ilosc_dynamitow_gracza[id] = 3
  1523. }
  1524. case Legija:
  1525. {
  1526. give_item(id, "weapon_m4a1");
  1527. give_item(id, "weapon_sg552");
  1528. give_item(id, "weapon_deagle");
  1529. }
  1530. case Armageddon:
  1531. {
  1532. give_item(id, "weapon_ak47");
  1533. give_item(id, "weapon_aug");
  1534. give_item(id, "weapon_hegrenade");
  1535. ilosc_dynamitow_gracza[id] = 3
  1536. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 30);
  1537. }
  1538. case Samuraj:
  1539. {
  1540. give_item(id, "weapon_usp");
  1541. give_item(id, "weapon_deagle");
  1542. }
  1543. case RatkoMladic:
  1544. {
  1545. give_item(id, "weapon_m4a1");
  1546. give_item(id, "weapon_ak47");
  1547. give_item(id, "weapon_hegrenade");
  1548. give_item(id, "weapon_deagle");
  1549. ilosc_rakiet_gracza[id] = 2;
  1550. }
  1551. case SWAT:
  1552. {
  1553. give_item(id, "weapon_m4a1");
  1554. give_item(id, "weapon_usp");
  1555. give_item(id, "weapon_deagle");
  1556. }
  1557. case Partizan:
  1558. {
  1559. give_item(id, "weapon_p90");
  1560. give_item(id, "weapon_flashbang");
  1561. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 70);
  1562. }
  1563. case Gunner:
  1564. {
  1565. give_item(id, "weapon_g3sg1");
  1566. give_item(id, "weapon_deagle");
  1567. give_item(id, "weapon_hegrenade");
  1568. ilosc_rakiet_gracza[id] = 2;
  1569. }
  1570. case Cleric:
  1571. {
  1572. give_item(id, "weapon_ak47");
  1573. give_item(id, "weapon_elite");
  1574. ilosc_min_gracza[id] = 3
  1575. }
  1576. case General:
  1577. {
  1578. give_item(id, "weapon_m4a1");
  1579. give_item(id, "weapon_deagle");
  1580. ilosc_rakiet_gracza[id] = 4;
  1581. }
  1582. case Terminator:
  1583. {
  1584. give_item(id, "weapon_ak47");
  1585. give_item(id, "weapon_usp");
  1586. ilosc_rakiet_gracza[id] = 2;
  1587. }
  1588. case Slayer:
  1589. {
  1590. give_item(id, "weapon_famas");
  1591. give_item(id, "weapon_p90");
  1592. ilosc_rakiet_gracza[id] = 3;
  1593. }
  1594. case Zastavnik:
  1595. {
  1596. give_item(id, "weapon_p90");
  1597. give_item(id, "weapon_deagle");
  1598. ilosc_rakiet_gracza[id] = 2;
  1599. }
  1600. case Admiral:
  1601. {
  1602. give_item(id, "weapon_ak47");
  1603. give_item(id, "weapon_famas");
  1604. }
  1605. case Fighter:
  1606. {
  1607. give_item(id, "weapon_mac10");
  1608. give_item(id, "weapon_scout");
  1609. give_item(id, "weapon_usp");
  1610. ilosc_dynamitow_gracza[id] = 2
  1611. }
  1612. case Policajac:
  1613. {
  1614. give_item(id, "weapon_xm1014");
  1615. give_item(id, "weapon_tmp");
  1616. give_item(id, "weapon_fiveseven");
  1617.  
  1618. }
  1619. case Specijalac:
  1620. {
  1621. give_item(id, "weapon_famas");
  1622. give_item(id, "weapon_p228");
  1623. give_item(id, "weapon_m3");
  1624.  
  1625. }
  1626. case Predator:
  1627. {
  1628. give_item(id, "weapon_sg552");
  1629. give_item(id, "weapon_glock18");
  1630. give_item(id, "weapon_smokegrenade");
  1631.  
  1632. }
  1633. case NemackiOficir:
  1634. {
  1635. give_item(id, "weapon_p90");
  1636. give_item(id, "weapon_glock18");
  1637. give_item(id, "weapon_smokegrenade");
  1638. }
  1639. case Cetnik:
  1640. {
  1641. give_item(id, "weapon_ak47");
  1642. give_item(id, "weapon_hegrenade");
  1643. give_item(id, "weapon_hegrenade");
  1644. ilosc_dynamitow_gracza[id] = 2
  1645. }
  1646. case ProfVojnik:
  1647. {
  1648. give_item(id, "weapon_famas");
  1649. give_item(id, "weapon_usp");
  1650. ilosc_rakiet_gracza[id] = 2;
  1651. }
  1652. case Crysis:
  1653. {
  1654. give_item(id, "weapon_sg552");
  1655. give_item(id, "weapon_m4a1");
  1656. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 70);
  1657. }
  1658. case ProfStrelac:
  1659. {
  1660. give_item(id, "weapon_awp");
  1661. give_item(id, "weapon_m4a1");
  1662. ilosc_rakiet_gracza[id] = 2;
  1663. }
  1664. case Pijandura:
  1665. {
  1666. give_item(id, "weapon_ak47");
  1667. give_item(id, "weapon_mp5navy");
  1668. give_item(id, "weapon_deagle");
  1669. ilosc_dynamitow_gracza[id] = 2;
  1670. }
  1671. case EXTREME:
  1672. {
  1673. give_item(id, "weapon_ak47");
  1674. give_item(id, "weapon_m4a1");
  1675. give_item(id, "weapon_hegrenade");
  1676.  
  1677. }
  1678. case LIKEABOSS:
  1679. {
  1680. give_item(id, "weapon_ak47");
  1681. give_item(id, "weapon_m4a1");
  1682. give_item(id, "weapon_hegrenade");
  1683. ilosc_rakiet_gracza[id] = 5;
  1684.  
  1685. }
  1686. case Makarov:
  1687. {
  1688. give_item(id, "weapon_m4a1");
  1689. give_item(id, "weapon_deagle");
  1690. ilosc_rakiet_gracza[id] = 2;
  1691.  
  1692. }
  1693. case SandMan:
  1694. {
  1695. give_item(id, "weapon_hegrenade");
  1696. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 3);
  1697.  
  1698. }
  1699. case ExtremeZone:
  1700. {
  1701. give_item(id, "weapon_ak47");
  1702. give_item(id, "weapon_m4a1");
  1703. give_item(id, "weapon_deagle");
  1704. ilosc_dynamitow_gracza[id] = 6;
  1705. cs_set_user_model(id, "extreme");
  1706. }
  1707.  
  1708. }
  1709.  
  1710. if(!informacje_przedmiotu_gracza[id][0] && klasa_gracza[id] != Partizan)
  1711. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 255);
  1712.  
  1713. if(punkty_gracza[id]>0)
  1714. set_task(1.0, "PrzydzielPunkty", id);
  1715.  
  1716. if(informacje_przedmiotu_gracza[id][0] == 61)
  1717. ilosc_min_gracza[id] += 5;
  1718.  
  1719. if(informacje_przedmiotu_gracza[id][0] == 78)
  1720. set_user_gravity(id, 0.5);
  1721.  
  1722. if(informacje_przedmiotu_gracza[id][0] == 62)
  1723. give_item(id, "weapon_galil");
  1724.  
  1725. if(informacje_przedmiotu_gracza[id][0] == 10 || informacje_przedmiotu_gracza[id][0] == 9 || informacje_przedmiotu_gracza[id][0] == 59 || informacje_przedmiotu_gracza[id][0] == 31)
  1726. give_item(id, "weapon_hegrenade");
  1727.  
  1728. if(informacje_przedmiotu_gracza[id][0] == 56)
  1729. give_item(id, "weapon_m4a1");
  1730.  
  1731. if(informacje_przedmiotu_gracza[id][0] == 57)
  1732. give_item(id, "weapon_ak47");
  1733.  
  1734. if(informacje_przedmiotu_gracza[id][0] == 89)
  1735. {
  1736. itemo[id]++
  1737. if(itemo[id] > 1)
  1738. UsunPrzedmiot(id);
  1739. }
  1740.  
  1741. if(informacje_przedmiotu_gracza[id][0] == 9 || informacje_przedmiotu_gracza[id][0] == 31 || informacje_przedmiotu_gracza[id][0] == 55 || informacje_przedmiotu_gracza[id][0] == 67)
  1742. ZmienUbranie(id, 0);
  1743.  
  1744. if(informacje_przedmiotu_gracza[id][0] == 67)
  1745. {
  1746. give_item(id, "weapon_usp");
  1747. give_item(id, "weapon_mp5navy");
  1748. }
  1749.  
  1750. if(informacje_przedmiotu_gracza[id][0] == 1 || informacje_przedmiotu_gracza[id][0] == 32 || informacje_przedmiotu_gracza[id][0] == 42 || informacje_przedmiotu_gracza[id][0] == 50 || informacje_przedmiotu_gracza[id][0] == 54 || informacje_przedmiotu_gracza[id][0] == 58 || informacje_przedmiotu_gracza[id][0] == 59)
  1751. set_user_footsteps(id, 1);
  1752. else
  1753. set_user_footsteps(id, 0);
  1754.  
  1755. if(informacje_przedmiotu_gracza[id][0] == 13)
  1756. give_item(id, "weapon_awp");
  1757.  
  1758. if(informacje_przedmiotu_gracza[id][0] == 33)
  1759. give_item(id, "weapon_m4a1");
  1760.  
  1761. if(informacje_przedmiotu_gracza[id][0] == 32)
  1762. {
  1763. give_item(id, "weapon_ak47");
  1764. give_item(id, "weapon_awp");
  1765. }
  1766. if(informacje_przedmiotu_gracza[id][0] == 53)
  1767. {
  1768. give_item(id, "weapon_deagle");
  1769. give_item(id, "weapon_awp");
  1770. }
  1771. if(informacje_przedmiotu_gracza[id][0] == 33)
  1772. give_item(id, "weapon_m4a1");
  1773.  
  1774. if(informacje_przedmiotu_gracza[id][0] == 34)
  1775. give_item(id, "weapon_deagle");
  1776.  
  1777. if(informacje_przedmiotu_gracza[id][0] == 35)
  1778. give_item(id, "weapon_m3");
  1779.  
  1780. if(informacje_przedmiotu_gracza[id][0] == 55)
  1781. give_item(id, "weapon_scout");
  1782.  
  1783. if(informacje_przedmiotu_gracza[id][0] == 60)
  1784. give_item(id, "weapon_m4a1");
  1785.  
  1786. if(informacje_przedmiotu_gracza[id][0] == 19)
  1787. informacje_przedmiotu_gracza[id][1] = 1;
  1788.  
  1789. if(informacje_przedmiotu_gracza[id][0] == 84 || informacje_przedmiotu_gracza[id][0] == 75 || informacje_przedmiotu_gracza[id][0] == 76 || informacje_przedmiotu_gracza[id][0] == 45 || informacje_przedmiotu_gracza[id][0] == 87)
  1790. informacje_przedmiotu_gracza[id][1] = 1;
  1791.  
  1792. if(informacje_przedmiotu_gracza[id][0] == 27)
  1793. informacje_przedmiotu_gracza[id][1] = 3;
  1794.  
  1795. if(informacje_przedmiotu_gracza[id][0] == 38)
  1796. ilosc_apteczek_gracza[id] = 5;
  1797.  
  1798.  
  1799. if(informacje_przedmiotu_gracza[id][0] == 54)
  1800. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 1);
  1801.  
  1802. if(informacje_przedmiotu_gracza[id][0] == 36)
  1803. set_user_rendering(id, kRenderFxGlowShell, 0, 255, 0, kRenderGlow, 30);
  1804.  
  1805.  
  1806. new weapons[32];
  1807. new weaponsnum;
  1808. get_user_weapons(id, weapons, weaponsnum);
  1809. for(new i=0; i<weaponsnum; i++)
  1810. if(is_user_alive(id))
  1811. if(maxAmmo[weapons[i]] > 0)
  1812. cs_set_user_bpammo(id, weapons[i], maxAmmo[weapons[i]]);
  1813.  
  1814. redukcja_obrazen_gracza[id] = (47.3057*(1.0-floatpower( 2.7182, -0.06798*float(wytrzymalosc_gracza[id])))/100);
  1815. maksymalne_zdrowie_gracza[id] = zdrowie_klasy[klasa_gracza[id]]+zdrowie_gracza[id]*2;
  1816. szybkosc_gracza[id] = 250*szybkosc_klasy[klasa_gracza[id]]+floatround(kondycja_gracza[id]*1.3);
  1817.  
  1818. if(informacje_przedmiotu_gracza[id][0] == 82)
  1819. {
  1820. maksymalne_zdrowie_gracza[id] = 25;
  1821. set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 1)
  1822. }
  1823.  
  1824. if(informacje_przedmiotu_gracza[id][0] == 83)
  1825. {
  1826. maksymalne_zdrowie_gracza[id] = 90;
  1827. set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 15)
  1828. }
  1829.  
  1830. if(informacje_przedmiotu_gracza[id][0] == 80)
  1831. {
  1832. maksymalne_zdrowie_gracza[id] += informacje_przedmiotu_gracza[id][1];
  1833. give_item(id, "weapon_m3");
  1834. }
  1835.  
  1836. if(informacje_przedmiotu_gracza[id][0] == 70 || informacje_przedmiotu_gracza[id][0] == 50 || informacje_przedmiotu_gracza[id][0] == 71 || informacje_przedmiotu_gracza[id][0] == 37 || informacje_przedmiotu_gracza[id][0] == 42 || informacje_przedmiotu_gracza[id][0] == 18 || informacje_przedmiotu_gracza[id][0] == 30)
  1837. maksymalne_zdrowie_gracza[id] += 100;
  1838.  
  1839. if(informacje_przedmiotu_gracza[id][0] == 18)
  1840. szybkosc_gracza[id] -= 0.4;
  1841.  
  1842. if(informacje_przedmiotu_gracza[id][0] == 29)
  1843. {
  1844. maksymalne_zdrowie_gracza[id] += 50;
  1845. szybkosc_gracza[id] += 0.2;
  1846. }
  1847. if(informacje_przedmiotu_gracza[id][0] == 36)
  1848. maksymalne_zdrowie_gracza[id] = 10;
  1849.  
  1850. if(informacje_przedmiotu_gracza[id][0] == 39)
  1851. set_user_gravity(id, 0.5);
  1852.  
  1853. if(informacje_przedmiotu_gracza[id][0] == 54)
  1854. set_user_gravity(id, 0.8);
  1855.  
  1856. if(informacje_przedmiotu_gracza[id][0] == 30)
  1857. szybkosc_gracza[id] -= 20;
  1858.  
  1859. if(informacje_przedmiotu_gracza[id][0] == 25)
  1860. {
  1861. maksymalne_zdrowie_gracza[id] += 50;
  1862. szybkosc_gracza[id] -= 0.3;
  1863. }
  1864. if(informacje_przedmiotu_gracza[id][0] == 54)
  1865. maksymalne_zdrowie_gracza[id] = 1;
  1866.  
  1867. if(informacje_przedmiotu_gracza[id][0] == 50)
  1868. szybkosc_gracza[id] += 10;
  1869.  
  1870. if(informacje_przedmiotu_gracza[id][0] == 43)
  1871. szybkosc_gracza[id] += 20;
  1872.  
  1873. if(informacje_przedmiotu_gracza[id][0] == 44)
  1874. maksymalne_zdrowie_gracza[id] += 70;
  1875.  
  1876. if(informacje_przedmiotu_gracza[id][0] == 49)
  1877. informacje_przedmiotu_gracza[id][1] = 1;
  1878.  
  1879. if(informacje_przedmiotu_gracza[id][0] == 52)
  1880. informacje_przedmiotu_gracza[id][1] = 1;
  1881.  
  1882. if(informacje_przedmiotu_gracza[id][0] == 79)
  1883. ilosc_min_gracza[id] += 3;
  1884.  
  1885. if(informacje_przedmiotu_gracza[id][0] == 88)
  1886. maksymalne_zdrowie_gracza[id] *= 2;
  1887.  
  1888. set_user_armor(id, pancerz_klasy[klasa_gracza[id]]);
  1889. set_user_health(id, maksymalne_zdrowie_gracza[id]);
  1890. if(informacje_przedmiotu_gracza[id][0] == 17)
  1891. set_user_armor(id, 500);
  1892.  
  1893. if(informacje_przedmiotu_gracza[id][0] == 46)
  1894. set_user_armor(id, 500);
  1895.  
  1896. if(informacje_przedmiotu_gracza[id][0] == 64)
  1897. cs_set_user_money(id,16000);
  1898.  
  1899.  
  1900. return PLUGIN_CONTINUE;
  1901. }
  1902.  
  1903. public PoczatekRundy()
  1904. {
  1905. freezetime = false;
  1906. for(new id=0;id<=32;id++)
  1907. {
  1908. if(!is_user_alive(id))
  1909. continue;
  1910.  
  1911. set_task(0.1, "UstawSzybkosc", id+ZADANIE_USTAW_SZYBKOSC);
  1912.  
  1913. switch(get_user_team(id))
  1914. {
  1915. case 1: client_cmd(id, "spk mw/start");
  1916. case 2: client_cmd(id, "spk mw/start2");
  1917. }
  1918. }
  1919.  
  1920. round++;
  1921. new players[32], player, pnum;
  1922. get_players(players, pnum, "a");
  1923. for(new i = 0; i < pnum; i++)
  1924. {
  1925. player = players[i];
  1926. if(is_user_connected(player) && get_user_flags(player) & ADMIN_LEVEL_H)
  1927. {
  1928. if(!get_pcvar_num(g_menu_active))
  1929. return PLUGIN_CONTINUE
  1930. if(!is_user_hltv(player) && !is_user_bot(player))
  1931. {
  1932. give_item(player, "weapon_hegrenade");
  1933. give_item(player, "weapon_flashbang");
  1934. give_item(player, "weapon_flashbang");
  1935. give_item(player, "weapon_smokegrenade");
  1936. give_item(player, "item_assaultsuit");
  1937. give_item(player, "item_thighpack");
  1938. }
  1939. if(round > 3) Showrod(player)
  1940. }
  1941. }
  1942. return PLUGIN_HANDLED;
  1943. }
  1944.  
  1945. public NowaRunda()
  1946. {
  1947. NowaRunda_magnet();
  1948. freezetime = true;
  1949. new iEnt = find_ent_by_class(-1, "Mine");
  1950. while(iEnt > 0)
  1951. {
  1952. remove_entity(iEnt);
  1953. iEnt = find_ent_by_class(iEnt, "Mine");
  1954. }
  1955. }
  1956.  
  1957. public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
  1958. {
  1959. if(!is_user_alive(this) || !is_user_connected(this) || informacje_przedmiotu_gracza[this][0] == 24 || !is_user_connected(idattacker) || get_user_team(this) == get_user_team(idattacker) || !klasa_gracza[idattacker])
  1960. return HAM_IGNORED;
  1961.  
  1962. new health = get_user_health(this);
  1963. new weapon = get_user_weapon(idattacker);
  1964.  
  1965. if(health < 2)
  1966. return HAM_IGNORED;
  1967.  
  1968. if(informacje_przedmiotu_gracza[this][0] == 27 && informacje_przedmiotu_gracza[this][1]>0)
  1969. {
  1970. informacje_przedmiotu_gracza[this][1]--;
  1971. return HAM_SUPERCEDE;
  1972. }
  1973.  
  1974. if(informacje_przedmiotu_gracza[this][0] == 83)
  1975. damage -= floatmin(damage, 5.0);
  1976.  
  1977. if(informacje_przedmiotu_gracza[idattacker][0] == 81)
  1978. damage += 20.0;
  1979.  
  1980. if(informacje_przedmiotu_gracza[idattacker][0] == 30)
  1981. damage += 20.0;
  1982.  
  1983. if(informacje_przedmiotu_gracza[this][0] == 81)
  1984. damage -= floatmin(damage, 10.0);
  1985.  
  1986. if(informacje_przedmiotu_gracza[idattacker][0] == 79)
  1987. damage += 15.0;
  1988.  
  1989. if(informacje_przedmiotu_gracza[this][0] == 70)
  1990. damage -= floatmin(damage, 10.0);
  1991.  
  1992. if(wytrzymalosc_gracza[this]>0)
  1993. damage -= redukcja_obrazen_gracza[this]*damage;
  1994.  
  1995. if(informacje_przedmiotu_gracza[this][0] == 2 || informacje_przedmiotu_gracza[this][0] == 3)
  1996. damage-=(float(informacje_przedmiotu_gracza[this][1])<damage)? float(informacje_przedmiotu_gracza[this][1]): damage;
  1997.  
  1998. if(informacje_przedmiotu_gracza[idattacker][0] == 5 && !UTIL_In_FOV(this, idattacker) && UTIL_In_FOV(idattacker, this))
  1999. damage*=2.0;
  2000.  
  2001. if(informacje_przedmiotu_gracza[idattacker][0] == 10)
  2002. damage+=informacje_przedmiotu_gracza[idattacker][1];
  2003.  
  2004. if(informacje_przedmiotu_gracza[this][0] == 12)
  2005. damage-=(5.0<damage)? 5.0: damage;
  2006.  
  2007. if(informacje_przedmiotu_gracza[this][0] == 29)
  2008. damage-=(10.0<damage)? 10.0: damage;
  2009.  
  2010. if(informacje_przedmiotu_gracza[this][0] == 43)
  2011. damage-=(10.0<damage)? 10.0: damage;
  2012.  
  2013. if(informacje_przedmiotu_gracza[this][0] == 51)
  2014. damage-=(7.0<damage)? 7.0: damage;
  2015.  
  2016. if(weapon == CSW_AWP && informacje_przedmiotu_gracza[idattacker][0] == 13)
  2017. damage=float(health);
  2018.  
  2019. if(informacje_przedmiotu_gracza[idattacker][0] == 21)
  2020. damage+=10;
  2021.  
  2022. if(informacje_przedmiotu_gracza[idattacker][0] == 22)
  2023. damage+=20;
  2024.  
  2025. if(informacje_przedmiotu_gracza[idattacker][0] == 31)
  2026. damage+=25;
  2027.  
  2028. if(informacje_przedmiotu_gracza[idattacker][0] == 36)
  2029. damage+=9;
  2030.  
  2031. if(informacje_przedmiotu_gracza[idattacker][0] == 42)
  2032. damage+=8;
  2033.  
  2034. if(informacje_przedmiotu_gracza[idattacker][0] == 54)
  2035. damage+=30;
  2036.  
  2037. if(informacje_przedmiotu_gracza[idattacker][0] == 43)
  2038. damage+=10;
  2039.  
  2040. if(informacje_przedmiotu_gracza[idattacker][0] == 50)
  2041. damage+=10;
  2042.  
  2043. if(informacje_przedmiotu_gracza[idattacker][0] == 51)
  2044. damage+=5;
  2045.  
  2046. if(informacje_przedmiotu_gracza[idattacker][0] == 58)
  2047. damage+=20;
  2048.  
  2049. if(informacje_przedmiotu_gracza[idattacker][0] == 59)
  2050. damage+=15;
  2051.  
  2052. if(informacje_przedmiotu_gracza[idattacker][0] == 74 && damage >= 40.0)
  2053. client_cmd(this, "drop");
  2054.  
  2055. if(informacje_przedmiotu_gracza[idattacker][0] == 73)
  2056. set_user_health(idattacker, min(maksymalne_zdrowie_gracza[idattacker], get_user_health(idattacker)+floatround(damage)))
  2057.  
  2058. if(idinflictor != idattacker && entity_get_int(idinflictor, EV_INT_movetype) != 5)
  2059. {
  2060. if(informacje_przedmiotu_gracza[idattacker][0] == 10 || (informacje_przedmiotu_gracza[idattacker][0] == 9 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1))
  2061. damage = float(health);
  2062. }
  2063.  
  2064. if(weapon == CSW_SCOUT)
  2065. {
  2066. if((informacje_przedmiotu_gracza[idattacker][0] == 55 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1))
  2067. damage = float(health);
  2068. }
  2069.  
  2070. if(weapon == CSW_M4A1)
  2071. {
  2072. if((informacje_przedmiotu_gracza[idattacker][0] == 56 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1))
  2073. damage = float(health);
  2074. }
  2075.  
  2076. if(weapon == CSW_HEGRENADE)
  2077. {
  2078. if((klasa_gracza[idattacker] == RatkoMladic && random(2) == 1) || (klasa_gracza[idattacker] == LIKEABOSS) || (klasa_gracza[idattacker] == SandMan) || (klasa_gracza[idattacker] == ExtremeZone))
  2079. damage = float(health);
  2080. }
  2081.  
  2082. if(weapon == CSW_AWP)
  2083. {
  2084. if((klasa_gracza[idattacker] == RatkoMladic))
  2085. damage = float(health);
  2086. }
  2087.  
  2088. if(weapon == CSW_M4A1)
  2089. {
  2090. if((klasa_gracza[idattacker] == Makarov && !random(9)))
  2091. damage = float(health);
  2092. }
  2093.  
  2094. if(weapon == CSW_GALIL)
  2095. {
  2096. if((informacje_przedmiotu_gracza[idattacker][0] == 62 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1))
  2097. damage = float(health);
  2098. }
  2099.  
  2100. if(weapon == CSW_M4A1)
  2101. {
  2102. if((informacje_przedmiotu_gracza[idattacker][0] == 60 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1))
  2103. damage = float(health);
  2104. }
  2105.  
  2106. if(weapon == CSW_AK47)
  2107. {
  2108. if((informacje_przedmiotu_gracza[idattacker][0] == 57 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1))
  2109. damage = float(health);
  2110. }
  2111.  
  2112. if(weapon == CSW_KNIFE)
  2113. {
  2114. if(informacje_przedmiotu_gracza[this][0] == 4)
  2115. damage=damage*1.4+inteligencja_gracza[idattacker];
  2116. if(informacje_przedmiotu_gracza[idattacker][0] == 8 || (klasa_gracza[idattacker] == Snajperista && random(2) == 2) || klasa_gracza[idattacker] == Marinac && !(get_user_button(idattacker) & IN_ATTACK) || klasa_gracza[idattacker] == Assassin && !(get_user_button(idattacker) & IN_ATTACK) || klasa_gracza[idattacker] == Strelac && !(get_user_button(idattacker) & IN_ATTACK) || klasa_gracza[idattacker] == EXTREME && !(get_user_button(idattacker) & IN_ATTACK))
  2117. damage = float(health);
  2118.  
  2119. if(informacje_przedmiotu_gracza[this][0] == 82 || informacje_przedmiotu_gracza[this][0] == 83)
  2120. damage = float(health);
  2121.  
  2122. if(klasa_gracza[idattacker] == SandMan && !(get_user_button(idattacker) & IN_ATTACK) || klasa_gracza[idattacker] == ExtremeZone && !(get_user_button(idattacker) & IN_ATTACK))
  2123. damage = float(health);
  2124.  
  2125. if(klasa_gracza[idattacker] == Samuraj && !random(2))
  2126. damage = float(health);
  2127. }
  2128. if(weapon == CSW_DEAGLE)
  2129. {
  2130. if(informacje_przedmiotu_gracza[idattacker][0] == 34 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1)
  2131. damage = float(health);
  2132. }
  2133. if(weapon == CSW_DEAGLE)
  2134. {
  2135. if((informacje_przedmiotu_gracza[idattacker][0] == 53 && random(2) == 1))
  2136. damage = float(health);
  2137. }
  2138.  
  2139. if(weapon == CSW_HEGRENADE)
  2140. {
  2141. if((informacje_przedmiotu_gracza[idattacker][0] == 59 && random(3) == 1))
  2142. damage = float(health);
  2143. }
  2144.  
  2145. if(weapon == CSW_M3)
  2146. {
  2147. if((informacje_przedmiotu_gracza[idattacker][0] == 35 && random_num(2, informacje_przedmiotu_gracza[idattacker][1]) == 2) || (informacje_przedmiotu_gracza[idattacker][0] == 80 && !random(5)))
  2148. damage = float(health);
  2149. }
  2150. if(weapon == CSW_AWP)
  2151. {
  2152. if(informacje_przedmiotu_gracza[idattacker][0] == 35 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1)
  2153. damage = float(health);
  2154. }
  2155. if(weapon == CSW_AWP)
  2156. {
  2157. if(informacje_przedmiotu_gracza[idattacker][0] == 53)
  2158. damage = float(health);
  2159. }
  2160. if(weapon == CSW_AWP)
  2161. {
  2162. if(informacje_przedmiotu_gracza[idattacker][0] == 32 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1)
  2163. damage = float(health);
  2164. }
  2165. if(weapon == CSW_HEGRENADE)
  2166. {
  2167. if(informacje_przedmiotu_gracza[idattacker][0] == 31 && random_num(1, informacje_przedmiotu_gracza[idattacker][1]) == 1)
  2168. damage = float(health);
  2169. }
  2170.  
  2171. if(informacje_przedmiotu_gracza[idattacker][0] == 67)
  2172. {
  2173. if(weapon == CSW_USP && !random(2))
  2174. damage = float(health);
  2175.  
  2176. if(weapon == CSW_MP5NAVY && !random(5))
  2177. damage = float(health);
  2178. }
  2179.  
  2180. if(informacje_przedmiotu_gracza[this][0] == 26 && random_num(1, informacje_przedmiotu_gracza[this][1]) == 1)
  2181. {
  2182. SetHamParamEntity(3, this);
  2183. SetHamParamEntity(1, idattacker);
  2184. }
  2185. if(informacje_przedmiotu_gracza[this][0] == 46 && random_num(1, informacje_przedmiotu_gracza[this][1]) == 1)
  2186. {
  2187. SetHamParamEntity(3, this);
  2188. SetHamParamEntity(1, idattacker);
  2189. }
  2190. if(informacje_przedmiotu_gracza[this][0] == 47 && random_num(1, informacje_przedmiotu_gracza[this][1]) == 1)
  2191. {
  2192. SetHamParamEntity(3, this);
  2193. SetHamParamEntity(1, idattacker);
  2194. }
  2195. if(task_exists(this+ZADANIE_ODBIJAJ))
  2196. {
  2197. SetHamParamEntity(3, this);
  2198. SetHamParamEntity(1, idattacker);
  2199. }
  2200.  
  2201. SetHamParamFloat(4, damage);
  2202. return HAM_IGNORED;
  2203. }
  2204.  
  2205. public Damage(id)
  2206. {
  2207. new attacker = get_user_attacker(id);
  2208. new damage = read_data(2);
  2209. if(!is_user_alive(attacker) || !is_user_connected(attacker) || id == attacker || !klasa_gracza[attacker])
  2210. return PLUGIN_CONTINUE;
  2211.  
  2212. if(informacje_przedmiotu_gracza[attacker][0] == 12 && random_num(1, informacje_przedmiotu_gracza[id][1]) == 1)
  2213. Display_Fade(id,1<<14,1<<14 ,1<<16,255,155,50,230);
  2214.  
  2215. if(get_user_team(id) != get_user_team(attacker))
  2216. {
  2217. while(damage>20)
  2218. {
  2219. damage-=20;
  2220. doswiadczenie_gracza[attacker]++;
  2221. }
  2222. }
  2223. SprawdzPoziom(attacker);
  2224. return PLUGIN_CONTINUE;
  2225. }
  2226.  
  2227. public Death()
  2228. {
  2229. new weaponname[20]
  2230. new headshot = read_data(3)
  2231. read_data(4,weaponname,31)
  2232. new id = read_data(2);
  2233. new attacker = read_data(1);
  2234.  
  2235. if(!is_user_alive(attacker) || !is_user_connected(attacker))
  2236. return PLUGIN_CONTINUE;
  2237.  
  2238. new weapon = get_user_weapon(attacker);
  2239. new zdrowie = get_user_health(attacker);
  2240. if(informacje_przedmiotu_gracza[id][0]) {
  2241. if(wytrzymalosc_itemu[id] > 0) {
  2242. wytrzymalosc_itemu[id]-=20;
  2243. }
  2244. if(wytrzymalosc_itemu[id] > 0) {
  2245. ColorChat(id, RED, "[COD:MW3] ^x01 Ve'delem: %i.", wytrzymalosc_itemu[id]);
  2246. }
  2247. else {
  2248. ColorChat(id, RED, "[COD:MW3] ^x01 Kaszt: %s, Uristen.", nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]]);
  2249. UsunPrzedmiot(id);
  2250. }
  2251. }
  2252. if(get_user_team(id) != get_user_team(attacker) && klasa_gracza[attacker])
  2253. {
  2254. new nowe_doswiadczenie = 0;
  2255.  
  2256. nowe_doswiadczenie += doswiadczenia_za_zabojstwo;
  2257.  
  2258. if(klasa_gracza[id] == Rambo && klasa_gracza[attacker] != Rambo)
  2259. nowe_doswiadczenie += doswiadczenia_za_zabojstwo*2;
  2260.  
  2261. if(poziom_gracza[id] > poziom_gracza[attacker])
  2262. nowe_doswiadczenie += poziom_gracza[id] - poziom_gracza[attacker];
  2263.  
  2264. if(informacje_przedmiotu_gracza[id][0] == 88 && !read_data(3))
  2265. set_user_health(attacker, 1);
  2266.  
  2267. if (get_user_flags(attacker) & ADMIN_LEVEL_H)
  2268. {
  2269. if(headshot)
  2270. {
  2271. new nowe_zdrowie = (zdrowie+30);
  2272. set_user_health(attacker, nowe_zdrowie);
  2273. cs_set_user_money(attacker, cs_get_user_money(attacker)+800);
  2274. }
  2275. else
  2276. {
  2277. new nowe_zdrowie = (zdrowie+15);
  2278. set_user_health(attacker, nowe_zdrowie);
  2279. cs_set_user_money(attacker, cs_get_user_money(attacker)+500);
  2280. }
  2281. }
  2282. if(klasa_gracza[attacker] == Rambo || klasa_gracza[attacker] == RatkoMladic|| informacje_przedmiotu_gracza[attacker][0] == 15 && maxClip[weapon] != -1)
  2283. {
  2284.  
  2285. new nowe_zdrowie = (zdrowie+20);
  2286. set_user_clip(attacker, maxClip[weapon]);
  2287. set_user_health(attacker, nowe_zdrowie);
  2288. }
  2289. if((!(klasa_gracza[attacker] == Rambo || klasa_gracza[attacker] == RatkoMladic)) && (informacje_przedmiotu_gracza[attacker][0] == 71 || informacje_przedmiotu_gracza[attacker][0] == 81))
  2290. {
  2291.  
  2292. new nowe_zdrowie = (zdrowie+25);
  2293. set_user_health(attacker, nowe_zdrowie);
  2294. }
  2295.  
  2296. if((!(klasa_gracza[attacker] == Rambo || klasa_gracza[attacker] == RatkoMladic)) && (informacje_przedmiotu_gracza[attacker][0] == 72 && maxClip[weapon] != -1))
  2297. set_user_clip(attacker, maxClip[weapon]);
  2298.  
  2299. #if defined BOTY
  2300. if(is_user_bot2(attacker) && random(9) == 0)
  2301. WyrzucPrzedmiot(id);
  2302. #endif
  2303. if(!informacje_przedmiotu_gracza[attacker][0])
  2304. DajPrzedmiot(attacker, random_num(1, sizeof nazwy_przedmiotow-1));
  2305.  
  2306. if(informacje_przedmiotu_gracza[attacker][0] == 14)
  2307. {
  2308. new nowe_zdrowie = (zdrowie+50<maksymalne_zdrowie_gracza[attacker])? zdrowie+50: maksymalne_zdrowie_gracza[attacker];
  2309. set_user_health(attacker, nowe_zdrowie);
  2310. }
  2311.  
  2312. set_hudmessage(255, 212, 0, 0.50, 0.33, 1, 6.0, 4.0);
  2313. ShowSyncHudMsg(attacker, SyncHudObj2, "+%i", nowe_doswiadczenie);
  2314.  
  2315. doswiadczenie_gracza[attacker] += nowe_doswiadczenie;
  2316. }
  2317.  
  2318. SprawdzPoziom(attacker);
  2319.  
  2320. if(informacje_przedmiotu_gracza[id][0] == 7 && random_num(1, informacje_przedmiotu_gracza[id][1]) == 1)
  2321. set_task(0.1, "Wskrzes", id+ZADANIE_WSKRZES);
  2322.  
  2323. return PLUGIN_CONTINUE;
  2324. }
  2325.  
  2326. public client_connect(id)
  2327. {
  2328. //resetuje umiejetnosci
  2329. klasa_gracza[id] = 0;
  2330. poziom_gracza[id] = 0;
  2331. doswiadczenie_gracza[id] = 0;
  2332. punkty_gracza[id] = 0;
  2333. zdrowie_gracza[id] = 0;
  2334. inteligencja_gracza[id] = 0;
  2335. wytrzymalosc_gracza[id] = 0;
  2336. kondycja_gracza[id] = 0;
  2337. maksymalne_zdrowie_gracza[id] = 0;
  2338. szybkosc_gracza[id] = 0.0;
  2339. hasZoom[id] = false
  2340. pomocs[id] = true;
  2341.  
  2342. get_user_name(id, nazwa_gracza[id], 63);
  2343.  
  2344. remove_task(id+ZADANIE_POKAZ_INFORMACJE);
  2345. remove_task(id+ZADANIE_POKAZ_REKLAME);
  2346. remove_task(id+ZADANIE_USTAW_SZYBKOSC);
  2347. remove_task(id+ZADANIE_WSKRZES);
  2348. remove_task(id+ZADANIE_WYSZKOLENIE_SANITARNE);
  2349.  
  2350. set_task(10.0, "PokazReklame", id+ZADANIE_POKAZ_REKLAME);
  2351. set_task(3.0, "PokazInformacje", id+ZADANIE_POKAZ_INFORMACJE);
  2352.  
  2353. //resetuje przedmioty
  2354. UsunPrzedmiot(id);
  2355. }
  2356.  
  2357. public client_disconnect(id)
  2358. {
  2359. remove_task(id+ZADANIE_POKAZ_INFORMACJE);
  2360. remove_task(id+ZADANIE_POKAZ_REKLAME);
  2361. remove_task(id+ZADANIE_USTAW_SZYBKOSC);
  2362. remove_task(id+ZADANIE_WSKRZES);
  2363. remove_task(id+ZADANIE_WYSZKOLENIE_SANITARNE);
  2364. hasZoom[id] = false
  2365. ZapiszDane(id);
  2366. UsunPrzedmiot(id);
  2367. client_disconnect_magnet(id);
  2368. }
  2369.  
  2370. public RozbrajaBombe(id)
  2371. if(klasa_gracza[id])
  2372. rozbrajajacy = id;
  2373.  
  2374. public BombaPodlozona()
  2375. {
  2376. new Players[32], playerCount, id;
  2377. get_players(Players, playerCount, "aeh", "TERRORIST");
  2378.  
  2379. if(get_playersnum() > 1)
  2380. {
  2381. doswiadczenie_gracza[podkladajacy] += doswiadczenie_za_bombe;
  2382. for (new i=0; i<playerCount; i++)
  2383. {
  2384. id = Players[i];
  2385. if(!klasa_gracza[id])
  2386. continue;
  2387.  
  2388. if(id != podkladajacy)
  2389. {
  2390. doswiadczenie_gracza[id] += doswiadczenia_za_zabojstwo;
  2391. ColorChat(id, RED, "[S][M][COD:MW3] ^x04Kaptal **%i** EXP-et a bomba lerakasaert", doswiadczenia_za_zabojstwo);
  2392. }
  2393. else
  2394. {
  2395. ColorChat(id, RED, "[S][M][COD:MW3] ^x04 Kaptal **%i** EXP-et a bomba lerakasaert.", doswiadczenie_za_bombe);
  2396. }
  2397. SprawdzPoziom(id);
  2398. }
  2399. }
  2400. }
  2401.  
  2402. public BombaRozbrojona()
  2403. {
  2404. new Players[32], playerCount, id;
  2405. get_players(Players, playerCount, "aeh", "CT");
  2406.  
  2407. doswiadczenie_gracza[rozbrajajacy] += doswiadczenie_za_bombe;
  2408. for (new i=0; i<playerCount; i++)
  2409. {
  2410. id = Players[i];
  2411. if(!klasa_gracza[id])
  2412. continue;
  2413. if(id != rozbrajajacy)
  2414. {
  2415. doswiadczenie_gracza[id]+= doswiadczenia_za_zabojstwo;
  2416. ColorChat(id, RED, "[S][M][COD:MW3] ^x04Kaptal **%i** EXP-et a bomba hatastalanitasaert..", doswiadczenia_za_zabojstwo);
  2417. }
  2418. else
  2419. ColorChat(id, RED, "[S][M][COD:MW3] ^x04Kaptal **%i** EXP-et a bomba hatastalanitasaert .",doswiadczenie_za_bombe);
  2420. SprawdzPoziom(id);
  2421. }
  2422. }
  2423.  
  2424. public OpisKlasy(id)
  2425. {
  2426. new menu = menu_create("Izaberi Klasu:", "OpisKlasy_Handle");
  2427. for(new i=1; i<sizeof nazwy_klas; i++)
  2428. menu_additem(menu, nazwy_klas[i]);
  2429. menu_setprop(menu, MPROP_EXITNAME, "Kilepes");
  2430. menu_setprop(menu, MPROP_BACKNAME, "Elozo oldal");
  2431. menu_setprop(menu, MPROP_NEXTNAME, "Kovetkezo oldal");
  2432. menu_display(id, menu);
  2433.  
  2434. client_cmd(id, "spk mw/select");
  2435. return PLUGIN_CONTINUE;
  2436. }
  2437.  
  2438. public OpisKlasy_Handle(id, menu, item)
  2439. {
  2440. client_cmd(id, "spk mw/select");
  2441.  
  2442. if(item == MENU_EXIT)
  2443. {
  2444. menu_destroy(menu);
  2445. return PLUGIN_CONTINUE;
  2446. }
  2447. new opis[512];
  2448. format(opis, 511, "\yKaszt: \r%s^n%s", nazwy_klas[item+1], opisy_klas[item+1]);
  2449. show_menu(id, 1023, opis);
  2450.  
  2451. return PLUGIN_CONTINUE;
  2452. }
  2453.  
  2454. public WybierzKlase(id)
  2455. {
  2456. new menu = menu_create("Izaberi Klase:", "Wybierzfrakcje_Handle");
  2457. for(new i = 1;i<sizeof(frakcje);i++){
  2458. menu_additem(menu, frakcje[i]);
  2459. }
  2460. menu_display(id, menu);
  2461. }
  2462.  
  2463. public Wybierzfrakcje_Handle(id, menu2, item)
  2464. {
  2465. if(item == MENU_EXIT)
  2466. {
  2467. menu_destroy(menu2);
  2468. return PLUGIN_CONTINUE;
  2469. }
  2470.  
  2471. item++;
  2472. frakcja_gracza[id] = item;
  2473. new menu = menu_create("Izaberi Klase:", "WybierzKlase_Handle");
  2474. new klasa[50];
  2475. for(new i=1; i<sizeof nazwy_klas; i++)
  2476. {
  2477. if(nalezy_do[i] == item){
  2478. WczytajDane(id, i);
  2479. format(klasa, 49, "\r%s \ySzint: %i", nazwy_klas[i], poziom_gracza[id]);
  2480. menu_additem(menu, klasa);
  2481. }
  2482. }
  2483.  
  2484. WczytajDane(id, klasa_gracza[id]);
  2485.  
  2486. menu_setprop(menu, MPROP_EXITNAME, "Kilepes");
  2487. menu_setprop(menu, MPROP_BACKNAME, "Elozo Oldal");
  2488. menu_setprop(menu, MPROP_NEXTNAME, "Kovetkezo Oldal");
  2489. menu_display(id, menu);
  2490.  
  2491. client_cmd(id, "spk mw/select");
  2492. #if defined BOTY
  2493. if(is_user_bot2(id))
  2494. WybierzKlase_Handle(id, menu, random(sizeof nazwy_klas-1));
  2495. #endif
  2496.  
  2497. return PLUGIN_CONTINUE;
  2498. }
  2499.  
  2500. public WybierzKlase_Handle(id, menu, item)
  2501. {
  2502. client_cmd(id, "spk mw/select");
  2503.  
  2504. if(item == MENU_EXIT)
  2505. {
  2506. menu_destroy(menu);
  2507. return PLUGIN_CONTINUE;
  2508. }
  2509.  
  2510. item++;
  2511.  
  2512. new ile = 0;
  2513. for(new i=1; i<sizeof nazwy_klas; i++)
  2514. {
  2515. if(nalezy_do[i] == frakcja_gracza[id]){
  2516. ile++;
  2517. }
  2518. if(ile == item)
  2519. {
  2520. item = i;
  2521. break;
  2522. }
  2523. }
  2524. if(item == Rambo && !(get_user_flags(id) & ADMIN_LEVEL_H) || item == Assassin && !(get_user_flags(id) & ADMIN_LEVEL_F) || item == RatkoMladic && !(get_user_flags(id) & ADMIN_LEVEL_E))
  2525. {
  2526. ColorChat(id, RED, "[COD:MW3] ^x04 Nem engede'lyezett! ^3Ez Pre'mium kaszt neked csak 1-es Rangod van!");
  2527. WybierzKlase(id);
  2528. return PLUGIN_CONTINUE;
  2529. }
  2530.  
  2531. else if(item == Major && !(get_user_flags(id) & ADMIN_LEVEL_G) || item == General && !(get_user_flags(id) & ADMIN_LEVEL_B))
  2532. {
  2533. ColorChat(id, RED, "[COD:MW3] ^x04 Bocs de ez egy Premium cuc.");
  2534. WybierzKlase(id);
  2535. return PLUGIN_CONTINUE;
  2536. }
  2537.  
  2538. if(item == EXTREME && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == LIKEABOSS && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == Makarov && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == SandMan && !(get_user_flags(id) & ADMIN_LEVEL_A) || item == ExtremeZone && !(get_user_flags(id) & ADMIN_LEVEL_A))
  2539. {
  2540. ColorChat(id, RED, "[COD:MW3]^4 Nem engedelyezett!");
  2541. ColorChat(id, RED, "[COD:MW3]^4 Sikeres.");
  2542. WybierzKlase(id);
  2543. return PLUGIN_CONTINUE;
  2544. }
  2545.  
  2546. else
  2547. {
  2548. if(item == klasa_gracza[id])
  2549. return PLUGIN_CONTINUE;
  2550.  
  2551.  
  2552.  
  2553. if(klasa_gracza[id])
  2554. {
  2555. nowa_klasa_gracza[id] = item;
  2556. ColorChat(id, TEAM_COLOR, "^3[COD:MW3] ^4Kasztod kovetkezo korben valtozikmeg.");
  2557. }
  2558. else
  2559. {
  2560. klasa_gracza[id] = item;
  2561. WczytajDane(id, klasa_gracza[id]);
  2562. if(is_user_alive(id)) Odrodzenie(id);
  2563. }
  2564. }
  2565. return PLUGIN_CONTINUE;
  2566. }
  2567.  
  2568. public PrzydzielPunkty(id)
  2569. {
  2570. new inteligencja[65];new inteligencja10[65];new inteligencja100[65];
  2571. new zdrowie[60];new zdrowie10[60];new zdrowie100[60];
  2572. new wytrzymalosc[60];new wytrzymalosc10[60];new wytrzymalosc100[60];
  2573. new kondycja[60];new kondycja10[60];new kondycja100[60];
  2574. new tytul[60];
  2575. format(inteligencja, 64, "\yInteligencia: \w%i \r(Povecava napad)", inteligencja_gracza[id]);
  2576. format(zdrowie, 59, "\yElet: \w%i \r(Povecava Energiju)", zdrowie_gracza[id]);
  2577. format(wytrzymalosc, 59, "\yHalhatatlansag: \w%i \r(Smanjuje povrede)", wytrzymalosc_gracza[id]);
  2578. format(kondycja, 59, "\ySebeseg: \w%i \r(Povecava tempo trcanja)", kondycja_gracza[id]);
  2579. format(inteligencja10, 64, "\y10-et az Inteligenciara\r(Povecava napad)");
  2580. format(zdrowie10, 59, "\y10-et az Eletre \r(Povecava Energiju)");
  2581. format(wytrzymalosc10, 59, "\y10-et az Halhatalansagra \r(Smanjuje povrede)");
  2582. format(kondycja10, 59, "\y10-et a Sebesegre \r(Povecava tempo trcanja)");
  2583. format(inteligencja100, 64, "\y100-at az Inteligenciara \r(Povecava napad)");
  2584. format(zdrowie100, 59, "\y100-at az Eletre \r(Povecava Energiju)");
  2585. format(wytrzymalosc100, 59, "\y100-at a Halhatatlasagra \r(Smanjuje povrede)");
  2586. format(kondycja100, 59, "\y100-at a Sebesegre \r(Povecava tempo trcanja)");
  2587. format(tytul, 59, "\yPreostalo ti je jos (%i) poena:", punkty_gracza[id]);
  2588. new menu = menu_create(tytul, "PrzydzielPunkty_Handler");
  2589. menu_additem(menu, inteligencja);
  2590. menu_additem(menu, zdrowie);
  2591. menu_additem(menu, wytrzymalosc);
  2592. menu_additem(menu, kondycja);
  2593. menu_additem(menu, inteligencja10);
  2594. menu_additem(menu, zdrowie10);
  2595. menu_additem(menu, wytrzymalosc10);
  2596. menu_additem(menu, kondycja10);
  2597. menu_additem(menu, inteligencja100);
  2598. menu_additem(menu, zdrowie100);
  2599. menu_additem(menu, wytrzymalosc100);
  2600. menu_additem(menu, kondycja100);
  2601. menu_display(id, menu);
  2602. #if defined BOTY
  2603. if(is_user_bot2(id))
  2604. PrzydzielPunkty_Handler(id, menu, random(4));
  2605. #endif
  2606. }
  2607.  
  2608. public PrzydzielPunkty_Handler(id, menu, item)
  2609. {
  2610. client_cmd(id, "spk mw/select");
  2611.  
  2612. if(item == MENU_EXIT)
  2613. {
  2614. menu_destroy(menu);
  2615. return PLUGIN_CONTINUE;
  2616. }
  2617.  
  2618. switch(item)
  2619. {
  2620. case 0:
  2621. {
  2622. if(inteligencja_gracza[id]<200)
  2623. inteligencja_gracza[id]++;
  2624. else
  2625. ColorChat(id, RED, "[COD:MW3] ^x04 Tobbet nem birsz ra rakni");
  2626.  
  2627. }
  2628. case 1:
  2629. {
  2630. if(zdrowie_gracza[id]<200)
  2631. zdrowie_gracza[id]++;
  2632. else
  2633. ColorChat(id, RED, "[COD:MW3] ^x04 Tobbet nem birsz ra rakni");
  2634. }
  2635. case 2:
  2636. {
  2637. if(wytrzymalosc_gracza[id]<200)
  2638. wytrzymalosc_gracza[id]++;
  2639. else
  2640. ColorChat(id, RED, "[COD:MW3] ^x04 Tobbet nem birsz ra rakni");
  2641.  
  2642. }
  2643. case 3:
  2644. {
  2645. if(kondycja_gracza[id]<200)
  2646. kondycja_gracza[id]++;
  2647. else
  2648. ColorChat(id, RED, "[COD:MW3] ^x04 Tobbet nem birsz ra rakni");
  2649. }
  2650. case 4:
  2651. {
  2652. if(punkty_gracza[id]-=9)
  2653. {
  2654. ColorChat(id, RED, "[COD:MW3] ^x04 +10 intet tetel");
  2655. }
  2656. if(inteligencja_gracza[id]<99999)
  2657. inteligencja_gracza[id]+=10;
  2658. else
  2659. ColorChat(id, RED, "[COD:MW3] ^x04 Tobbet nem birsz ra rakni");
  2660.  
  2661. }
  2662. case 5:
  2663. {
  2664. if(punkty_gracza[id]-=9)
  2665. {
  2666. ColorChat(id, RED, "[COD:MW3] ^x04 +10 hp tetel!");
  2667. }
  2668. if(zdrowie_gracza[id]<4000)
  2669. zdrowie_gracza[id]+=10;
  2670. else
  2671. ColorChat(id, RED, "[COD:MW3] ^x04 Tobbet nem birsz ra rakni");
  2672. }
  2673. case 6:
  2674. {
  2675. if(punkty_gracza[id]-=9)
  2676. {
  2677. ColorChat(id, RED, "[COD:MW3] ^x04 +10 halhatalansag tetel!");
  2678. }
  2679. if(wytrzymalosc_gracza[id]<99999)
  2680. wytrzymalosc_gracza[id]+=10;
  2681. else
  2682. ColorChat(id, RED, "[COD:MW3] ^x04 Tobbet nem birsz ra rakni");
  2683.  
  2684. }
  2685. case 7:
  2686. {
  2687. if(punkty_gracza[id]-=9)
  2688. {
  2689. ColorChat(id, RED, "[COD:MW3] ^x04 Nincs ra engedejed");
  2690. }
  2691. if(kondycja_gracza[id]<99999)
  2692. kondycja_gracza[id]+=10;
  2693. else
  2694. ColorChat(id, RED, "[COD:MW3] ^x04 Siekres");
  2695. }
  2696. case 8:
  2697. {
  2698. if(punkty_gracza[id]-=99)
  2699. {
  2700. ColorChat(id, RED, "[COD:MW3] ^x04 Sikeres");
  2701. }
  2702. if(inteligencja_gracza[id]<4000)
  2703. inteligencja_gracza[id]+=100;
  2704. else
  2705. ColorChat(id, RED, "[COD:MW3] ^x04 Tobbet nem birsz ra rakni");
  2706.  
  2707. }
  2708. case 9:
  2709. {
  2710. if(punkty_gracza[id]-=99)
  2711. {
  2712. ColorChat(id, RED, "[COD:MW3] ^x04 sikeres!");
  2713. }
  2714. if(zdrowie_gracza[id]<380000)
  2715. zdrowie_gracza[id]+=100;
  2716. else
  2717. ColorChat(id, RED, "[COD:MW3] ^x04 Tobbet nem birsz ra rakni");
  2718. }
  2719. case 10:
  2720. {
  2721. if(punkty_gracza[id]-=99)
  2722. {
  2723. ColorChat(id, RED, "[COD:MW3] ^x04 Sikeres");
  2724. }
  2725. if(wytrzymalosc_gracza[id]<99999)
  2726. wytrzymalosc_gracza[id]+=100;
  2727. else
  2728. ColorChat(id, RED, "[COD:MW3] ^x04 Tobbet nembirsz ra rakni ?");
  2729.  
  2730. }
  2731. case 11:
  2732. {
  2733. if(punkty_gracza[id]-=99)
  2734. {
  2735. ColorChat(id, RED, "[COD:MW3] ^x04 Siekres!");
  2736. }
  2737. if(kondycja_gracza[id]<99999)
  2738. kondycja_gracza[id]+=100;
  2739. else
  2740. ColorChat(id, RED, "[COD:MW3] ^x04 Tobbet nem birsz ra rakni");
  2741. }
  2742. }
  2743.  
  2744. punkty_gracza[id]--;
  2745.  
  2746. if(punkty_gracza[id]>0)
  2747. PrzydzielPunkty(id);
  2748.  
  2749. return PLUGIN_CONTINUE;
  2750. }
  2751.  
  2752. public ResetujPunkty(id)
  2753. {
  2754. punkty_gracza[id] = poziom_gracza[id]*2-2;
  2755. inteligencja_gracza[id] = 0;
  2756. zdrowie_gracza[id] = 0;
  2757. kondycja_gracza[id] = 0;
  2758. wytrzymalosc_gracza[id] = 0;
  2759. PrzydzielPunkty(id)
  2760. }
  2761.  
  2762. public KomendaResetujPunkty(id)
  2763. {
  2764. ColorChat(id, RED, "[COD:MW3] ^x04 Szerver tulaj K.O.");
  2765. client_cmd(id, "spk mw/select");
  2766. ResetujPunkty(id);
  2767. }
  2768.  
  2769. public WyszkolenieSanitarne(id)
  2770. {
  2771. id -= ZADANIE_WYSZKOLENIE_SANITARNE;
  2772. if(informacje_przedmiotu_gracza[id][0] != 16 || informacje_przedmiotu_gracza[id][0] != 41)
  2773. return PLUGIN_CONTINUE;
  2774. set_task(5.0, "WyszkolenieSanitarne", id+ZADANIE_WYSZKOLENIE_SANITARNE);
  2775. if(!is_user_alive(id))
  2776. return PLUGIN_CONTINUE;
  2777. new health = get_user_health(id);
  2778.  
  2779. set_user_health(id, min((informacje_przedmiotu_gracza[id][0] == 16)? health+10: health+15, maksymalne_zdrowie_gracza[id]));
  2780. return PLUGIN_CONTINUE;
  2781. }
  2782.  
  2783. public StworzApteczke(id)
  2784. {
  2785. if (!ilosc_apteczek_gracza[id])
  2786. {
  2787. client_print(id, print_center, "Kinyomtal egy Turorudit");
  2788. return PLUGIN_CONTINUE;
  2789. }
  2790.  
  2791. if(inteligencja_gracza[id] < 1)
  2792. client_print(id, print_center, "Rakj Tobbet az Inteligenciara akkor tobet fogsz sebezni!");
  2793.  
  2794. ilosc_apteczek_gracza[id]--;
  2795.  
  2796. new Float:origin[3];
  2797. entity_get_vector(id, EV_VEC_origin, origin);
  2798.  
  2799. new ent = create_entity("info_target");
  2800. entity_set_string(ent, EV_SZ_classname, "Apteczka");
  2801. entity_set_edict(ent, EV_ENT_owner, id);
  2802. entity_set_int(ent, EV_INT_solid, SOLID_NOT);
  2803. entity_set_vector(ent, EV_VEC_origin, origin);
  2804. entity_set_float(ent, EV_FL_ltime, halflife_time() + 7 + 0.1);
  2805.  
  2806.  
  2807. entity_set_model(ent, "models/w_medkit.mdl");
  2808. set_rendering ( ent, kRenderFxGlowShell, 255,0,0, kRenderFxNone, 255 ) ;
  2809. drop_to_floor(ent);
  2810.  
  2811. entity_set_float(ent, EV_FL_nextthink, halflife_time() + 0.1);
  2812.  
  2813. return PLUGIN_CONTINUE;
  2814. }
  2815.  
  2816. public ApteczkaThink(ent)
  2817. {
  2818. new id = entity_get_edict(ent, EV_ENT_owner);
  2819. new totem_dist = 300;
  2820. new totem_heal = 5+floatround(inteligencja_gracza[id]*0.5);
  2821. if (entity_get_edict(ent, EV_ENT_euser2) == 1)
  2822. {
  2823. new Float:forigin[3], origin[3];
  2824. entity_get_vector(ent, EV_VEC_origin, forigin);
  2825. FVecIVec(forigin,origin);
  2826.  
  2827. new entlist[33];
  2828. new numfound = find_sphere_class(0,"player",totem_dist+0.0,entlist, 32,forigin);
  2829.  
  2830. for (new i=0; i < numfound; i++)
  2831. {
  2832. new pid = entlist[i];
  2833.  
  2834. if (get_user_team(pid) != get_user_team(id))
  2835. continue;
  2836.  
  2837. new zdrowie = get_user_health(pid);
  2838. new nowe_zdrowie = (zdrowie+totem_heal<maksymalne_zdrowie_gracza[pid])?zdrowie+totem_heal:maksymalne_zdrowie_gracza[pid];
  2839. if (is_user_alive(pid)) set_user_health(pid, nowe_zdrowie);
  2840. }
  2841.  
  2842. entity_set_edict(ent, EV_ENT_euser2, 0);
  2843. entity_set_float(ent, EV_FL_nextthink, halflife_time() + 1.5);
  2844.  
  2845. return PLUGIN_CONTINUE;
  2846. }
  2847.  
  2848. if (entity_get_float(ent, EV_FL_ltime) < halflife_time() || !is_user_alive(id))
  2849. {
  2850. remove_entity(ent);
  2851. return PLUGIN_CONTINUE;
  2852. }
  2853.  
  2854. if (entity_get_float(ent, EV_FL_ltime)-2.0 < halflife_time())
  2855. set_rendering ( ent, kRenderFxGlowShell, 255,0,0, kRenderFxNone, 255 ) ;
  2856.  
  2857. new Float:forigin[3], origin[3];
  2858. entity_get_vector(ent, EV_VEC_origin, forigin);
  2859. FVecIVec(forigin,origin);
  2860.  
  2861. //Find people near and give them health
  2862. message_begin( MSG_BROADCAST, SVC_TEMPENTITY, origin );
  2863. write_byte( TE_BEAMCYLINDER );
  2864. write_coord( origin[0] );
  2865. write_coord( origin[1] );
  2866. write_coord( origin[2] );
  2867. write_coord( origin[0] );
  2868. write_coord( origin[1] + totem_dist );
  2869. write_coord( origin[2] + totem_dist );
  2870. write_short( sprite_white );
  2871. write_byte( 0 ); // startframe
  2872. write_byte( 0 ); // framerate
  2873. write_byte( 10 ); // life
  2874. write_byte( 10 ); // width
  2875. write_byte( 255 ); // noise
  2876. write_byte( 255 ); // r, g, b
  2877. write_byte( 100 );// r, g, b
  2878. write_byte( 100 ); // r, g, b
  2879. write_byte( 128 ); // brightness
  2880. write_byte( 5 ); // speed
  2881. message_end();
  2882.  
  2883. entity_set_edict(ent, EV_ENT_euser2 ,1);
  2884. entity_set_float(ent, EV_FL_nextthink, halflife_time() + 0.5);
  2885.  
  2886.  
  2887. return PLUGIN_CONTINUE;
  2888.  
  2889. }
  2890.  
  2891. public StworzRakiete(id)
  2892. {
  2893. if (!ilosc_rakiet_gracza[id])
  2894. {
  2895. client_print(id, print_center, "Skilleztel egy Rake'tat!");
  2896. return PLUGIN_CONTINUE;
  2897. }
  2898.  
  2899. if(poprzednia_rakieta_gracza[id] + 2.0 > get_gametime())
  2900. {
  2901. client_print(id, print_center, "Csak 2mp utan tudsz ujra Raketat lonni!");
  2902. return PLUGIN_CONTINUE;
  2903. }
  2904.  
  2905. if (is_user_alive(id))
  2906. {
  2907. if(inteligencja_gracza[id] < 1)
  2908. client_print(id, print_center, "Rakj Tobbet az Inteligenciara akkor tobet fogsz sebezni!");
  2909.  
  2910. poprzednia_rakieta_gracza[id] = get_gametime();
  2911. ilosc_rakiet_gracza[id]--;
  2912.  
  2913. new Float: Origin[3], Float: vAngle[3], Float: Velocity[3];
  2914.  
  2915. entity_get_vector(id, EV_VEC_v_angle, vAngle);
  2916. entity_get_vector(id, EV_VEC_origin , Origin);
  2917.  
  2918. new Ent = create_entity("info_target");
  2919.  
  2920. entity_set_string(Ent, EV_SZ_classname, "Rocket");
  2921. entity_set_model(Ent, "models/rpgrocket.mdl");
  2922.  
  2923. vAngle[0] *= -1.0;
  2924.  
  2925. entity_set_origin(Ent, Origin);
  2926. entity_set_vector(Ent, EV_VEC_angles, vAngle);
  2927.  
  2928. entity_set_int(Ent, EV_INT_effects, 2);
  2929. entity_set_int(Ent, EV_INT_solid, SOLID_BBOX);
  2930. entity_set_int(Ent, EV_INT_movetype, MOVETYPE_FLY);
  2931. entity_set_edict(Ent, EV_ENT_owner, id);
  2932.  
  2933. VelocityByAim(id, 1000 , Velocity);
  2934. entity_set_vector(Ent, EV_VEC_velocity ,Velocity);
  2935. }
  2936. return PLUGIN_CONTINUE;
  2937. }
  2938.  
  2939. public PolozDynamit(id)
  2940. {
  2941. if(!ilosc_dynamitow_gracza[id])
  2942. {
  2943. client_print(id, print_center, "Te Skilleztel");
  2944. return PLUGIN_CONTINUE;
  2945. }
  2946.  
  2947. if(inteligencja_gracza[id] < 1)
  2948. client_print(id, print_center, "Rakj tobet az inteligenciara ,hogy tobbet sebezz!");
  2949.  
  2950. ilosc_dynamitow_gracza[id]--;
  2951. new Float:fOrigin[3], iOrigin[3];
  2952. entity_get_vector( id, EV_VEC_origin, fOrigin);
  2953. iOrigin[0] = floatround(fOrigin[0]);
  2954. iOrigin[1] = floatround(fOrigin[1]);
  2955. iOrigin[2] = floatround(fOrigin[2]);
  2956.  
  2957. message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
  2958. write_byte(TE_EXPLOSION);
  2959. write_coord(iOrigin[0]);
  2960. write_coord(iOrigin[1]);
  2961. write_coord(iOrigin[2]);
  2962. write_short(sprite_blast);
  2963. write_byte(32);
  2964. write_byte(20);
  2965. write_byte(0);
  2966. message_end();
  2967.  
  2968. message_begin( MSG_BROADCAST, SVC_TEMPENTITY, iOrigin );
  2969. write_byte( TE_BEAMCYLINDER );
  2970. write_coord( iOrigin[0] );
  2971. write_coord( iOrigin[1] );
  2972. write_coord( iOrigin[2] );
  2973. write_coord( iOrigin[0] );
  2974. write_coord( iOrigin[1] + 300 );
  2975. write_coord( iOrigin[2] + 300 );
  2976. write_short( sprite_white );
  2977. write_byte( 0 ); // startframe
  2978. write_byte( 0 ); // framerate
  2979. write_byte( 10 ); // life
  2980. write_byte( 10 ); // width
  2981. write_byte( 255 ); // noise
  2982. write_byte( 255 ); // r, g, b
  2983. write_byte( 100 );// r, g, b
  2984. write_byte( 100 ); // r, g, b
  2985. write_byte( 128 ); // brightness
  2986. write_byte( 8 ); // speed
  2987. message_end();
  2988.  
  2989. new entlist[33];
  2990. new numfound = find_sphere_class(id, "player", 300.0 , entlist, 32);
  2991.  
  2992. for (new i=0; i < numfound; i++)
  2993. {
  2994. new pid = entlist[i];
  2995.  
  2996. if (!is_user_alive(pid) || get_user_team(id) == get_user_team(pid) || informacje_przedmiotu_gracza[pid][0] == 24)
  2997. continue;
  2998. ExecuteHam(Ham_TakeDamage, pid, 0, id, 90.0+float(inteligencja_gracza[id]) , 1);
  2999. }
  3000. return PLUGIN_CONTINUE;
  3001. }
  3002.  
  3003. public PostawMine(id)
  3004. {
  3005. if (!ilosc_min_gracza[id])
  3006. {
  3007. client_print(id, print_center, "Kinyomtal egy Skillt!");
  3008. return PLUGIN_CONTINUE;
  3009. }
  3010.  
  3011. if(inteligencja_gracza[id] < 1)
  3012. client_print(id, print_center, "Rakj Tobbet az Inteligenciara akkor tobet fogsz sebezni!");
  3013.  
  3014. ilosc_min_gracza[id]--;
  3015.  
  3016. new Float:origin[3];
  3017. entity_get_vector(id, EV_VEC_origin, origin);
  3018.  
  3019. new ent = create_entity("info_target");
  3020. entity_set_string(ent ,EV_SZ_classname, "Mine");
  3021. entity_set_edict(ent ,EV_ENT_owner, id);
  3022. entity_set_int(ent, EV_INT_movetype, MOVETYPE_TOSS);
  3023. entity_set_origin(ent, origin);
  3024. entity_set_int(ent, EV_INT_solid, SOLID_BBOX);
  3025.  
  3026. entity_set_model(ent, "models/mine.mdl");
  3027. entity_set_size(ent,Float:{-16.0,-16.0,0.0},Float:{16.0,16.0,2.0});
  3028.  
  3029. drop_to_floor(ent);
  3030.  
  3031. entity_set_float(ent,EV_FL_nextthink,halflife_time() + 0.01) ;
  3032.  
  3033. set_rendering(ent,kRenderFxNone, 0,0,0, kRenderTransTexture,50) ;
  3034.  
  3035. return PLUGIN_CONTINUE;
  3036. }
  3037.  
  3038. public DotykMiny(ent, id)
  3039. {
  3040. new attacker = entity_get_edict(ent, EV_ENT_owner);
  3041. if (get_user_team(attacker) != get_user_team(id))
  3042. {
  3043. new Float:fOrigin[3], iOrigin[3];
  3044. entity_get_vector( ent, EV_VEC_origin, fOrigin);
  3045. iOrigin[0] = floatround(fOrigin[0]);
  3046. iOrigin[1] = floatround(fOrigin[1]);
  3047. iOrigin[2] = floatround(fOrigin[2]);
  3048.  
  3049. message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
  3050. write_byte(TE_EXPLOSION);
  3051. write_coord(iOrigin[0]);
  3052. write_coord(iOrigin[1]);
  3053. write_coord(iOrigin[2]);
  3054. write_short(sprite_blast);
  3055. write_byte(32); // scale
  3056. write_byte(20); // framerate
  3057. write_byte(0);// flags
  3058. message_end();
  3059. new entlist[33];
  3060. new numfound = find_sphere_class(ent,"player", 90.0 ,entlist, 32);
  3061.  
  3062. for (new i=0; i < numfound; i++)
  3063. {
  3064. new pid = entlist[i];
  3065.  
  3066. if (!is_user_alive(pid) || get_user_team(attacker) == get_user_team(pid) || informacje_przedmiotu_gracza[pid][0] == 24 || klasa_gracza[id] == Doktor)
  3067. continue;
  3068.  
  3069. ExecuteHam(Ham_TakeDamage, pid, ent, attacker, 90.0+float(inteligencja_gracza[attacker]) , 1);
  3070. }
  3071. remove_entity(ent);
  3072. }
  3073. }
  3074.  
  3075. public DotykRakiety(ent)
  3076. {
  3077. if ( !is_valid_ent(ent))
  3078. return;
  3079.  
  3080. new attacker = entity_get_edict(ent, EV_ENT_owner);
  3081.  
  3082. new Float:fOrigin[3], iOrigin[3];
  3083. entity_get_vector( ent, EV_VEC_origin, fOrigin);
  3084. iOrigin[0] = floatround(fOrigin[0]);
  3085. iOrigin[1] = floatround(fOrigin[1]);
  3086. iOrigin[2] = floatround(fOrigin[2]);
  3087.  
  3088. message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
  3089. write_byte(TE_EXPLOSION);
  3090. write_coord(iOrigin[0]);
  3091. write_coord(iOrigin[1]);
  3092. write_coord(iOrigin[2]);
  3093. write_short(sprite_blast);
  3094. write_byte(32); // scale
  3095. write_byte(20); // framerate
  3096. write_byte(0);// flags
  3097. message_end();
  3098.  
  3099. new entlist[33];
  3100. new numfound = find_sphere_class(ent, "player", 230.0, entlist, 32);
  3101.  
  3102. for (new i=0; i < numfound; i++)
  3103. {
  3104. new pid = entlist[i];
  3105.  
  3106. if (!is_user_alive(pid) || get_user_team(attacker) == get_user_team(pid) || informacje_przedmiotu_gracza[pid][0] == 24)
  3107. continue;
  3108. ExecuteHam(Ham_TakeDamage, pid, ent, attacker, 55.0+float(inteligencja_gracza[attacker]) , 1);
  3109. }
  3110. remove_entity(ent);
  3111. }
  3112.  
  3113. public CurWeapon(id)
  3114. {
  3115. if(freezetime || !klasa_gracza[id])
  3116. return PLUGIN_CONTINUE;
  3117.  
  3118. new weapon = read_data(2);
  3119.  
  3120. if(informacje_przedmiotu_gracza[id][0] == 68 && maxClip[weapon] != -1)
  3121. set_user_clip(id, maxClip[weapon]);
  3122.  
  3123. UstawSzybkosc(id);
  3124.  
  3125. if(informacje_przedmiotu_gracza[id][0] == 82 && weapon != CSW_KNIFE)
  3126. engclient_cmd(id, "weapon_knife");
  3127.  
  3128. if(informacje_przedmiotu_gracza[id][0] == 78)
  3129. {
  3130. if(weapon == CSW_KNIFE)
  3131. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 8);
  3132. else
  3133. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
  3134. }
  3135.  
  3136. if(klasa_gracza[id] == Samuraj)
  3137. {
  3138. if(weapon == CSW_KNIFE)
  3139. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 122);
  3140. else
  3141. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
  3142. }
  3143.  
  3144. if(klasa_gracza[id] == EXTREME)
  3145. {
  3146. if(weapon == CSW_KNIFE)
  3147. set_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 8);
  3148. else
  3149. set_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 255);
  3150. }
  3151.  
  3152. if(weapon == CSW_C4)
  3153. podkladajacy = id;
  3154. return PLUGIN_CONTINUE;
  3155. }
  3156.  
  3157. public EmitSound(id, iChannel, szSound[], Float:fVol, Float:fAttn, iFlags, iPitch )
  3158. {
  3159. if(equal(szSound, "common/wpn_denyselect.wav"))
  3160. {
  3161. UzyjPrzedmiotu(id);
  3162. return FMRES_SUPERCEDE;
  3163. }
  3164.  
  3165. return FMRES_IGNORED;
  3166. }
  3167.  
  3168. public UzyjPrzedmiotu(id)
  3169. {
  3170. if((informacje_przedmiotu_gracza[id][0] == 19 || informacje_przedmiotu_gracza[id][0] == 45) && informacje_przedmiotu_gracza[id][1]>0)
  3171. {
  3172. set_user_health(id, maksymalne_zdrowie_gracza[id]);
  3173. informacje_przedmiotu_gracza[id][1]--;
  3174. }
  3175. if(informacje_przedmiotu_gracza[id][0] == 49 && informacje_przedmiotu_gracza[id][1]>0)
  3176. {
  3177. set_task(0.1,"clipon",id,"",0,"a",1);
  3178. informacje_przedmiotu_gracza[id][1]--;
  3179. }
  3180. if(informacje_przedmiotu_gracza[id][0] == 52 && informacje_przedmiotu_gracza[id][1]>0)
  3181. {
  3182. set_task(0.1,"godon",id,"",0,"a",1);
  3183. informacje_przedmiotu_gracza[id][1]--;
  3184. }
  3185.  
  3186. if(informacje_przedmiotu_gracza[id][1] == 1 && informacje_przedmiotu_gracza[id][0] == 75)
  3187. {
  3188. set_task(0.1,"clipon",id,"",0,"a",1);
  3189. informacje_przedmiotu_gracza[id][1] = 0;
  3190. }
  3191.  
  3192. if(informacje_przedmiotu_gracza[id][1] == 1 && informacje_przedmiotu_gracza[id][0] == 89)
  3193. {
  3194. set_task(0.1,"clipon",id,"",0,"a",1);
  3195. informacje_przedmiotu_gracza[id][1] = 0;
  3196. }
  3197.  
  3198. if(informacje_przedmiotu_gracza[id][1] == 1 && informacje_przedmiotu_gracza[id][0] == 76)
  3199. {
  3200. new Origin[3], DstOrigin[3];
  3201. get_user_origin(id, Origin);
  3202. get_user_origin(id, DstOrigin, 3);
  3203.  
  3204. DstOrigin[0] += DstOrigin[0]-Origin[0] < 0 ? 50 : -50;
  3205. DstOrigin[1] += DstOrigin[1]-Origin[1] < 0 ? 50 : -50;
  3206. DstOrigin[2] += DstOrigin[2]-Origin[2]-50 < 0 ? 50 : -50;
  3207.  
  3208. informacje_przedmiotu_gracza[id][1] = 0;
  3209.  
  3210. set_user_origin(id, DstOrigin);
  3211. }
  3212.  
  3213. if(informacje_przedmiotu_gracza[id][1] == 1 && informacje_przedmiotu_gracza[id][0] == 84)
  3214. {
  3215. static meekstone_gracza[33];
  3216. if(is_valid_ent(meekstone_gracza[id]))
  3217. {
  3218. informacje_przedmiotu_gracza[id][1] = 0;
  3219.  
  3220. new Float:fOrigin[3];
  3221. entity_get_vector(meekstone_gracza[id], EV_VEC_origin, fOrigin);
  3222.  
  3223. new iOrigin[3];
  3224. for(new i=0;i<3;i++)
  3225. iOrigin[i] = floatround(fOrigin[i]);
  3226.  
  3227. message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
  3228. write_byte(TE_EXPLOSION);
  3229. write_coord(iOrigin[0]);
  3230. write_coord(iOrigin[1]);
  3231. write_coord(iOrigin[2]);
  3232. write_short(sprite_blast);
  3233. write_byte(32);
  3234. write_byte(20);
  3235. write_byte(0);
  3236. message_end();
  3237.  
  3238. message_begin( MSG_BROADCAST, SVC_TEMPENTITY, iOrigin );
  3239. write_byte( TE_BEAMCYLINDER );
  3240. write_coord( iOrigin[0] );
  3241. write_coord( iOrigin[1] );
  3242. write_coord( iOrigin[2] );
  3243. write_coord( iOrigin[0] );
  3244. write_coord( iOrigin[1] + 250 );
  3245. write_coord( iOrigin[2] + 250 );
  3246. write_short( sprite_white );
  3247. write_byte( 0 );
  3248. write_byte( 0 );
  3249. write_byte( 10 );
  3250. write_byte( 10 );
  3251. write_byte( 255 );
  3252. write_byte( 255 );
  3253. write_byte( 100 );
  3254. write_byte( 100 );
  3255. write_byte( 128 );
  3256. write_byte( 0 );
  3257. message_end();
  3258.  
  3259. new entlist[33];
  3260. new numfound = find_sphere_class(meekstone_gracza[id], "player", 250.0 , entlist, 32);
  3261.  
  3262. for (new i=0; i < numfound; i++)
  3263. {
  3264. new pid = entlist[i];
  3265.  
  3266. if (is_user_alive(pid) && get_user_team(id) != get_user_team(pid))
  3267. ExecuteHam(Ham_TakeDamage, pid, meekstone_gracza[id], id, 95.0+inteligencja_gracza[id]*0.8, 1);
  3268.  
  3269. }
  3270. remove_entity(meekstone_gracza[id]);
  3271. return PLUGIN_CONTINUE;
  3272. }
  3273.  
  3274. new Float:origin[3];
  3275. entity_get_vector(id, EV_VEC_origin, origin);
  3276.  
  3277. meekstone_gracza[id] = create_entity("info_target");
  3278. entity_set_string(meekstone_gracza[id], EV_SZ_classname, "meekstone");
  3279. entity_set_edict(meekstone_gracza[id], EV_ENT_owner, id);
  3280. entity_set_int(meekstone_gracza[id], EV_INT_movetype, MOVETYPE_TOSS);
  3281. entity_set_origin(meekstone_gracza[id], origin);
  3282. entity_set_int(meekstone_gracza[id], EV_INT_solid, SOLID_BBOX);
  3283.  
  3284. entity_set_model(meekstone_gracza[id], "models/w_backpack.mdl");
  3285. entity_set_size(meekstone_gracza[id], Float:{-16.0,-16.0,0.0}, Float:{16.0,16.0,2.0})
  3286.  
  3287. drop_to_floor(meekstone_gracza[id])
  3288.  
  3289. }
  3290.  
  3291. if(informacje_przedmiotu_gracza[id][0] == 87 && informacje_przedmiotu_gracza[id][1])
  3292. {
  3293. informacje_przedmiotu_gracza[id][1] = 0
  3294. }
  3295.  
  3296. if(informacje_przedmiotu_gracza[id][0] == 90 && !zatrzymaj_czas)
  3297. {
  3298. zatrzymaj_czas = id
  3299. set_task(3.0, "Pusc")
  3300. UsunPrzedmiot(id)
  3301. }
  3302.  
  3303. if(ilosc_apteczek_gracza[id] > 0)
  3304. {
  3305. StworzApteczke(id)
  3306. }
  3307.  
  3308. if(ilosc_rakiet_gracza[id] > 0)
  3309. {
  3310. StworzRakiete(id)
  3311. }
  3312.  
  3313. if(ilosc_min_gracza[id] > 0)
  3314. {
  3315. PostawMine(id)
  3316. }
  3317.  
  3318. if(ilosc_dynamitow_gracza[id] > 0)
  3319. {
  3320. PolozDynamit(id)
  3321. }
  3322.  
  3323. return PLUGIN_HANDLED
  3324. }
  3325.  
  3326. public Pusc()
  3327. {
  3328. zatrzymaj_czas = 0
  3329. }
  3330.  
  3331. public ZapiszDane(id)
  3332. {
  3333. new vaultkey[64],vaultdata[256];
  3334. format(vaultkey,63,"%s-%i-cod", nazwa_gracza[id], klasa_gracza[id]);
  3335. format(vaultdata,255,"%i#%i#%i#%i#%i#%i", doswiadczenie_gracza[id], poziom_gracza[id], inteligencja_gracza[id], zdrowie_gracza[id], wytrzymalosc_gracza[id], kondycja_gracza[id]);
  3336. nvault_set(g_vault,vaultkey,vaultdata);
  3337. }
  3338.  
  3339. public WczytajDane(id, klasa)
  3340. {
  3341. new vaultkey[64],vaultdata[256];
  3342. format(vaultkey,63,"%s-%i-cod", nazwa_gracza[id], klasa);
  3343. format(vaultdata,255,"%i#%i#%i#%i#%i#%i", doswiadczenie_gracza[id], poziom_gracza[id], inteligencja_gracza[id], zdrowie_gracza[id], wytrzymalosc_gracza[id], kondycja_gracza[id]);
  3344. nvault_get(g_vault,vaultkey,vaultdata,255);
  3345.  
  3346. replace_all(vaultdata, 255, "#", " ");
  3347.  
  3348. new doswiadczeniegracza[32], poziomgracza[32], inteligencjagracza[32], silagracza[32], zrecznoscgracza[32], zwinnoscgracza[32];
  3349.  
  3350. parse(vaultdata, doswiadczeniegracza, 31, poziomgracza, 31, inteligencjagracza, 31, silagracza, 31, zrecznoscgracza, 31, zwinnoscgracza, 31);
  3351.  
  3352. doswiadczenie_gracza[id] = str_to_num(doswiadczeniegracza);
  3353. poziom_gracza[id] = str_to_num(poziomgracza)>0?str_to_num(poziomgracza):1;
  3354. inteligencja_gracza[id] = str_to_num(inteligencjagracza);
  3355. zdrowie_gracza[id] = str_to_num(silagracza);
  3356. wytrzymalosc_gracza[id] = str_to_num(zrecznoscgracza);
  3357. kondycja_gracza[id] = str_to_num(zwinnoscgracza);
  3358. punkty_gracza[id] = (poziom_gracza[id]-1)*2-inteligencja_gracza[id]-zdrowie_gracza[id]-wytrzymalosc_gracza[id]-kondycja_gracza[id];
  3359. }
  3360. public WyrzucPrzedmiot(id)
  3361. {
  3362. if(informacje_przedmiotu_gracza[id][0])
  3363. {
  3364. ColorChat(id, GREEN, "[COD:MW3] ^1 Eldoptad a targyad : ^3%s.", nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]])
  3365. UsunPrzedmiot(id)
  3366. }
  3367. else
  3368. {
  3369. ColorChat(id, GREEN, "[COD:MW3] ^1 Nincsen targyad")
  3370. }
  3371. }
  3372.  
  3373. public UsunPrzedmiot(id)
  3374. {
  3375. informacje_przedmiotu_gracza[id][0] = 0
  3376. informacje_przedmiotu_gracza[id][1] = 0
  3377.  
  3378. if(is_user_alive(id))
  3379. {
  3380. set_user_footsteps(id, 0)
  3381.  
  3382. if(!informacje_przedmiotu_gracza[id][0] && klasa_gracza[id] != Partizan)
  3383. {
  3384. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 255);
  3385. }
  3386.  
  3387. ZmienUbranie(id, 1)
  3388. }
  3389. }
  3390.  
  3391. public DajPrzedmiot(id, przedmiot)
  3392. {
  3393. UsunPrzedmiot(id)
  3394. informacje_przedmiotu_gracza[id][0] = przedmiot
  3395. new name[32]
  3396. get_user_name(id, name, 31)
  3397. ColorChat(id, NORMAL, "^4[COD:MW3] ^1Kaptal: ^3%s.", nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]]);
  3398. wytrzymalosc_itemu[id] = 160;
  3399. switch(przedmiot)
  3400. {
  3401. case 1: set_user_footsteps(id, 1);
  3402. case 2: informacje_przedmiotu_gracza[id][1] = random_num(3,6);
  3403. case 3: informacje_przedmiotu_gracza[id][1] = random_num(6, 11);
  3404. case 5: informacje_przedmiotu_gracza[id][1] = random_num(6, 9);
  3405. case 6:
  3406. {
  3407. informacje_przedmiotu_gracza[id][1] = random_num(120, 170);
  3408. set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, informacje_przedmiotu_gracza[id][1]);
  3409. }
  3410. case 7: informacje_przedmiotu_gracza[id][1] = random_num(2, 4);
  3411. case 8:
  3412. {
  3413. if(klasa_gracza[id] == Strelac)
  3414. DajPrzedmiot(id, random_num(1, sizeof nazwy_przedmiotow-1));
  3415. }
  3416. case 9:
  3417. {
  3418. informacje_przedmiotu_gracza[id][1] = random_num(1, 3);
  3419. ZmienUbranie(id, 0);
  3420. }
  3421. case 10: informacje_przedmiotu_gracza[id][1] = random_num(4, 8);
  3422. case 12: informacje_przedmiotu_gracza[id][1] = random_num(1, 4);
  3423. case 15:
  3424. {
  3425. if(klasa_gracza[id] == Rambo)
  3426. DajPrzedmiot(id, random_num(1, sizeof nazwy_przedmiotow-1));
  3427. }
  3428. case 16: set_task(5.0, "WyszkolenieSanitarne", id+ZADANIE_WYSZKOLENIE_SANITARNE);
  3429. case 17: set_user_armor(id, 500);
  3430. case 18:
  3431. {
  3432. maksymalne_zdrowie_gracza[id] += 100;
  3433. szybkosc_gracza[id] -= 0.4;
  3434. }
  3435. case 19: informacje_przedmiotu_gracza[id][1] = 1;
  3436. case 25:
  3437. {
  3438. maksymalne_zdrowie_gracza[id] += 50;
  3439. szybkosc_gracza[id] -= 0.3;
  3440. }
  3441. case 26: informacje_przedmiotu_gracza[id][1] = random_num(3, 6);
  3442. case 27: informacje_przedmiotu_gracza[id][1] = 3;
  3443. case 29:
  3444. {
  3445. maksymalne_zdrowie_gracza[id] += 50;
  3446. szybkosc_gracza[id] += 0.2;
  3447. }
  3448. case 30:
  3449. {
  3450. maksymalne_zdrowie_gracza[id] += 100;
  3451. szybkosc_gracza[id] -= 0.7;
  3452. }
  3453. case 31:
  3454. {
  3455. informacje_przedmiotu_gracza[id][1] = random_num(1, 3);
  3456. ZmienUbranie(id, 0);
  3457. }
  3458. case 34: informacje_przedmiotu_gracza[id][1] = random_num(2, 7);
  3459. case 35: informacje_przedmiotu_gracza[id][1] = random_num(3, 9);
  3460. case 36: maksymalne_zdrowie_gracza[id] = 10;
  3461. case 37: maksymalne_zdrowie_gracza[id] += 100;
  3462. case 38: ilosc_apteczek_gracza[id] = 5;
  3463. case 39: set_user_gravity(id, 0.5);
  3464. case 40: informacje_przedmiotu_gracza[id][1] = 1;
  3465. case 41: set_task(5.0, "WyszkolenieSanitarne", id+ZADANIE_WYSZKOLENIE_SANITARNE);
  3466. case 43: szybkosc_gracza[id] += 0.3;
  3467. case 42:
  3468. {
  3469. set_user_footsteps(id, 1);
  3470. maksymalne_zdrowie_gracza[id] += 100;
  3471. }
  3472. case 45: informacje_przedmiotu_gracza[id][1] = 1;
  3473. case 46:
  3474. {
  3475. informacje_przedmiotu_gracza[id][1] = random_num(4, 9);
  3476. set_user_armor(id, 500);
  3477. }
  3478. case 47: informacje_przedmiotu_gracza[id][1] = 5;
  3479. case 49: informacje_przedmiotu_gracza[id][1] = 1;
  3480. case 50:
  3481. {
  3482. set_user_footsteps(id, 1);
  3483. maksymalne_zdrowie_gracza[id] += 100;
  3484. szybkosc_gracza[id] += 0.4;
  3485. }
  3486. case 52: informacje_przedmiotu_gracza[id][1] = 1;
  3487. case 54:
  3488. {
  3489. set_user_footsteps(id, 1);
  3490. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 1);
  3491. set_user_gravity(id, 0.8);
  3492. }
  3493. case 55:
  3494. {
  3495. informacje_przedmiotu_gracza[id][1] = random_num(1, 3);
  3496. ZmienUbranie(id, 0);
  3497. }
  3498. case 56: informacje_przedmiotu_gracza[id][1] = random_num(7, 11);
  3499. case 57: informacje_przedmiotu_gracza[id][1] = random_num(7, 11);
  3500. case 58: set_user_footsteps(id, 1);
  3501. case 59: set_user_footsteps(id, 1);
  3502. case 60: informacje_przedmiotu_gracza[id][1] = random_num(3, 7);
  3503. case 61: ilosc_min_gracza[id] += 5;
  3504. case 62: informacje_przedmiotu_gracza[id][1] = random_num(4, 8);
  3505. case 64: cs_set_user_money(id,16000);
  3506. case 66: wytrzymalosc_itemu[id] = 80;
  3507. case 75: informacje_przedmiotu_gracza[id][1] = 1;
  3508. case 76: informacje_przedmiotu_gracza[id][1] = 1;
  3509. case 78: set_user_gravity(id, 0.5);
  3510. case 79:
  3511. {
  3512. szybkosc_gracza[id] += 10;
  3513. ilosc_min_gracza[id] += 3;
  3514. }
  3515. case 80:
  3516. {
  3517. give_item(id, "weapon_m3");
  3518. informacje_przedmiotu_gracza[id][1] = random_num(50, 100);
  3519. }
  3520. case 84: informacje_przedmiotu_gracza[id][1] = 1;
  3521. case 85: ResetHUD(id);
  3522. case 87: informacje_przedmiotu_gracza[id][1] = random_num(2, 4);
  3523. case 89:
  3524. {
  3525. szybkosc_gracza[id] *= 1.8;
  3526. UstawSzybkosc(id);
  3527. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 1);
  3528. give_item(id, "weapon_hegrenade");
  3529. cs_set_user_bpammo(id, CSW_HEGRENADE, 15);
  3530. informacje_przedmiotu_gracza[id][1] = 1;
  3531. }
  3532. }
  3533. }
  3534.  
  3535. public OpisPrzedmiotu(id)
  3536. {
  3537. new opis_przedmiotu[128];
  3538. new losowa_wartosc[3];
  3539. num_to_str(informacje_przedmiotu_gracza[id][1], losowa_wartosc, 2);
  3540. format(opis_przedmiotu, 127, opisy_przedmiotow[informacje_przedmiotu_gracza[id][0]]);
  3541. replace_all(opis_przedmiotu, 127, "LW", losowa_wartosc);
  3542.  
  3543. ColorChat(id, NORMAL, "^4Targy:: ^1%s.", nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]]);
  3544. ColorChat(id, NORMAL, "^4Leiras: ^1%s.", opis_przedmiotu);
  3545.  
  3546. }
  3547.  
  3548. public Wskrzes(id)
  3549. {
  3550. id-=ZADANIE_WSKRZES;
  3551. ExecuteHamB(Ham_CS_RoundRespawn, id);
  3552. }
  3553.  
  3554. public SprawdzPoziom(id)
  3555. {
  3556. if(poziom_gracza[id] < 4000)
  3557. {
  3558. while(doswiadczenie_gracza[id] >= doswiadczenie_poziomu[poziom_gracza[id]])
  3559. {
  3560. poziom_gracza[id]++;
  3561. set_hudmessage(0, 255, 0, -1.0, 0.25, 0, 1.0, 2.0, 0.1, 0.2, 4);
  3562. ShowSyncHudMsg(id, SyncHudObj3, "Gratulalok szintet leptel !");
  3563. client_cmd(id, "spk mw/levelup");
  3564. }
  3565.  
  3566. while(doswiadczenie_gracza[id] < doswiadczenie_poziomu[poziom_gracza[id] - 1])
  3567. poziom_gracza[id]--
  3568.  
  3569. punkty_gracza[id] = (poziom_gracza[id]-1)*2-inteligencja_gracza[id]-zdrowie_gracza[id]-wytrzymalosc_gracza[id]-kondycja_gracza[id];
  3570. }
  3571. ZapiszDane(id)
  3572. }
  3573.  
  3574. public message_health(msg_id,msg_dest,msg_entity)
  3575. {
  3576. if(pev(msg_entity, pev_health) >= 255)
  3577. {
  3578. set_msg_arg_int(1, ARG_BYTE, 255)
  3579. }
  3580.  
  3581. return PLUGIN_CONTINUE
  3582. }
  3583.  
  3584. public PokazInformacje(id)
  3585. {
  3586. id -= ZADANIE_POKAZ_INFORMACJE
  3587.  
  3588. set_task(0.1, "PokazInformacje", id + ZADANIE_POKAZ_INFORMACJE)
  3589.  
  3590. if(!is_user_alive(id))
  3591. {
  3592. new target = entity_get_int(id, EV_INT_iuser2)
  3593.  
  3594. if(target == 0)
  3595. {
  3596. return PLUGIN_CONTINUE
  3597. }
  3598.  
  3599. set_hudmessage(-122, 255, 0, 0.6, -1.0, 0, 0.0, 0.3, 0.0, 0.0, 2);
  3600. ShowSyncHudMsg(id, SyncHudObj, "[S][M]Osztaly : %s^n[S][M]Exp : %i / %i^n[S][M]Szint : %i^n[S][M]Targy : %s ^n[S][M]Olesek: x%i", nazwy_klas[klasa_gracza[target]], doswiadczenie_gracza[target], doswiadczenie_poziomu[poziom_gracza[target]], poziom_gracza[target], nazwy_przedmiotow[informacje_przedmiotu_gracza[target][0]], licznik_zabic[target]);
  3601.  
  3602. return PLUGIN_CONTINUE
  3603. }
  3604.  
  3605. set_hudmessage(0, 255, 0, 0.02, 0.17, 0, 0.0, 0.3, 0.0, 0.0);
  3606. ShowSyncHudMsg(id, SyncHudObj, "=[S][M][Osztaly : %s]=^n=[S][M][EXP: %i / %i]=^n=[S][M][Szint : %i]=^n=[S][M][Targy: %s]=^n=[S][M][Ero: %i]=^n=[S][M][Elet: %i]=^n=[S][M][Olesek: x%i]=^n", nazwy_klas[klasa_gracza[id]], doswiadczenie_gracza[id], doswiadczenie_poziomu[poziom_gracza[id]], poziom_gracza[id], nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]],wytrzymalosc_itemu[id], get_user_health(id), licznik_zabic[id]);
  3607.  
  3608. return PLUGIN_CONTINUE;
  3609. }
  3610.  
  3611. public PokazReklame(id)
  3612. {
  3613. id -= ZADANIE_POKAZ_REKLAME
  3614.  
  3615. if(-1 < get_user_team(id) < 4)
  3616. {
  3617.  
  3618. }
  3619.  
  3620. }
  3621.  
  3622. public UstawSzybkosc(id)
  3623. {
  3624. id -= id > 32 ? ZADANIE_USTAW_SZYBKOSC : 0
  3625.  
  3626. if(klasa_gracza[id])
  3627. {
  3628. set_user_maxspeed(id, szybkosc_gracza[id])
  3629. }
  3630. }
  3631.  
  3632. public ZmienUbranie(id,reset)
  3633. {
  3634. if (id < 1 || id > 32 || !is_user_connected(id))
  3635. return PLUGIN_CONTINUE
  3636.  
  3637. if (reset)
  3638. cs_reset_user_model(id);
  3639. else
  3640. {
  3641. new num = random_num(0,3);
  3642. switch(get_user_team(id))
  3643. {
  3644. case 1: cs_set_user_model(id, Ubrania_CT[num]);
  3645. case 2:cs_set_user_model(id, Ubrania_Terro[num]);
  3646. }
  3647. }
  3648.  
  3649. return PLUGIN_CONTINUE;
  3650. }
  3651. public WylaczPomoc(id)
  3652. {
  3653. if(pomocs[id] == true)
  3654. {
  3655. pomocs[id] = false;
  3656. set_hudmessage(255, 0, 0, -1.0, 0.01)
  3657. show_hudmessage(id, "Pomoc je onemogucena")
  3658. }
  3659. else if(pomocs[id] == false)
  3660. {
  3661. pomocs[id] = true;
  3662. Pomoc();
  3663. set_hudmessage(255, 0, 0, -1.0, 0.01)
  3664. show_hudmessage(id, "Pomoc Ukljucena")
  3665. }
  3666. }
  3667. public Pomoc()
  3668. {
  3669. switch(random(7))
  3670. {
  3671. case 0:
  3672. {
  3673. ColorChat(0, GREEN, "[COD:MW3] ^1Kaszt Valtashoz ird be /fegyo vagy /osztaly ")
  3674. }
  3675. case 1:
  3676. {
  3677. ColorChat(0, GREEN, "[COD:MW3] ^1Ha odadanad valakinek a targyad irdbe /adas")
  3678. }
  3679. case 2:
  3680. {
  3681. ColorChat(0, GREEN, "[COD:MW3] ^1Ha van Rake'ta'd vagy Dinamitod vagy Akna'd E-vel tudod bekapcsolni")
  3682. }
  3683. case 3:
  3684. {
  3685. ColorChat(0, GREEN, "[COD:MW3] ^1Ha Objektumod elakarod dobni ird be ^3/dobas")
  3686. }
  3687. case 4:
  3688. {
  3689. ColorChat(0, GREEN, "[COD:MW3] ^1Ha Objektumod elakarod dobni ird be ^3/dobas")
  3690. }
  3691. case 5:
  3692. {
  3693. ColorChat(0, GREEN, "[COD:MW3] ^1Ha van Rake'ta'd vagy Dinamitod vagy Akna'd E-vel tudod bekapcsolni")
  3694. }
  3695. case 6:
  3696. {
  3697. ColorChat(0, GREEN, "[COD:MW3] ^1Ha cucot akarsz venni ird be ^3/shop")
  3698. }
  3699. case 7:
  3700. {
  3701. ColorChat(0, GREEN, "[COD:MW3] ^1Ha cucot akarsz venni ird be ^3/shop")
  3702. }
  3703. }
  3704. set_task(40.0, "Pomoc")
  3705. }
  3706. public cmd_setlvl(id, level, cid)
  3707. {
  3708. if(!cmd_access(id,level,cid,3))
  3709. return PLUGIN_HANDLED;
  3710. new arg1[33];
  3711. new arg2[6];
  3712. read_argv(1, arg1, 32);
  3713. read_argv(2, arg2, 5);
  3714. new player = cmd_target(id, arg1);
  3715. if(!is_user_connected(player))
  3716. return PLUGIN_HANDLED;
  3717. new value = str_to_num(arg2)-1;
  3718.  
  3719. doswiadczenie_gracza[player] = doswiadczenie_poziomu[value];
  3720. poziom_gracza[player] = 0;
  3721. SprawdzPoziom(player);
  3722. return PLUGIN_HANDLED;
  3723. }
  3724.  
  3725. public DotykBroni(weapon,id)
  3726. {
  3727. new model[23];
  3728. entity_get_string(weapon, EV_SZ_model, model, 22);
  3729. if (!is_user_connected(id) || entity_get_edict(weapon, EV_ENT_owner) == id || equal(model, "models/w_backpack.mdl"))
  3730. return HAM_IGNORED;
  3731. return HAM_SUPERCEDE;
  3732. }
  3733.  
  3734. public BlokujKomende()
  3735. return PLUGIN_HANDLED;
  3736.  
  3737. stock bool:UTIL_In_FOV(id,target)
  3738. {
  3739. if (Find_Angle(id,target,9999.9) > 0.0)
  3740. return true;
  3741.  
  3742. return false;
  3743. }
  3744.  
  3745. stock Float:Find_Angle(Core,Target,Float:dist)
  3746. {
  3747. new Float:vec2LOS[2];
  3748. new Float:flDot;
  3749. new Float:CoreOrigin[3];
  3750. new Float:TargetOrigin[3];
  3751. new Float:CoreAngles[3];
  3752.  
  3753. pev(Core,pev_origin,CoreOrigin);
  3754. pev(Target,pev_origin,TargetOrigin);
  3755.  
  3756. if (get_distance_f(CoreOrigin,TargetOrigin) > dist)
  3757. return 0.0;
  3758.  
  3759. pev(Core,pev_angles, CoreAngles);
  3760.  
  3761. for ( new i = 0; i < 2; i++ )
  3762. vec2LOS[i] = TargetOrigin[i] - CoreOrigin[i];
  3763.  
  3764. new Float:veclength = Vec2DLength(vec2LOS);
  3765.  
  3766. //Normalize V2LOS
  3767. if (veclength <= 0.0)
  3768. {
  3769. vec2LOS[0] = 0.0;
  3770. vec2LOS[1] = 0.0;
  3771. }
  3772. else
  3773. {
  3774. new Float:flLen = 1.0 / veclength;
  3775. vec2LOS[0] = vec2LOS[0]*flLen;
  3776. vec2LOS[1] = vec2LOS[1]*flLen;
  3777. }
  3778.  
  3779. //Do a makevector to make v_forward right
  3780. engfunc(EngFunc_MakeVectors,CoreAngles);
  3781.  
  3782. new Float:v_forward[3];
  3783. new Float:v_forward2D[2];
  3784. get_global_vector(GL_v_forward, v_forward);
  3785.  
  3786. v_forward2D[0] = v_forward[0];
  3787. v_forward2D[1] = v_forward[1];
  3788.  
  3789. flDot = vec2LOS[0]*v_forward2D[0]+vec2LOS[1]*v_forward2D[1];
  3790.  
  3791. if ( flDot > 0.5 )
  3792. {
  3793. return flDot;
  3794. }
  3795.  
  3796. return 0.0;
  3797. }
  3798.  
  3799. stock Float:Vec2DLength( Float:Vec[2] )
  3800. {
  3801. return floatsqroot(Vec[0]*Vec[0] + Vec[1]*Vec[1] );
  3802. }
  3803.  
  3804. stock Display_Fade(id,duration,holdtime,fadetype,red,green,blue,alpha)
  3805. {
  3806. message_begin( MSG_ONE, g_msg_screenfade,{0,0,0},id );
  3807. write_short( duration ); // Duration of fadeout
  3808. write_short( holdtime ); // Hold time of color
  3809. write_short( fadetype ); // Fade type
  3810. write_byte ( red ); // Red
  3811. write_byte ( green ); // Green
  3812. write_byte ( blue ); // Blue
  3813. write_byte ( alpha ); // Alpha
  3814. message_end();
  3815. }
  3816.  
  3817. stock set_user_clip(id, ammo)
  3818. {
  3819. new weaponname[32], weaponid = -1, weapon = get_user_weapon(id, _, _);
  3820. get_weaponname(weapon, weaponname, 31);
  3821. while ((weaponid = find_ent_by_class(weaponid, weaponname)) != 0)
  3822. if(entity_get_edict(weaponid, EV_ENT_owner) == id)
  3823. {
  3824. set_pdata_int(weaponid, 51, ammo, 4);
  3825. return weaponid;
  3826. }
  3827. return 0;
  3828. }
  3829.  
  3830. public client_death(killer,victim,weapon,hitplace,TK) {
  3831.  
  3832. if(!killer || !victim || TK)
  3833. return;
  3834.  
  3835. if(hitplace == HIT_HEAD)
  3836. {
  3837.  
  3838. doswiadczenie_gracza[killer] += doswiadczenie_za_hs;
  3839.  
  3840. ColorChat(killer, RED, "[COD:MW3] ^x01 Megoltel egy embert!! Csak igy tavabb!", doswiadczenie_za_hs);
  3841.  
  3842. }
  3843. }
  3844.  
  3845. public message_clcorpse()
  3846. return PLUGIN_HANDLED
  3847.  
  3848. public event_hltv()
  3849. {
  3850. remove_entity_name("fake_corpse")
  3851.  
  3852. static players[32], num
  3853. get_players(players, num, "a")
  3854. for(new i = 0; i < num; ++i)
  3855. reset_player(players[i])
  3856. }
  3857.  
  3858. public reset_player(id)
  3859. {
  3860. if(!is_user_connected(id))
  3861. return PLUGIN_HANDLED;
  3862. remove_task(TASKID_REVIVE + id)
  3863. remove_task(TASKID_RESPAWN + id)
  3864. remove_task(TASKID_CHECKRE + id)
  3865. remove_task(TASKID_CHECKST + id)
  3866. remove_task(TASKID_ORIGIN + id)
  3867. remove_task(TASKID_SETUSER + id)
  3868.  
  3869. msg_bartime(id, 0)
  3870. g_revive_delay[id] = 0.0
  3871. g_wasducking[id] = false
  3872. g_body_origin[id] = Float:{0.0, 0.0, 0.0}
  3873. return PLUGIN_HANDLED;
  3874. }
  3875.  
  3876. public event_death()
  3877. {
  3878. new id = read_data(2)
  3879.  
  3880. reset_player(id)
  3881.  
  3882. static Float:minsize[3]
  3883. pev(id, pev_mins, minsize)
  3884.  
  3885. if(minsize[2] == -18.0)
  3886. g_wasducking[id] = true
  3887. else
  3888. g_wasducking[id] = false
  3889.  
  3890. set_task(0.5, "task_check_dead_flag", id)
  3891.  
  3892. if(read_data(1)<=maxplayers && read_data(1) && read_data(1)!=read_data(2)) cs_set_user_money(read_data(1),cs_get_user_money(read_data(1)) + get_pcvar_num(mkb) - 300)
  3893. }
  3894.  
  3895. public fwd_playerpostthink(id)
  3896. {
  3897. if(!is_user_connected(id) || !g_haskit[id])
  3898. return FMRES_IGNORED
  3899.  
  3900. if(!is_user_alive(id))
  3901. {
  3902. msg_statusicon(id, ICON_HIDE)
  3903. return FMRES_IGNORED
  3904. }
  3905.  
  3906. new body = find_dead_body(id)
  3907. if(is_valid_ent(body))
  3908. {
  3909. new lucky_bastard = pev(body, pev_owner)
  3910.  
  3911. if(!is_user_connected(lucky_bastard))
  3912. return FMRES_IGNORED
  3913.  
  3914. new lb_team = get_user_team(lucky_bastard)
  3915. new rev_team = get_user_team(id)
  3916. if(lb_team == 1 || lb_team == 2 && lb_team == rev_team)
  3917. msg_statusicon(id, ICON_FLASH)
  3918. }
  3919. else
  3920. msg_statusicon(id, ICON_SHOW)
  3921.  
  3922. return FMRES_IGNORED
  3923. }
  3924.  
  3925. public task_check_dead_flag(id)
  3926. {
  3927. if(!is_user_connected(id))
  3928. return
  3929.  
  3930. if(pev(id, pev_deadflag) == DEAD_DEAD)
  3931. create_fake_corpse(id)
  3932. else
  3933. set_task(0.5, "task_check_dead_flag", id)
  3934. }
  3935.  
  3936. public create_fake_corpse(id)
  3937. {
  3938. set_pev(id, pev_effects, EF_NODRAW)
  3939.  
  3940. static model[32]
  3941. cs_get_user_model(id, model, 31)
  3942.  
  3943. static player_model[64]
  3944. format(player_model, 63, "models/player/%s/%s.mdl", model, model)
  3945.  
  3946. static Float: player_origin[3]
  3947. pev(id, pev_origin, player_origin)
  3948.  
  3949. static Float:mins[3]
  3950. mins[0] = -16.0
  3951. mins[1] = -16.0
  3952. mins[2] = -34.0
  3953.  
  3954. static Float:maxs[3]
  3955. maxs[0] = 16.0
  3956. maxs[1] = 16.0
  3957. maxs[2] = 34.0
  3958.  
  3959. if(g_wasducking[id])
  3960. {
  3961. mins[2] /= 2
  3962. maxs[2] /= 2
  3963. }
  3964.  
  3965. static Float:player_angles[3]
  3966. pev(id, pev_angles, player_angles)
  3967. player_angles[2] = 0.0
  3968.  
  3969. new sequence = pev(id, pev_sequence)
  3970.  
  3971. new ent = create_entity("info_target")
  3972. if(ent)
  3973. {
  3974. set_pev(ent, pev_classname, "fake_corpse")
  3975. engfunc(EngFunc_SetModel, ent, player_model)
  3976. engfunc(EngFunc_SetOrigin, ent, player_origin)
  3977. engfunc(EngFunc_SetSize, ent, mins, maxs)
  3978. set_pev(ent, pev_solid, SOLID_TRIGGER)
  3979. set_pev(ent, pev_movetype, MOVETYPE_TOSS)
  3980. set_pev(ent, pev_owner, id)
  3981. set_pev(ent, pev_angles, player_angles)
  3982. set_pev(ent, pev_sequence, sequence)
  3983. set_pev(ent, pev_frame, 9999.9)
  3984. }
  3985. }
  3986.  
  3987. public fwd_emitsound(id, channel, sound[])
  3988. {
  3989. if(!is_user_alive(id) || !g_haskit[id])
  3990. return FMRES_IGNORED
  3991.  
  3992. if(!equali(sound, "common/wpn_denyselect.wav"))
  3993. return FMRES_IGNORED
  3994.  
  3995. if(task_exists(TASKID_REVIVE + id))
  3996. return FMRES_IGNORED
  3997.  
  3998. if(!(get_user_button(id) & IN_USE))
  3999. {
  4000. return FMRES_IGNORED
  4001. }
  4002.  
  4003. new body = find_dead_body(id)
  4004. if(!is_valid_ent(body))
  4005. return FMRES_IGNORED
  4006.  
  4007. new lucky_bastard = pev(body, pev_owner)
  4008. new lb_team = get_user_team(lucky_bastard)
  4009. new rev_team = get_user_team(id)
  4010. if(lb_team != 1 && lb_team != 2 || lb_team != rev_team)
  4011. return FMRES_IGNORED
  4012.  
  4013. static name[32]
  4014. get_user_name(lucky_bastard, name, 31)
  4015. client_print(id, print_chat, "Reanimacja %s", name)
  4016.  
  4017. new revivaltime = get_pcvar_num(cvar_revival_time)
  4018. msg_bartime(id, revivaltime)
  4019.  
  4020. new Float:gametime = get_gametime()
  4021. g_revive_delay[id] = gametime + float(revivaltime) - 0.01
  4022.  
  4023. emit_sound(id, CHAN_AUTO, SOUND_START, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
  4024. set_task(0.0, "task_revive", TASKID_REVIVE + id)
  4025.  
  4026. return FMRES_SUPERCEDE
  4027. }
  4028.  
  4029. public task_revive(taskid)
  4030. {
  4031. new id = taskid - TASKID_REVIVE
  4032.  
  4033. if(!is_user_alive(id))
  4034. {
  4035. failed_revive(id)
  4036. return FMRES_IGNORED
  4037. }
  4038.  
  4039. if(!(get_user_button(id) & IN_USE))
  4040. {
  4041. failed_revive(id)
  4042. return FMRES_IGNORED
  4043. }
  4044.  
  4045. new body = find_dead_body(id)
  4046. if(!is_valid_ent(body))
  4047. {
  4048. failed_revive(id)
  4049. return FMRES_IGNORED
  4050. }
  4051.  
  4052. new lucky_bastard = pev(body, pev_owner)
  4053. if(!is_user_connected(lucky_bastard))
  4054. {
  4055. failed_revive(id)
  4056. return FMRES_IGNORED
  4057. }
  4058.  
  4059. new lb_team = get_user_team(lucky_bastard)
  4060. new rev_team = get_user_team(id)
  4061. if(lb_team != 1 && lb_team != 2 || lb_team != rev_team)
  4062. {
  4063. failed_revive(id)
  4064. return FMRES_IGNORED
  4065. }
  4066.  
  4067. static Float:velocity[3]
  4068. pev(id, pev_velocity, velocity)
  4069. velocity[0] = 0.0
  4070. velocity[1] = 0.0
  4071. set_pev(id, pev_velocity, velocity)
  4072.  
  4073. new Float:gametime = get_gametime()
  4074. if(g_revive_delay[id] < gametime)
  4075. {
  4076. if(findemptyloc(body, 10.0))
  4077. {
  4078. remove_entity(body)
  4079. emit_sound(id, CHAN_AUTO, SOUND_FINISHED, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
  4080. set_task(0.1, "task_respawn", TASKID_RESPAWN + lucky_bastard)
  4081. }
  4082. else
  4083. failed_revive(id)
  4084. }
  4085. else
  4086. set_task(0.1, "task_revive", TASKID_REVIVE + id)
  4087.  
  4088. return FMRES_IGNORED
  4089. }
  4090.  
  4091. public failed_revive(id)
  4092. {
  4093. msg_bartime(id, 0)
  4094. emit_sound(id, CHAN_AUTO, SOUND_FAILED, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
  4095. }
  4096.  
  4097. public task_origin(taskid)
  4098. {
  4099. new id = taskid - TASKID_ORIGIN
  4100. engfunc(EngFunc_SetOrigin, id, g_body_origin[id])
  4101.  
  4102. static Float:origin[3]
  4103. pev(id, pev_origin, origin)
  4104. set_pev(id, pev_zorigin, origin[2])
  4105.  
  4106. set_task(0.1, "task_stuck_check", TASKID_CHECKST + id)
  4107. }
  4108.  
  4109. stock find_dead_body(id)
  4110. {
  4111. static Float:origin[3]
  4112. pev(id, pev_origin, origin)
  4113.  
  4114. new ent
  4115. static classname[32]
  4116. while((ent = find_ent_in_sphere(ent, origin, get_pcvar_float(cvar_revival_dis))) != 0)
  4117. {
  4118. pev(ent, pev_classname, classname, 31)
  4119. if(equali(classname, "fake_corpse") && is_visible(id, ent))
  4120. return ent
  4121. }
  4122. return 0
  4123. }
  4124.  
  4125. stock msg_bartime(id, seconds)
  4126. {
  4127. if(is_user_bot(id))
  4128. return
  4129.  
  4130. message_begin(MSG_ONE, g_msg_bartime, _, id)
  4131. write_byte(seconds)
  4132. write_byte(0)
  4133. message_end()
  4134. }
  4135.  
  4136. stock msg_statusicon(id, status)
  4137. {
  4138. if(is_user_bot(id))
  4139. return
  4140.  
  4141. message_begin(MSG_ONE, g_msg_statusicon, _, id)
  4142. write_byte(status)
  4143. write_string("rescue")
  4144. write_byte(0)
  4145. write_byte(160)
  4146. write_byte(0)
  4147. message_end()
  4148. }
  4149.  
  4150. public task_respawn(taskid)
  4151. {
  4152. new id = taskid - TASKID_RESPAWN
  4153.  
  4154. set_pev(id, pev_deadflag, DEAD_RESPAWNABLE)
  4155. dllfunc(DLLFunc_Spawn, id)
  4156. set_pev(id, pev_iuser1, 0)
  4157.  
  4158. set_task(0.1, "task_check_respawn", TASKID_CHECKRE + id)
  4159. }
  4160.  
  4161. public task_check_respawn(taskid)
  4162. {
  4163. new id = taskid - TASKID_CHECKRE
  4164.  
  4165. if(pev(id, pev_iuser1))
  4166. set_task(0.1, "task_respawn", TASKID_RESPAWN + id)
  4167. else
  4168. set_task(0.1, "task_origin", TASKID_ORIGIN + id)
  4169. }
  4170.  
  4171. public task_stuck_check(taskid)
  4172. {
  4173. new id = taskid - TASKID_CHECKST
  4174.  
  4175. static Float:origin[3]
  4176. pev(id, pev_origin, origin)
  4177.  
  4178. if(origin[2] == pev(id, pev_zorigin))
  4179. set_task(0.1, "task_respawn", TASKID_RESPAWN + id)
  4180. else
  4181. set_task(0.1, "task_setplayer", TASKID_SETUSER + id)
  4182. }
  4183.  
  4184. public task_setplayer(taskid)
  4185. {
  4186. new id = taskid - TASKID_SETUSER
  4187.  
  4188. set_user_health(id, get_pcvar_num(cvar_revival_health))
  4189.  
  4190. message_begin(MSG_ONE,g_msg_screenfade, _, id)
  4191. write_short(seconds(2))
  4192. write_short(seconds(2))
  4193. write_short(0)
  4194. write_byte(0)
  4195. write_byte(0)
  4196. write_byte(0)
  4197. write_byte(255)
  4198. message_end()
  4199. }
  4200.  
  4201.  
  4202. stock bool:findemptyloc(ent, Float:radius)
  4203. {
  4204. if(!is_valid_ent(ent))
  4205. return false
  4206.  
  4207. static Float:origin[3]
  4208. pev(ent, pev_origin, origin)
  4209. origin[2] += 2.0
  4210.  
  4211. new owner = pev(ent, pev_owner)
  4212. new num = 0, bool:found = false
  4213.  
  4214. while(num <= 100)
  4215. {
  4216. if(is_hull_vacant(origin))
  4217. {
  4218. g_body_origin[owner][0] = origin[0]
  4219. g_body_origin[owner][1] = origin[1]
  4220. g_body_origin[owner][2] = origin[2]
  4221.  
  4222. found = true
  4223. break
  4224. }
  4225. else
  4226. {
  4227. origin[0] += random_float(-radius, radius)
  4228. origin[1] += random_float(-radius, radius)
  4229. origin[2] += random_float(-radius, radius)
  4230.  
  4231. num++
  4232. }
  4233. }
  4234. return found
  4235. }
  4236.  
  4237. stock bool:is_hull_vacant(const Float:origin[3])
  4238. {
  4239. new tr = 0
  4240. engfunc(EngFunc_TraceHull, origin, origin, 0, HULL_HUMAN, 0, tr)
  4241. if(!get_tr2(tr, TR_StartSolid) && !get_tr2(tr, TR_AllSolid) && get_tr2(tr, TR_InOpen))
  4242. return true
  4243.  
  4244. return false
  4245. }
  4246. public godon(id)
  4247. {
  4248. set_user_godmode(id, 1)
  4249.  
  4250. Odliczanie[id] = 4
  4251.  
  4252. if(task_exists(id + 3431))
  4253. {
  4254. remove_task(id + 3431)
  4255. }
  4256. set_task(1.0, "godoff", id + 3431, _, _, "b")
  4257.  
  4258. return PLUGIN_CONTINUE
  4259. }
  4260. public godoff(task_id)
  4261. {
  4262. new id = task_id - 3431
  4263.  
  4264. set_hudmessage(0, 255, 0, 0.03, 0.76, 2, 0.02, 1.0, 0.01)
  4265. show_hudmessage(id, "Za %d Pa'r Masodperc me'g.", Odliczanie[id])
  4266.  
  4267. Odliczanie[id] -= 1
  4268.  
  4269. if(Odliczanie[id] <= 0)
  4270. {
  4271. if(task_exists(task_id))
  4272. {
  4273. remove_task(task_id)
  4274. }
  4275. set_user_godmode(id, 0);
  4276. }
  4277. }
  4278. public clipon(id)
  4279. {
  4280. set_user_noclip(id, 1)
  4281.  
  4282. Odliczanie[id] = 9
  4283.  
  4284. if(task_exists(id + 3431))
  4285. {
  4286. remove_task(id + 3431)
  4287. }
  4288. set_task(1.0, "clipoff", id + 3431, _, _, "b")
  4289.  
  4290. return PLUGIN_CONTINUE
  4291. }
  4292. public clipoff(task_id)
  4293. {
  4294. new id = task_id - 3431
  4295.  
  4296. set_hudmessage(0, 255, 0, 0.03, 0.76, 2, 0.02, 1.0, 0.01)
  4297. show_hudmessage(id, "Za %d Pa'r Masodperc me'g", Odliczanie[id]) //WiadomoϾ pokazana w HUD'zie
  4298.  
  4299. Odliczanie[id] -= 1
  4300.  
  4301. if(Odliczanie[id] <= 0)
  4302. {
  4303. if(task_exists(task_id))
  4304. {
  4305. remove_task(task_id)
  4306. }
  4307. set_user_noclip(id, 0); // tutaj wy³¹cza noclipa
  4308. }
  4309. }
  4310.  
  4311. public client_PreThink(id) {
  4312. if (entity_get_int(id, EV_INT_button) & 2 && informacje_przedmiotu_gracza[id][0] == 44) {
  4313. new flags = entity_get_int(id, EV_INT_flags)
  4314.  
  4315. if (flags & FL_WATERJUMP)
  4316. return PLUGIN_CONTINUE
  4317. if ( entity_get_int(id, EV_INT_waterlevel) >= 2 )
  4318. return PLUGIN_CONTINUE
  4319. if ( !(flags & FL_ONGROUND) )
  4320. return PLUGIN_CONTINUE
  4321.  
  4322. new Float:velocity[3]
  4323. entity_get_vector(id, EV_VEC_velocity, velocity)
  4324. velocity[2] += 250.0
  4325. entity_set_vector(id, EV_VEC_velocity, velocity)
  4326.  
  4327. entity_set_int(id, EV_INT_gaitsequence, 6)
  4328. }
  4329. return PLUGIN_CONTINUE
  4330. }
  4331.  
  4332. public fw_traceline(Float:vecStart[3],Float:vecEnd[3],ignoreM,id,trace)
  4333. {
  4334. if(!is_user_connected(id))
  4335. return;
  4336.  
  4337. new hit = get_tr2(trace, TR_pHit);
  4338.  
  4339. if(!is_user_connected(hit))
  4340. return;
  4341.  
  4342. new hitzone = get_tr2(trace, TR_iHitgroup);
  4343. if((informacje_przedmiotu_gracza[hit][0] == 65 && hitzone == HIT_HEAD) || informacje_przedmiotu_gracza[hit][0] == 66 && hitzone != HIT_HEAD)
  4344. set_tr2(trace, TR_iHitgroup, 8);
  4345.  
  4346. if(informacje_przedmiotu_gracza[id][0] == 69 && !random(10) && get_user_weapon(id) == CSW_AWP)
  4347. set_tr2(trace, TR_iHitgroup, HIT_HEAD);
  4348. }
  4349.  
  4350. public WygranaTerro()
  4351. WygranaRunda("TERRORIST");
  4352.  
  4353. public WygranaCT()
  4354. WygranaRunda("CT");
  4355.  
  4356. public WygranaRunda(const Team[])
  4357. {
  4358. new Players[32], playerCount, id;
  4359. get_players(Players, playerCount, "aeh", Team);
  4360.  
  4361. if(get_playersnum() < 3)
  4362. return;
  4363.  
  4364. for (new i=0; i<playerCount; i++)
  4365. {
  4366. id = Players[i];
  4367. if(!klasa_gracza[id] && !is_user_connected(id))
  4368. continue;
  4369.  
  4370. doswiadczenie_gracza[id] += doswiadczenie_za_wygrana;
  4371. ColorChat(id, RED, "[S][M][COD:MW3] ^x01 Kor megnyerese miaat kaptal 200 xp-t.Csak igy tavabb!", doswiadczenie_za_wygrana);
  4372. SprawdzPoziom(id);
  4373. }
  4374. }
  4375.  
  4376. public OddajPrzedmiot(id)
  4377. {
  4378. new menu = menu_create("Oddaj przedmiot", "OddajPrzedmiot_Handle");
  4379. new cb = menu_makecallback("OddajPrzedmiot_Callback");
  4380. new numer_przedmiotu;
  4381. for(new i=0; i<=32; i++)
  4382. {
  4383. if(!is_user_connected(i))
  4384. continue;
  4385. oddaj_id[numer_przedmiotu++] = i;
  4386. menu_additem(menu, nazwa_gracza[i], "0", 0, cb);
  4387. }
  4388. menu_display(id, menu);
  4389. }
  4390.  
  4391. public OddajPrzedmiot_Handle(id, menu, item)
  4392. {
  4393. if(item < 1 || item > 32) return PLUGIN_CONTINUE;
  4394.  
  4395. if(!is_user_connected(oddaj_id[item]))
  4396. {
  4397. client_print(id, print_chat, "Ez nem az en napom-pom-pom-pom-pom-pom-pom-Yeah-Yeah.....");
  4398. return PLUGIN_CONTINUE;
  4399. }
  4400. if(dostal_przedmiot[id])
  4401. {
  4402. client_print(id, print_chat, "Kovetkez'o' Korben Aktivalodik a kivalasztot targy");
  4403. return PLUGIN_CONTINUE;
  4404. }
  4405. if(!informacje_przedmiotu_gracza[id][0])
  4406. {
  4407. client_print(id, print_chat, "Nincs iljen cuc.");
  4408. return PLUGIN_CONTINUE;
  4409. }
  4410. if(informacje_przedmiotu_gracza[oddaj_id[item]][0])
  4411. {
  4412. client_print(id, print_chat, "Szep Valasztas Ifjonc.");
  4413. return PLUGIN_CONTINUE;
  4414. }
  4415. dostal_przedmiot[oddaj_id[item]] = true;
  4416. DajPrzedmiot(oddaj_id[item], informacje_przedmiotu_gracza[id][0]);
  4417. informacje_przedmiotu_gracza[oddaj_id[item]][1] = informacje_przedmiotu_gracza[id][1];
  4418. client_print(id, print_chat, "Eldoptada targyad: %s .",nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]] , nazwa_gracza[oddaj_id[item]]);
  4419. client_print(oddaj_id[item], print_chat, "Dobio si %s od igraca %s.",nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]] , nazwa_gracza[id]);
  4420. UsunPrzedmiot(id);
  4421. return PLUGIN_CONTINUE;
  4422. }
  4423.  
  4424. public OddajPrzedmiot_Callback(id, menu, item)
  4425. {
  4426. if(oddaj_id[item] == id)
  4427. return ITEM_DISABLED;
  4428. return ITEM_ENABLED;
  4429. }
  4430.  
  4431. public SprzedajPrzedmiot(id)
  4432. {
  4433. if(!informacje_przedmiotu_gracza[id][0])
  4434. {
  4435. client_print(id, print_chat, "Nie masz przedmiotu!");
  4436. return;
  4437. }
  4438.  
  4439. UsunPrzedmiot(id);
  4440. cs_set_user_money(id, cs_get_user_money(id)+2500);
  4441. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255);
  4442. }
  4443.  
  4444. public MagnetThink(ent)
  4445. {
  4446. if(entity_get_int(ent, EV_INT_iuser2))
  4447. return PLUGIN_CONTINUE;
  4448.  
  4449. if(!entity_get_int(ent, EV_INT_iuser1))
  4450. emit_sound(ent, CHAN_VOICE, "weapons/mine_activate.wav", 0.5, ATTN_NORM, 0, PITCH_NORM );
  4451.  
  4452. entity_set_int(ent, EV_INT_iuser1, 1);
  4453.  
  4454. new id = entity_get_edict(ent, EV_ENT_owner);
  4455. new dist = get_pcvar_num(pcvar_zasieg)+inteligencja_gracza[id];
  4456.  
  4457. new Float:forigin[3];
  4458. entity_get_vector(ent, EV_VEC_origin, forigin);
  4459.  
  4460. new entlist[33];
  4461. new numfound = find_sphere_class(0,"player", float(dist),entlist, 32,forigin);
  4462.  
  4463. for (new i=0; i < numfound; i++)
  4464. {
  4465. new pid = entlist[i];
  4466.  
  4467. if (get_user_team(pid) == get_user_team(id))
  4468. continue;
  4469.  
  4470. if (is_user_alive(pid))
  4471. {
  4472. new bronie_gracza = entity_get_int(pid, EV_INT_weapons);
  4473. for(new n=1; n <= 32;n++)
  4474. {
  4475. if(1<<n & bronie_gracza)
  4476. {
  4477. new weaponname[33];
  4478. get_weaponname(n, weaponname, 32);
  4479. engclient_cmd(pid, "drop", weaponname);
  4480. }
  4481. }
  4482. }
  4483. }
  4484.  
  4485. numfound = find_sphere_class(0,"weaponbox", float(dist)+100.0,entlist, 32,forigin);
  4486.  
  4487. for (new i=0; i < numfound; i++)
  4488. if(get_entity_distance(ent, entlist[i]) > 50.0)
  4489. set_velocity_to_origin(entlist[i], forigin, 999.0);
  4490.  
  4491. if (entity_get_float(ent, EV_FL_ltime) < halflife_time() || !is_user_alive(id))
  4492. {
  4493. entity_set_int(ent, EV_INT_iuser2, 1);
  4494. return PLUGIN_CONTINUE;
  4495. }
  4496.  
  4497. new iOrigin[3];
  4498. FVecIVec(forigin, iOrigin);
  4499.  
  4500. message_begin( MSG_BROADCAST, SVC_TEMPENTITY, iOrigin );
  4501. write_byte( TE_BEAMCYLINDER );
  4502. write_coord( iOrigin[0] );
  4503. write_coord( iOrigin[1] );
  4504. write_coord( iOrigin[2] );
  4505. write_coord( iOrigin[0] );
  4506. write_coord( iOrigin[1] + dist );
  4507. write_coord( iOrigin[2] + dist );
  4508. write_short( sprite_white );
  4509. write_byte( 0 ); // startframe
  4510. write_byte( 0 ); // framerate
  4511. write_byte( 10 ); // life
  4512. write_byte( 10 ); // width
  4513. write_byte( 255 ); // noise
  4514. write_byte( 0 ); // r, g, b
  4515. write_byte( 100 );// r, g, b
  4516. write_byte( 255 ); // r, g, b
  4517. write_byte( get_pcvar_num(pcvar_widocznosc_fali) ); // brightness
  4518. write_byte( 0 ); // speed
  4519. message_end();
  4520.  
  4521. entity_set_float(ent, EV_FL_nextthink, halflife_time() + 0.01);
  4522.  
  4523. return PLUGIN_CONTINUE;
  4524. }
  4525.  
  4526. public ResetHUD(id)
  4527. {
  4528. if(!is_user_connected(id))
  4529. return PLUGIN_HANDLED;
  4530. client_disconnect_magnet(id);
  4531. pozostale_elektromagnesy[id] = get_pcvar_num(pcvar_ilosc_elektromagnesow);
  4532. return PLUGIN_HANDLED
  4533. }
  4534.  
  4535. public client_disconnect_magnet(id)
  4536. {
  4537. new ent = find_ent_by_class(0, "magnet");
  4538. while(ent > 0)
  4539. {
  4540. if(entity_get_edict(id, EV_ENT_owner) == id)
  4541. remove_entity(ent);
  4542. ent = find_ent_by_class(ent, "magnet");
  4543. }
  4544. }
  4545.  
  4546. public NowaRunda_magnet()
  4547. {
  4548. new ent = find_ent_by_class(-1, "magnet");
  4549. while(ent > 0)
  4550. {
  4551. remove_entity(ent);
  4552. ent = find_ent_by_class(ent, "magnet");
  4553. }
  4554. }
  4555.  
  4556. stock get_velocity_to_origin( ent, Float:fOrigin[3], Float:fSpeed, Float:fVelocity[3] )
  4557. {
  4558. new Float:fEntOrigin[3];
  4559. entity_get_vector( ent, EV_VEC_origin, fEntOrigin );
  4560.  
  4561. // Velocity = Distance / Time
  4562.  
  4563. new Float:fDistance[3];
  4564. fDistance[0] = fEntOrigin[0] - fOrigin[0];
  4565. fDistance[1] = fEntOrigin[1] - fOrigin[1];
  4566. fDistance[2] = fEntOrigin[2] - fOrigin[2];
  4567.  
  4568. new Float:fTime = -( vector_distance( fEntOrigin,fOrigin ) / fSpeed );
  4569.  
  4570. fVelocity[0] = fDistance[0] / fTime;
  4571. fVelocity[1] = fDistance[1] / fTime;
  4572. fVelocity[2] = fDistance[2] / fTime + 50.0;
  4573.  
  4574. return ( fVelocity[0] && fVelocity[1] && fVelocity[2] );
  4575. }
  4576.  
  4577. stock set_velocity_to_origin( ent, Float:fOrigin[3], Float:fSpeed )
  4578. {
  4579. new Float:fVelocity[3];
  4580. get_velocity_to_origin( ent, fOrigin, fSpeed, fVelocity )
  4581.  
  4582. entity_set_vector( ent, EV_VEC_velocity, fVelocity );
  4583.  
  4584. return ( 1 );
  4585. }
  4586.  
  4587. public radar_scan(id)
  4588. {
  4589. if(!is_user_connected(id))
  4590. return PLUGIN_HANDLED;
  4591.  
  4592. new PlayerCoords[3];
  4593.  
  4594. for (new id=1; id<=32; id++)
  4595. {
  4596. if(!is_user_alive(id) || !is_user_connected(id) || informacje_przedmiotu_gracza[id][0] != 86)
  4597. continue;
  4598.  
  4599. for (new i=1;i<=32;i++)
  4600. {
  4601. if(!is_user_alive(i) || get_user_team(i) == get_user_team(id))
  4602.  
  4603. get_user_origin(i, PlayerCoords)
  4604.  
  4605. message_begin(MSG_ONE_UNRELIABLE, g_msgHostageAdd, {0,0,0}, id)
  4606. write_byte(id)
  4607. write_byte(i)
  4608. write_coord(PlayerCoords[0])
  4609. write_coord(PlayerCoords[1])
  4610. write_coord(PlayerCoords[2])
  4611. message_end()
  4612.  
  4613. message_begin(MSG_ONE_UNRELIABLE, g_msgHostageDel, {0,0,0}, id)
  4614. write_byte(i)
  4615. message_end()
  4616. }
  4617. }
  4618. return PLUGIN_HANDLED;
  4619. }
  4620.  
  4621. public SmiercGracza(id, attacker, shouldgib)
  4622. {
  4623. if(is_user_alive(attacker) && is_user_connected(attacker))
  4624. {
  4625. if(get_user_team(attacker) != get_user_team(id))
  4626. {
  4627. new name[32]
  4628. licznik_zabic[attacker]++;
  4629. get_user_name(attacker,name,31);
  4630. if(licznik_zabic[attacker] > 0)
  4631. {
  4632. set_hudmessage(255, 255, 255, -1.0, 0.33, 0, 5.0, 5.0);
  4633. switch(licznik_zabic[attacker])
  4634. {
  4635. case 4:
  4636. {
  4637. switch(random_num(0,1))
  4638. {
  4639. case 0:{
  4640. pack[attacker] = true;
  4641. //show_hudmessage(0, "%s dostal Care Package za KILLSTRIKE x %i !", name, licznik_zabic[attacker]);
  4642. client_print(attacker, print_chat, "[KillStrike] Hajra Csak igy tovabb");
  4643. }
  4644. case 1:{
  4645. uav[attacker] = true;
  4646. //show_hudmessage(0, "%s dostal Counter-UAV za KILLSTRIKE x %i !", name, licznik_zabic[attacker]);
  4647. client_print(attacker, print_chat, "[KillStrike] Hajra Csak igy tovabb");
  4648. client_cmd(attacker, "spk sound/mw/counter_enemy.wav")
  4649. }
  4650. }
  4651. }
  4652. case 6:
  4653. {
  4654. switch(random_num(0,1))
  4655. {
  4656. case 0:{
  4657. predator[attacker]++;
  4658. //show_hudmessage(0, "%s dostal PREDATORA za KILLSTRIKE x %i !", name, licznik_zabic[attacker]);
  4659. client_print(attacker, print_chat, "[KillStrike] Hajra Csak igy tovabb");
  4660. client_cmd(attacker, "spk sound/mw/predator_give.wav")
  4661. }
  4662. case 1:{
  4663. nalot[attacker]++;
  4664. //show_hudmessage(0, "%s dostal NALOT za KILLSTRIKE x %i !", name, licznik_zabic[attacker]);
  4665. client_print(attacker, print_chat, "[KillStrike] Hajra Csak igy tovabb");
  4666. client_cmd(attacker, "spk sound/mw/air_give.wav")
  4667. }
  4668. }
  4669. }
  4670. case 12:
  4671. {
  4672. emp[attacker] = true;
  4673. //show_hudmessage(0, "%s dostal EMP za KILLSTRIKE x %i !", name, licznik_zabic[attacker]);
  4674. client_print(attacker, print_chat, "Hajra Csak igy tovabb");
  4675. client_cmd(attacker, "spk sound/mw/emp_give.wav")
  4676. }
  4677. case 14:
  4678. {
  4679. nuke[attacker] = true;
  4680. show_hudmessage(0, "%s dostal NUKE! za KILLSTRIKE x %i !", name, licznik_zabic[attacker]);
  4681. client_print(attacker, print_chat, "[KillStrike] Hajra Csak igy tovabb");
  4682. client_cmd(attacker, "spk sound/mw/nuke_give.wav")
  4683. licznik_zabic[attacker] = false;
  4684. }
  4685. case 15:
  4686. {
  4687. radar[attacker] = true;
  4688. cod_set_user_xp(id, cod_get_user_xp(id)+50);
  4689. //client_cmd(attacker, "drawradar")
  4690. show_hudmessage(0, "%s dostal UAV za KILLSTRIKE x %i !", name, licznik_zabic[attacker]);
  4691. client_print(attacker, print_chat, "[KillStrike] Hajra Csak igy tovabb");
  4692. client_cmd(attacker, "spk sound/mw/uav_give.wav")
  4693. }
  4694. }
  4695. }
  4696. }
  4697. }
  4698. if(!is_user_alive(id))
  4699. {
  4700. licznik_zabic[id] = 0;
  4701. user_controll[id] = 0
  4702. }
  4703. }
  4704.  
  4705. public uzyj_nagrody(id)
  4706. {
  4707. if(!is_user_alive(id) || emp_czasowe)
  4708. return PLUGIN_HANDLED;
  4709.  
  4710. if(pack[id] > 0 && !nuke[id] && !predator[id] && !emp[id] && !nalot[id] && !uav[id]/* && !sentry[id]*/)
  4711. CreatePack(id)
  4712.  
  4713. if(uav[id] > 0 && !nuke[id] && !predator[id] && !emp[id] && !nalot[id]/* && !sentry[id]*/)
  4714. CreateUVA(id)
  4715.  
  4716. if(nalot[id] > 0 && !nuke[id] && !predator[id] && !emp[id])
  4717. CreateNalot(id)
  4718.  
  4719. if(predator[id] > 0 && !nuke[id] && !emp[id])
  4720. CreatePredator(id)
  4721.  
  4722. if(emp[id] > 0 && !nuke[id])
  4723. CreateEmp(id)
  4724.  
  4725. if(nuke[id] > 0)
  4726. CreateNuke(id)
  4727.  
  4728. return PLUGIN_HANDLED;
  4729. }
  4730. //radar
  4731. public radar_scan2(id)
  4732. {
  4733. if(!is_user_connected(id))
  4734. return PLUGIN_HANDLED;
  4735.  
  4736. new PlayerCoords[3];
  4737.  
  4738. for (new id=1; id<=32; id++)
  4739. {
  4740. if(!is_user_alive(id) || !is_user_connected(id) || !radar[id] || emp_czasowe)
  4741. continue;
  4742.  
  4743. for (new i=1;i<=32;i++)
  4744. {
  4745. if(!is_user_alive(i) || get_user_team(i) == get_user_team(id))
  4746. continue;
  4747.  
  4748. get_user_origin(i, PlayerCoords)
  4749.  
  4750. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("HostagePos"), {0,0,0}, id)
  4751. write_byte(id)
  4752. write_byte(i)
  4753. write_coord(PlayerCoords[0])
  4754. write_coord(PlayerCoords[1])
  4755. write_coord(PlayerCoords[2])
  4756. message_end()
  4757.  
  4758. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("HostageK"), {0,0,0}, id)
  4759. write_byte(i)
  4760. message_end()
  4761. }
  4762. }
  4763. return PLUGIN_HANDLED;
  4764. }
  4765. //dotyk enta
  4766. public fw_Touch(ent, id)
  4767. {
  4768. if (!pev_valid(ent))
  4769. return FMRES_IGNORED
  4770.  
  4771. new ClassName[32]
  4772. pev(ent, pev_classname, ClassName, charsmax(ClassName))
  4773.  
  4774. if(equal(ClassName, "Bomb"))
  4775. {
  4776. bombs_explode(ent, 100.0, 150.0)
  4777. set_pev(ent, pev_flags, FL_KILLME)
  4778. return FMRES_IGNORED
  4779. }
  4780. if(equal(ClassName, "Predator"))
  4781. {
  4782. new owner = pev(ent, pev_owner)
  4783. bombs_explode(ent, 220.0, 400.0)
  4784. attach_view(owner, owner)
  4785. user_controll[owner] = 0
  4786. set_pev(ent, pev_flags, FL_KILLME)
  4787. return FMRES_IGNORED
  4788. }
  4789. return FMRES_IGNORED
  4790. }
  4791. //airpack
  4792. public CreatePack(id)
  4793. {
  4794. cod_set_user_xp(id, cod_get_user_xp(id)+100);
  4795. CreatePlane(id)
  4796. pack[id] = false
  4797. set_task(1.0, "airpack", id+742)
  4798. set_task(6.0, "usun_ent")
  4799. }
  4800.  
  4801. public airpack(taskid)
  4802. {
  4803. new id = (taskid - 742)
  4804. new Origin[3];
  4805. get_user_origin(id, Origin, 3);
  4806.  
  4807. Origin[2] += 150;
  4808.  
  4809. new Float:LocVecs[3];
  4810. IVecFVec(Origin, LocVecs);
  4811.  
  4812. new g_pack = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"))
  4813. create_ent(id, g_pack, "Pack", "models/cod_carepackage.mdl", 1, 6, LocVecs)
  4814. }
  4815.  
  4816. public pack_touch(ent, id)
  4817. {
  4818. if (!pev_valid(ent))
  4819. return FMRES_IGNORED
  4820.  
  4821. new ClassName[32]
  4822. pev(ent, pev_classname, ClassName, charsmax(ClassName))
  4823.  
  4824. if(equal(ClassName, "Pack"))
  4825. {
  4826. new weapons[32];
  4827. new weaponsnum;
  4828. get_user_weapons(id, weapons, weaponsnum);
  4829. for(new i=0; i<weaponsnum; i++)
  4830. if(maxAmmo[weapons[i]] > 0)
  4831. set_pdata_int(id, CSW_to_offset[weapons[i]], maxAmmo[weapons[i]], 5);
  4832.  
  4833. set_pev(ent, pev_flags, FL_KILLME)
  4834. return FMRES_IGNORED
  4835. }
  4836. return FMRES_IGNORED
  4837. }
  4838.  
  4839. //counter-uva
  4840. public CreateUVA(id)
  4841. {
  4842. cod_set_user_xp(id, cod_get_user_xp(id)+100);
  4843. uav[id] = false
  4844. new num, players[32]
  4845. get_players(players, num, "cgh")
  4846. for(new a = 0; a < num; a++)
  4847. {
  4848. new i = players[a]
  4849. if(players[a] != id){
  4850. if(get_user_team(id)!=get_user_team(i))
  4851. {
  4852. radar[i] = false;
  4853. break;
  4854. }
  4855. }
  4856. }
  4857. }
  4858. //emp
  4859. public CreateEmp(id)
  4860. {
  4861. cod_set_user_xp(id, cod_get_user_xp(id)+200);
  4862. client_cmd(0, "spk sound/mw/emp_effect.wav")
  4863. emp[id] = false;
  4864. new num, players[32]
  4865. get_players(players, num, "cgh")
  4866. for(new a = 0; a < num; a++)
  4867. {
  4868. new i = players[a]
  4869. if(is_user_connected(i) || is_user_alive(i))
  4870. {
  4871. Display_Fade(i,4<<12,4<<12,1<<16,255,212,212,166)
  4872. }
  4873. //client_cmd(i, "hideradar")
  4874. }
  4875. emp_czasowe = true;
  4876. set_task(90.0,"usun_emp", 932)
  4877. }
  4878.  
  4879. public usun_emp()
  4880. {
  4881. emp_czasowe = false;
  4882. }
  4883. //nuke
  4884. public CreateNuke(id)
  4885. {
  4886. cod_set_user_xp(id, cod_get_user_xp(id)+250);
  4887.  
  4888. new num, players[32]
  4889. get_players(players, num, "cgh")
  4890. for(new a = 0; a < num; a++)
  4891. {
  4892. new i = players[a]
  4893. if(is_user_alive(i))
  4894. {
  4895. Display_Fade(i,8<<12,8<<12,1<<16,197,253,191,200)
  4896. set_task(4.0,"trzesienie", 0)
  4897. }
  4898. }
  4899. set_task(8.0,"usun", id)
  4900. nuke[id] = false;
  4901. }
  4902.  
  4903. public trzesienie()
  4904. {
  4905. new num, players[32]
  4906. get_players(players, num, "cgh")
  4907. for(new a = 0; a < num; a++)
  4908. {
  4909. new i = players[a]
  4910. if(is_user_connected(i) || is_user_alive(i))
  4911. {
  4912. message_begin(MSG_ONE, get_user_msgid("ScreenShake"), {0,0,0}, i)
  4913. write_short(255<<12)
  4914. write_short(8<<12)
  4915. write_short(255<<12)
  4916. message_end()
  4917. }
  4918. }
  4919. }
  4920. public usun(id)
  4921. {
  4922. if(!is_user_connected(id))
  4923. return PLUGIN_HANDLED;
  4924.  
  4925. new num, players[32]
  4926. get_players(players, num, "cgh")
  4927. for(new a = 0; a < num; a++)
  4928. {
  4929. new i = players[a]
  4930. if(is_user_alive(i))
  4931. {
  4932. user_silentkill(i)
  4933. if(get_user_team(id) != get_user_team(i))
  4934. {
  4935. set_user_frags(id, get_user_frags(id)+1);
  4936. cod_set_user_xp(id, cod_get_user_xp(id)+50);
  4937. }
  4938. }
  4939. }
  4940. return PLUGIN_HANDLED;
  4941. }
  4942. //nalot
  4943. public CreateNalot(id)
  4944. {
  4945. cod_set_user_xp(id, cod_get_user_xp(id)+150);
  4946. CreatePlane(id)
  4947. set_task(1.0, "CreateBombs", id+997, _, _, "a", 3)
  4948. set_task(6.0, "usun_ent")
  4949. nalot[id]--;
  4950. }
  4951.  
  4952. public usun_ent()
  4953. remove_entity_name("Samolot");
  4954.  
  4955. public CreateBombs(taskid)
  4956. {
  4957. new id = (taskid-997)
  4958.  
  4959. new g_bomby[15], radlocation[3], randomx, randomy;
  4960.  
  4961. PobraneOrigin[2] += 50;
  4962.  
  4963. for(new i=0; i<15; i++)
  4964. {
  4965. randomx = random_num(-150,150);
  4966. randomy = random_num(-150,150);
  4967.  
  4968. radlocation[0] = PobraneOrigin[0]+1*randomx;
  4969. radlocation[1] = PobraneOrigin[1]+1*randomy;
  4970. radlocation[2] = PobraneOrigin[2];
  4971.  
  4972. new Float:LocVec[3];
  4973. IVecFVec(radlocation, LocVec);
  4974.  
  4975. g_bomby[i] = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"))
  4976. create_ent(id, g_bomby[i], "Bomb", "models/p_hegrenade.mdl", 2, 10, LocVec)
  4977. }
  4978. }
  4979.  
  4980. public CreatePlane(id){
  4981. new Float:Origin[3],Float: Angle[3], Float: Velocity[3];
  4982.  
  4983. get_user_origin(id, PobraneOrigin, 3);
  4984.  
  4985. velocity_by_aim(id, 1200, Velocity)
  4986. pev(id, pev_origin, Origin)
  4987. pev(id, pev_v_angle, Angle)
  4988.  
  4989. Origin[2] += 250;
  4990. Angle[0] = 0.0;
  4991. Velocity[2] = Origin[2]
  4992.  
  4993. new g_samolot = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"))
  4994. create_ent(id, g_samolot, "Samolot", "models/cod_plane.mdl", 2, 8, Origin)
  4995.  
  4996. set_pev(g_samolot, pev_velocity, Velocity)
  4997. set_pev(g_samolot, pev_angles, Angle)
  4998.  
  4999. emit_sound(g_samolot, CHAN_ITEM, "mw/jet_fly1.wav", 1.0, ATTN_NORM, 0, PITCH_NORM);
  5000. }
  5001.  
  5002. //predator
  5003. public CreatePredator(id){
  5004. cod_set_user_xp(id, cod_get_user_xp(id)+150);
  5005. new Float:Origin[3], Float:Angle[3], Float:Velocity[3]
  5006.  
  5007. velocity_by_aim(id, 700, Velocity)
  5008. pev(id, pev_origin, Origin)
  5009. pev(id, pev_v_angle, Angle)
  5010.  
  5011. Angle[0] *= -1.0
  5012.  
  5013. new g_predator = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"))
  5014. create_ent(id, g_predator, "Predator", "models/cod_predator.mdl", 2, 5, Origin)
  5015.  
  5016. set_pev(g_predator, pev_velocity, Velocity)
  5017. set_pev(g_predator, pev_angles, Angle)
  5018.  
  5019. message_begin( MSG_BROADCAST, SVC_TEMPENTITY)
  5020. write_byte(TE_BEAMFOLLOW)
  5021. write_short(g_predator)
  5022. write_short(cache_trail)
  5023. write_byte(10)
  5024. write_byte(5)
  5025. write_byte(205)
  5026. write_byte(237)
  5027. write_byte(163)
  5028. write_byte(200)
  5029. message_end()
  5030.  
  5031. predator[id] = false;
  5032.  
  5033. set_pev(g_predator, pev_rendermode, 1)
  5034. attach_view(id, g_predator)
  5035. user_controll[id] = g_predator
  5036. }
  5037.  
  5038. public player_predator(id)
  5039. {
  5040. if(!is_user_connected(id))
  5041. return PLUGIN_HANDLED;
  5042.  
  5043. if (user_controll[id] > 0)
  5044. {
  5045. new ent = user_controll[id]
  5046. if (pev_valid(ent))
  5047. {
  5048. new Float:Velocity[3], Float:Angle[3]
  5049. velocity_by_aim(id, 500, Velocity)
  5050. pev(id, pev_v_angle, Angle)
  5051.  
  5052. set_pev(ent, pev_velocity, Velocity)
  5053. set_pev(ent, pev_angles, Angle)
  5054. }
  5055. else
  5056. {
  5057. attach_view(id, id)
  5058. }
  5059. }
  5060. return PLUGIN_HANDLED;
  5061. }
  5062.  
  5063. public bombs_explode(ent, Float:zadaje, Float:promien)
  5064. {
  5065. if (!pev_valid(ent))
  5066. return;
  5067.  
  5068. new attacker = pev(ent, pev_owner)
  5069. new Float:entOrigin[3], Float:fDistance, Float:fDamage, Float:vOrigin[3]
  5070. pev(ent, pev_origin, entOrigin)
  5071. entOrigin[2] += 1.0
  5072.  
  5073. new victim = -1
  5074. while ((victim = engfunc(EngFunc_FindEntityInSphere, victim, entOrigin, promien)) != 0)
  5075. {
  5076. if (attacker==victim || !pev_valid(victim)) continue;
  5077.  
  5078. pev(victim, pev_origin, vOrigin)
  5079. fDistance = get_distance_f(vOrigin, entOrigin)
  5080. fDamage = zadaje - floatmul(zadaje, floatdiv(fDistance, promien))
  5081. fDamage *= estimate_take_hurt(entOrigin, victim, 0)
  5082.  
  5083. if(fDamage>0.0)
  5084. {
  5085. if(get_user_team(attacker)!=get_user_team(victim))
  5086. if(pev(victim, pev_health))
  5087. ExecuteHam(Ham_TakeDamage, victim, ent, attacker, fDamage, DMG_BULLET)
  5088. }
  5089. }
  5090. message_begin(MSG_BROADCAST,SVC_TEMPENTITY);
  5091. write_byte(TE_EXPLOSION);
  5092. write_coord(floatround(entOrigin[0]));
  5093. write_coord(floatround(entOrigin[1]));
  5094. write_coord(floatround(entOrigin[2]));
  5095. write_short(sprite_blast);
  5096. write_byte(32);
  5097. write_byte(20);
  5098. write_byte(0);
  5099. message_end();
  5100. }
  5101.  
  5102. public cmdKill()
  5103. {
  5104. return FMRES_SUPERCEDE
  5105. }
  5106.  
  5107. stock create_ent(id, ent, szName[], szModel[], iSolid, iMovetype, Float:fOrigin[3])
  5108. {
  5109. if(!pev_valid(ent))
  5110. {
  5111. return
  5112. }
  5113.  
  5114. set_pev(ent, pev_classname, szName)
  5115. engfunc(EngFunc_SetModel, ent, szModel)
  5116. set_pev(ent, pev_solid, iSolid)
  5117. set_pev(ent, pev_movetype, iMovetype)
  5118. set_pev(ent, pev_owner, id)
  5119. set_pev(ent, pev_origin, fOrigin)
  5120. }
  5121.  
  5122. stock Float:estimate_take_hurt(Float:fPoint[3], ent, ignored)
  5123. {
  5124. new Float:fOrigin[3]
  5125. new tr
  5126. new Float:fFraction
  5127. pev(ent, pev_origin, fOrigin)
  5128. engfunc(EngFunc_TraceLine, fPoint, fOrigin, DONT_IGNORE_MONSTERS, ignored, tr)
  5129. get_tr2(tr, TR_flFraction, fFraction)
  5130.  
  5131. if(fFraction == 1.0 || get_tr2(tr, TR_pHit) == ent)
  5132. {
  5133. return 1.0
  5134. }
  5135.  
  5136. return 0.6
  5137. }
  5138.  
  5139. public plugin_natives()
  5140. {
  5141. register_native("cod_set_user_xp", "UstawDoswiadczenie", 1)
  5142. register_native("cod_get_user_xp", "PobierzDoswiadczenie", 1)
  5143. register_native("cod_get_user_health", "PobierzZdrowieMax", 1)
  5144. }
  5145.  
  5146. public UstawDoswiadczenie(id, wartosc)
  5147. {
  5148. doswiadczenie_gracza[id] = wartosc
  5149. SprawdzPoziom(id)
  5150. }
  5151.  
  5152. public PobierzDoswiadczenie(id)
  5153. return doswiadczenie_gracza[id];
  5154.  
  5155. public PobierzZdrowieMax(id)
  5156. return maksymalne_zdrowie_gracza[id];
  5157.  
  5158.  
  5159. /* --==[ VIP ] ==-- */
  5160. public event_CurWeapon_Vip(id)
  5161. {
  5162. if(!is_user_connected(id))
  5163. return PLUGIN_HANDLED;
  5164.  
  5165. if (!get_pcvar_num(g_vip_active))
  5166. return PLUGIN_CONTINUE
  5167.  
  5168. if(read_data(2) == CSW_SG550)
  5169. {
  5170. if(!(get_user_flags(id) & ADMIN_LEVEL_H))
  5171. {
  5172. client_print(id, print_center, "V.I.P Miatt Kaptal egy fegyott!!")
  5173. client_cmd(id, "drop")
  5174. }
  5175. }
  5176. else if(read_data(2) == CSW_G3SG1)
  5177. {
  5178. if(!(get_user_flags(id) & ADMIN_LEVEL_H))
  5179. {
  5180. client_print(id, print_center, "V.I.P Miatt Kaptal egy fegyott!")
  5181. client_cmd(id, "drop")
  5182. }
  5183. }
  5184. else if(read_data(2) == CSW_M249)
  5185. {
  5186. if(!(get_user_flags(id) & ADMIN_LEVEL_H))
  5187. {
  5188. client_print(id, print_center, " V.I.P Miatt M249-et kaptal")
  5189. client_cmd(id, "drop")
  5190. }
  5191. }
  5192. return PLUGIN_HANDLED
  5193. }
  5194.  
  5195. public on_damage(id)
  5196. {
  5197. new attacker = get_user_attacker(id)
  5198. if ( is_user_connected(id) && is_user_connected(attacker) )
  5199. if (get_user_flags(attacker) & ADMIN_LEVEL_H)
  5200. {
  5201. new damage = read_data(2)
  5202. set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
  5203. ShowSyncHudMsg(attacker, g_MsgSync, "%i^n", damage)
  5204. }
  5205. }
  5206.  
  5207.  
  5208. public Damage2(id)
  5209. {
  5210. new weapon, hitpoint, attacker = get_user_attacker(id,weapon,hitpoint)
  5211. if(attacker<=maxplayers && is_user_alive(attacker) && attacker!=id)
  5212. if (is_user_connected(attacker) && get_user_flags(attacker) & ADMIN_LEVEL_H)
  5213. {
  5214. new money = read_data(2) * get_pcvar_num(mpd)
  5215. if(hitpoint==1) money += get_pcvar_num(mhb)
  5216. cs_set_user_money(attacker,cs_get_user_money(attacker) + money)
  5217. }
  5218. }
  5219. public HandleCmd(id)
  5220. {
  5221. if(!get_pcvar_num(g_vip_active))
  5222. {
  5223. return PLUGIN_CONTINUE
  5224. }
  5225.  
  5226. if(get_user_flags(id) & ADMIN_LEVEL_H)
  5227. {
  5228. return PLUGIN_CONTINUE
  5229. }
  5230.  
  5231. client_print(id, print_center, "Udv Yeah!")
  5232. return PLUGIN_HANDLED
  5233. }
  5234.  
  5235. public Showrod(id)
  5236. {
  5237. show_menu(id, Keysrod, "\rV.I.P Men'u'\d1. \w \yM4A1+Deagle Csomag ^n\d2. \w \yAK47+Deagle Csomag^n^n\d0. Semmi", -1, "rod") // Display menu
  5238. }
  5239. public Pressedrod(id, key)
  5240. {
  5241. /* Menu:
  5242. * VIP Menu
  5243. * 1. Wez M4A1 + Deagle
  5244. * 2. Wez AK47+Deagle
  5245. * 0. Exit
  5246. */
  5247. switch(key)
  5248. {
  5249. case 0:
  5250. {
  5251. if(user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
  5252. {
  5253. HasC4[id] = true
  5254. }
  5255. else
  5256. {
  5257. HasC4[id] = false
  5258. }
  5259.  
  5260. strip_user_weapons (id)
  5261. give_item(id,"weapon_m4a1")
  5262. give_item(id,"ammo_556nato")
  5263. give_item(id,"ammo_556nato")
  5264. give_item(id,"ammo_556nato")
  5265. give_item(id,"weapon_deagle")
  5266. give_item(id,"ammo_50ae")
  5267. give_item(id,"ammo_50ae")
  5268. give_item(id,"ammo_50ae")
  5269. give_item(id,"ammo_50ae")
  5270. give_item(id,"ammo_50ae")
  5271. give_item(id,"ammo_50ae")
  5272. give_item(id,"ammo_50ae")
  5273. give_item(id,"weapon_knife")
  5274.  
  5275. if(get_user_flags(id) & ADMIN_RCON)
  5276. {
  5277. give_item(id, "weapon_hegrenade");
  5278. give_item(id, "weapon_flashbang");
  5279. give_item(id, "weapon_flashbang");
  5280. give_item(id, "weapon_smokegrenade");
  5281. client_print(id, print_center, "Dobili ste M4A1, Deagle, HE, Smoke i 2x Flesh! zato sto ste Head Admin")
  5282. }
  5283. else
  5284. {
  5285. give_item(id, "weapon_hegrenade");
  5286. }
  5287.  
  5288. give_item(id, "item_assaultsuit")
  5289. give_item(id, "item_thighpack")
  5290. client_print(id, print_center, "Uzeo si M4A1, Deagle i HE!")
  5291.  
  5292. if (HasC4[id])
  5293. {
  5294. give_item(id, "weapon_c4");
  5295. cs_set_user_plant( id );
  5296. }
  5297. }
  5298. case 1:
  5299. {
  5300. if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
  5301. {
  5302. HasC4[id] = true
  5303. }
  5304. else
  5305. {
  5306. HasC4[id] = false
  5307. }
  5308.  
  5309. strip_user_weapons (id)
  5310. give_item(id,"weapon_ak47")
  5311. give_item(id,"ammo_762nato")
  5312. give_item(id,"ammo_762nato")
  5313. give_item(id,"ammo_762nato")
  5314. give_item(id,"weapon_deagle")
  5315. give_item(id,"ammo_50ae")
  5316. give_item(id,"ammo_50ae")
  5317. give_item(id,"ammo_50ae")
  5318. give_item(id,"ammo_50ae")
  5319. give_item(id,"ammo_50ae")
  5320. give_item(id,"ammo_50ae")
  5321. give_item(id,"ammo_50ae")
  5322. give_item(id,"weapon_knife")
  5323.  
  5324. if(get_user_flags(id) & ADMIN_RCON)
  5325. {
  5326. give_item(id, "weapon_hegrenade")
  5327. give_item(id, "weapon_flashbang")
  5328. give_item(id, "weapon_flashbang")
  5329. give_item(id, "weapon_smokegrenade")
  5330. client_print(id, print_center, "AK47, Deagle, HE kaptal")
  5331. }
  5332. else
  5333. {
  5334. give_item(id, "weapon_hegrenade")
  5335. client_print(id, print_center, " AK47, Deagle es HE kaptal!")
  5336. }
  5337. give_item(id, "item_assaultsuit")
  5338. give_item(id, "item_thighpack")
  5339.  
  5340. if(HasC4[id])
  5341. {
  5342. give_item(id, "weapon_c4")
  5343. cs_set_user_plant(id)
  5344. }
  5345. }
  5346. case 9: {
  5347. // 0
  5348. client_print(id, print_center, "Granatot kaptal!")
  5349. }
  5350. }
  5351. return PLUGIN_CONTINUE
  5352. }
  5353.  
  5354. public Round_Reset()
  5355. {
  5356. round = 0;
  5357. }
  5358.  
  5359. public hook_death()
  5360. {
  5361. // Killer id
  5362. nKiller = read_data(1)
  5363.  
  5364. if(!is_user_connected(nKiller))
  5365. return;
  5366.  
  5367. if ( (read_data(3) == 1) && (read_data(5) == 0) )
  5368. {
  5369. nHp_add = get_pcvar_num (health_hs_add)
  5370. }
  5371. else
  5372. nHp_add = get_pcvar_num (health_add)
  5373. nHp_max = get_pcvar_num (health_max)
  5374. // Updating Killer HP
  5375. if(!(get_user_flags(nKiller) & ADMIN_LEVEL_H))
  5376. return;
  5377.  
  5378. nKiller_hp = get_user_health(nKiller)
  5379. nKiller_hp += nHp_add
  5380. // Maximum HP check
  5381. if (nKiller_hp > nHp_max) nKiller_hp = nHp_max
  5382. set_user_health(nKiller, nKiller_hp)
  5383. // Hud message "Healed +15/+30 hp"
  5384. set_hudmessage(0, 255, 0, -1.0, 0.15, 0, 1.0, 1.0, 0.1, 0.1, -1)
  5385. show_hudmessage(nKiller, "Healed +%d hp", nHp_add)
  5386. // Screen fading
  5387. message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, nKiller)
  5388. write_short(1<<10)
  5389. write_short(1<<10)
  5390. write_short(0x0000)
  5391. write_byte(0)
  5392. write_byte(0)
  5393. write_byte(200)
  5394. write_byte(75)
  5395. message_end()
  5396.  
  5397. }
  5398.  
  5399. public handle_say(id) {
  5400. new said[192]
  5401. read_args(said,192)
  5402. if( ( containi(said, "who") != -1 && containi(said, "admin") != -1 ) || contain(said, "/vips") != -1 )
  5403. set_task(0.1,"print_adminlist",id)
  5404. return PLUGIN_CONTINUE
  5405. }
  5406.  
  5407. public print_adminlist(user)
  5408. {
  5409. new adminnames[33][32]
  5410. new message[256]
  5411. new contactinfo[256], contact[112]
  5412. new id, count, x, len
  5413.  
  5414. for(id = 1 ; id <= maxplayers ; id++)
  5415. if(is_user_connected(id))
  5416. if(get_user_flags(id) & ADMIN_LEVEL_H)
  5417. get_user_name(id, adminnames[count++], 31)
  5418.  
  5419. len = format(message, 255, "%s Online Vip-ek: ",COLOR)
  5420. if(count > 0)
  5421. {
  5422. for(x = 0 ; x < count ; x++)
  5423. {
  5424. len += format(message[len], 255-len, "%s%s%s ", COLOR, adminnames[x], x < (count-1) ? "^x01, ":"")
  5425. if(len > 96 ) {
  5426. print_message(user, message)
  5427. len = format(message, 255, "%s ",COLOR)
  5428. }
  5429. }
  5430. print_message(user, message)
  5431. }
  5432. else {
  5433. len += format(message[len], 255-len, "Ninncs fent vip")
  5434. print_message(user, message)
  5435. }
  5436.  
  5437. get_cvar_string("amx_contactinfo", contact, 63)
  5438. if(contact[0]) {
  5439. format(contactinfo, 111, "%s Admin Hely -- %s", COLOR, contact)
  5440. print_message(user, contactinfo)
  5441. }
  5442. return PLUGIN_HANDLED;
  5443. }
  5444.  
  5445. public print_message(id, msg[])
  5446. {
  5447. if(!is_user_connected(id))
  5448. return;
  5449. message_begin(MSG_ONE, gmsgSayText, {0,0,0}, id)
  5450. write_byte(id)
  5451. write_string(msg)
  5452. message_end()
  5453. }
  5454.  
  5455. public ShowMotd(id)
  5456. {
  5457. show_motd(id, "vip.txt")
  5458. }
  5459.  
  5460. public forward_player_prethink( id )
  5461. {
  5462. if( bSilent[ id ] )
  5463. {
  5464. set_pev( id, pev_flTimeStepSound, 999 );
  5465. }
  5466. }
  5467. public KomendaDajPrzedmiot(id, level, cid)
  5468. {
  5469. if(!cmd_access(id,level,cid,3))
  5470. return PLUGIN_HANDLED;
  5471.  
  5472. new arg1[33]
  5473. new arg2[6]
  5474. read_argv(1, arg1, 32)
  5475. read_argv(2, arg2, 5)
  5476. new gracz = cmd_target(id, arg1, 0)
  5477. new przedmiot = str_to_num(arg2)-1
  5478.  
  5479. if(przedmiot < 1 || przedmiot > sizeof nazwy_przedmiotow-1)
  5480. {
  5481. client_print(id, print_console, "Mikor Mostal utojara fogat?")
  5482. return PLUGIN_HANDLED;
  5483. }
  5484.  
  5485. DajPrzedmiot(gracz, przedmiot);
  5486. return PLUGIN_HANDLED;
  5487. }
  5488. public REKLAMA()
  5489. {
  5490. ColorChat(0, GREEN, "[CodMw3] A szerver tulajdonosa K.O/CFG by : Pele/ Modot magyarositota: pele & K.O/ Mod elado 500 ft!");
  5491. ColorChat(0, GREEN, "[CodMw3] Nagy admin:1016Ft Kis admin = 508ft Ezek mind 1 honapra szolnak!");
  5492. ColorChat(0, GREEN, "[CodMw3] Ha viszont V.I.P Akasz venni ird /buyvip");
  5493. client_cmd(0, "cl_minmodels ^"0^"");
  5494. set_task(120.0, "REKLAMA");
  5495. }
  5496. public beskonacno(id)
  5497. {
  5498. new wp = read_data(2)
  5499. if(g_WeaponSlots[wp] == 1|| g_WeaponSlots[wp] == 2)
  5500. {
  5501. if(!cs_get_user_bpammo(id, wp))
  5502. cs_set_user_bpammo(id, wp, g_MaxBPAmmo[wp])
  5503. }
  5504. }
  5505. public KupiDefuse(id)
  5506. {
  5507. new pare_igraca = cs_get_user_money(id);
  5508.  
  5509. if(get_user_team(id) != 2)
  5510. {
  5511. ColorChat(id, NORMAL, "^3[COD:MW3]^4 Sikeres Volt");
  5512. return PLUGIN_CONTINUE;
  5513. }
  5514. else if(pare_igraca < 200)
  5515. {
  5516. ColorChat(id, NORMAL, "^3[COD:MW3]^4 Szep Volt");
  5517. ColorChat(id, NORMAL, "^3[COD:MW3]^4 Grt^3 %i/ 200", pare_igraca);
  5518. return PLUGIN_CONTINUE;
  5519. }
  5520. else if(cs_get_user_defuse(id) == 1)
  5521. {
  5522. ColorChat(id, NORMAL, "^3[COD:MW3]^4 Sikeres");
  5523. return PLUGIN_CONTINUE;
  5524. }
  5525. cs_set_user_money(id, pare_igraca-200);
  5526. cs_set_user_defuse(id, 1);
  5527.  
  5528. return PLUGIN_CONTINUE;
  5529. }
  5530. /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
  5531. *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
  5532. */
  5533.