Advertisement
Guest User

[PAWN] Zombie Biohazard v1.1 by MiljanX

a guest
Jul 3rd, 2012
822
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 19.39 KB | None | 0 0
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <biohazard>
  4. #include <cstrike>
  5. #include <engine>
  6. #include <fun>
  7. #include <fakemeta>
  8. #include <colorchat>
  9.  
  10. #define PLUGIN_NAME "Zombie Biohazard VIP"
  11. #define PLUGIN_VERSION "1.0"
  12. #define PLUGIN_AUTHOR "MiljanX"
  13.  
  14. #define FALL_VELOCITY 350.0
  15.  
  16. enum Cvarovi
  17. {
  18. VIP_INVISIBL,
  19. VIP_INVISIBL_COST,
  20. VIP_RE_HP,
  21. VIP_RE_HP_COST,
  22. VIP_ARMOR,
  23. VIP_ARMOR_COST,
  24. VIP_HEALTH_SHOP,
  25. VIP_STO_HP_COST,
  26. VIP_DVESTA_HP_COST,
  27. VIP_PESTO_HP_COST,
  28. VIP_HILJADU_HP_COST,
  29. VIP_ARMOR_SHOP,
  30. VIP_STO_AM_COST,
  31. VIP_DVESTA_AM_COST,
  32. VIP_PESTO_AM_COST
  33. }
  34.  
  35. new const g_Imena[Cvarovi][] =
  36. {
  37. "bh_vip_invisibility", //
  38. "bh_vip_invisibility_cost", //
  39. "bh_vip_regenerate_hp", //
  40. "bh_vip_regenerate_hp_cost", //
  41. "bh_vip_regenerate_armor", //
  42. "bh_vip_regenerate_armor_cost", //
  43. "bh_vip_health_shop", //
  44. "bh_vip_sto_hp_cost", //
  45. "bh_vip_dvesta_hp_cost", //
  46. "bh_vip_pesto_hp_cost", //
  47. "bh_vip_hiljadu_hp_cost", //
  48. "bh_vip_armor_shop", //
  49. "bh_vip_sto_am_cost",
  50. "bh_vip_dvesta_am_cost",
  51. "bh_vip_pesto_am_cost"
  52. };
  53.  
  54. new const g_Vrednost[Cvarovi][] =
  55. {
  56. "1", //
  57. "7000", //
  58. "1", //
  59. "3500", //
  60. "1", //
  61. "4500", //
  62. "1", //
  63. "900", //
  64. "1800", //
  65. "3000", //
  66. "9000", //
  67. "1", //
  68. "5000",
  69. "10000",
  70. "16000"
  71. };
  72.  
  73. #if cellbits == 32
  74. const OFFSET_CLIPAMMO = 51
  75. #else
  76. const OFFSET_CLIPAMMO = 65
  77. #endif
  78. const OFFSET_LINUX_WEAPONS = 4
  79.  
  80. new const MAXCLIP[] = { -1, 13, -1, 10, 1, 7, -1, 30, 30, 1, 30, 20, 25, 30, 35, 25, 12, 20,
  81. 10, 30, 100, 8, 30, 30, 20, 2, 7, 30, 30, -1, 50 }
  82.  
  83. new g_SviCvarovi[Cvarovi];
  84. new has_imm[33]
  85. new bool:falling[33];
  86. new g_has_unlimited_clip[33]
  87.  
  88. new g_cfgputanja[]="addons/amxmodx/confgis/bh_vip.cfg"
  89. new const narudzba[] = "addons/amxmodx/configs/vip_narudzbe.txt"
  90.  
  91. public plugin_init()
  92. {
  93. register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR)
  94.  
  95. register_clcmd("say /vm","vmenu")
  96. register_clcmd("say /vip","openmotd")
  97. register_clcmd("say /buyvip","buyvip")
  98. register_clcmd("UNESITE_VAS_EMAIL", "type_mail")
  99.  
  100. register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
  101. register_message(get_user_msgid("CurWeapon"), "message_cur_weapon")
  102.  
  103. register_logevent("StartRunde", 2, "1=Round_Start")
  104.  
  105. for ( new Cvarovi:i = VIP_INVISIBL ; i < Cvarovi ; i++ )
  106. g_SviCvarovi[i] = register_cvar(g_Imena[i] , g_Vrednost[i]);
  107.  
  108. set_task(180.0,"Adv_pub" , _ , _ , _ , "b")
  109.  
  110. if(!cvar_exists("mp_falldamage"))
  111. {
  112. register_cvar("mp_falldamage", "0");
  113. }
  114. }
  115.  
  116. public client_putinserver(player)
  117. {
  118. set_task(5.0,"vip_connect")
  119.  
  120. if(get_user_flags(player) & ADMIN_LEVEL_H)
  121. g_has_unlimited_clip[player] = true
  122. }
  123.  
  124. public plugin_precache()
  125. {
  126. if(!file_exists(g_cfgputanja))
  127. {
  128. write_file(g_cfgputanja, ";Zombie Biohazard VIP by MiljanX")
  129. write_file(g_cfgputanja, ";-------------------")
  130. write_file(g_cfgputanja, "// VIP Menu - Cvars")
  131. write_file(g_cfgputanja, "bh_vip_invisibility ^"1^" // Da li je ukljucen VIP Invisibility u VIP meniju ? (1 - Da, 0 - Ne)")
  132. write_file(g_cfgputanja, "bh_vip_regenerate_hp ^"1^" // Da li je ukljucen Regenerate Health u VIP meniju ? (1 - Da, 0 - Ne)")
  133. write_file(g_cfgputanja, "bh_vip_regenerate_armor ^"1^" // Da li je ukljucen Regenerate Armor u VIP meniju ? (1 - Da, 0 - Ne)")
  134. write_file(g_cfgputanja, "bh_vip_health_shop ^"1^" // Da li je ukljucen Health Shop u VIP meniju ? (1 - Da, 0 - Ne)")
  135. write_file(g_cfgputanja, "bh_vip_armor_shop ^"1^" // Da li je ukljucen Armor Shop u VIP meniju ? (1 - Da, 0 - Ne)")
  136. write_file(g_cfgputanja, "")
  137. write_file(g_cfgputanja, "// Cene Itema")
  138. write_file(g_cfgputanja, "bh_vip_invisibility_cost ^"7000^" // Koliko kosta VIP Invisibility (default 7000$)")
  139. write_file(g_cfgputanja, "bh_vip_regenerate_hp_cost ^"3500^" // Koliko kosta Regenerate Health (default 3500$)")
  140. write_file(g_cfgputanja, "bh_vip_regenerate_armor_cost ^"4500^" // Koliko kosta Regenerate Armor (default 4500$)")
  141. write_file(g_cfgputanja, "")
  142. write_file(g_cfgputanja, "// Health Shop - Cene")
  143. write_file(g_cfgputanja, "bh_vip_sto_hp_cost ^"900^" // Koliko kosta 100HP (default 900$)")
  144. write_file(g_cfgputanja, "bh_vip_dvesta_hp_cost ^"1800^" // Koliko kosta 200HP (default 1800$)")
  145. write_file(g_cfgputanja, "bh_vip_pesto_hp_cost ^"3000^" // Koliko kosta 500HP (default 3000$)")
  146. write_file(g_cfgputanja, "bh_vip_hiljadu_hp_cost ^"9000^" // Koliko kosta 1000HP (default 9000$)")
  147. write_file(g_cfgputanja, "")
  148. write_file(g_cfgputanja, "// Armor Shop - Cene")
  149. write_file(g_cfgputanja, "bh_vip_sto_am_cost ^"5000^" // Koliko kosta 100AM (default 5000$)")
  150. write_file(g_cfgputanja, "bh_vip_dvesta_am_cost ^"10000^" // Koliko kosta 200AM (default 10000$)")
  151. write_file(g_cfgputanja, "bh_vip_pesto_am_cost ^"16000^" // Koliko kosta 500AM (default 16000$)")
  152. }
  153.  
  154. if(!file_exists(narudzba))
  155. {
  156. write_file(narudzba,"Ovde mozete videti sve narudzbe VIP-a preko vaseg servera.")
  157. write_file(narudzba,"Zloupotrebe slobodno mozete banovati posto vam pise STEAM ID igraca.")
  158. write_file(narudzba,"Porudzbinu VIP-a odgovarate na mail koji su ovde upisali.")
  159. write_file(narudzba,"==================================================")
  160. write_file(narudzba," ")
  161. }
  162. }
  163.  
  164. public vmenu(id)
  165. {
  166. if(is_user_zombie(id) || !is_user_alive(id))
  167. {
  168. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Trenutno ne mozes koristiti ovu komandu")
  169. return PLUGIN_HANDLED
  170. }
  171.  
  172. if(get_user_flags(id) & ADMIN_LEVEL_H)
  173. {
  174. new szText[555 char]
  175. formatex(szText, charsmax(szText), "\rVIP Extra Items")
  176. new menu = menu_create(szText, "vm_items")
  177.  
  178. formatex(szText, charsmax(szText), "\yVIP Invisibility \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_INVISIBL_COST]))
  179. menu_additem(menu, szText, "1", 0)
  180.  
  181. formatex(szText, charsmax(szText), "\yRegenerate Health \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_RE_HP_COST]))
  182. menu_additem(menu, szText, "2", 0)
  183.  
  184. formatex(szText, charsmax(szText), "\yRegenerate Armor \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_ARMOR_COST]))
  185. menu_additem(menu, szText, "3", 0)
  186.  
  187. formatex(szText, charsmax(szText), "\rHealth Shop")
  188. menu_additem(menu, szText, "4", 0)
  189.  
  190. formatex(szText, charsmax(szText), "\rArmor Shop")
  191. menu_additem(menu, szText, "5", 0)
  192.  
  193. formatex(szText, charsmax(szText), "\rChoose Glow Color")
  194. menu_additem(menu, szText, "6", 0)
  195.  
  196. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
  197. menu_display(id, menu)
  198.  
  199. return PLUGIN_HANDLED
  200. }
  201.  
  202. else
  203. {
  204. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Niste VIP clan")
  205. return PLUGIN_HANDLED
  206. }
  207. return PLUGIN_HANDLED
  208. }
  209.  
  210. public vm_items(id,menu,item)
  211. {
  212. if(item ==MENU_EXIT)
  213. {
  214. menu_destroy(menu)
  215. return PLUGIN_CONTINUE
  216. }
  217. new data[6], iName[64], access, callback
  218. menu_item_getinfo(menu, item, access, data, charsmax(data), iName, charsmax(iName), callback )
  219. new key = str_to_num(data)
  220. new money = cs_get_user_money(id)
  221. switch(key)
  222. {
  223. case 1:
  224. {
  225. if(get_pcvar_num(g_SviCvarovi[VIP_INVISIBL]) == 1)
  226. {
  227. if(money < get_pcvar_num(g_SviCvarovi[VIP_INVISIBL_COST]))
  228. {
  229. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  230. return PLUGIN_HANDLED
  231. }
  232.  
  233. else
  234. {
  235. set_task(10.0,"Turn_Off_Invisibility",id)
  236. has_imm[id] = true
  237. cs_set_user_money(id,money - get_pcvar_num(g_SviCvarovi[VIP_INVISIBL_COST]))
  238. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Kupili ste ^3VIP Invisibility ^1, traje jos 10 sekundi")
  239. }
  240. }
  241. else
  242. {
  243. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Server je iskljucio ovu opciju")
  244. return PLUGIN_HANDLED
  245. }
  246. }
  247.  
  248. case 2:
  249. {
  250. if(get_pcvar_num(g_SviCvarovi[VIP_RE_HP]) == 1)
  251. {
  252. if(money < get_pcvar_num(g_SviCvarovi[VIP_RE_HP_COST]))
  253. {
  254. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  255. return PLUGIN_HANDLED
  256. }
  257.  
  258. else
  259. {
  260. set_user_health(id, 100)
  261. cs_set_user_money(id,money - get_pcvar_num(g_SviCvarovi[VIP_RE_HP_COST]))
  262. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Vasa Helta je vracena na 100")
  263. }
  264. }
  265. else
  266. {
  267. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Server je iskljucio ovu opciju")
  268. return PLUGIN_HANDLED
  269. }
  270. }
  271.  
  272. case 3:
  273. {
  274. if(get_pcvar_num(g_SviCvarovi[VIP_ARMOR]) == 1)
  275. {
  276. if(money < get_pcvar_num(g_SviCvarovi[VIP_ARMOR_COST]))
  277. {
  278. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  279. return PLUGIN_HANDLED
  280. }
  281.  
  282. else
  283. {
  284. set_user_armor(id, 100)
  285. cs_set_user_money(id,money - get_pcvar_num(g_SviCvarovi[VIP_ARMOR_COST]))
  286. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Vas Armor je vracen na 100")
  287. }
  288. }
  289. else
  290. {
  291. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Server je iskljucio ovu opciju")
  292. return PLUGIN_HANDLED
  293. }
  294. }
  295.  
  296. case 4:
  297. {
  298. if(get_pcvar_num(g_SviCvarovi[VIP_HEALTH_SHOP]) == 1)
  299. {
  300. new szText[555 char]
  301. formatex(szText, charsmax(szText), "\rVIP health Shop")
  302. new menu = menu_create(szText, "vm_hp_items")
  303. formatex(szText, charsmax(szText), "\y100HP \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_STO_HP_COST]))
  304. menu_additem(menu, szText, "1", 0)
  305. formatex(szText, charsmax(szText), "\y200HP \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_DVESTA_HP_COST]))
  306. menu_additem(menu, szText, "2", 0)
  307. formatex(szText, charsmax(szText), "\y500HP \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_PESTO_HP_COST]))
  308. menu_additem(menu, szText, "3", 0)
  309. formatex(szText, charsmax(szText), "\y1000HP \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_HILJADU_HP_COST]))
  310. menu_additem(menu, szText, "4", 0)
  311. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
  312. menu_display(id, menu)
  313. return PLUGIN_HANDLED
  314. }
  315. else
  316. {
  317. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Server je iskljucio ovu opciju")
  318. return PLUGIN_HANDLED
  319. }
  320. }
  321.  
  322. case 5:
  323. {
  324. if(get_pcvar_num(g_SviCvarovi[VIP_ARMOR_SHOP]) == 1)
  325. {
  326. new szText[555 char]
  327. formatex(szText, charsmax(szText), "\rVIP Armor Shop")
  328. new menu = menu_create(szText, "vm_am_items")
  329. formatex(szText, charsmax(szText), "\y100AM \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_STO_AM_COST]))
  330. menu_additem(menu, szText, "1", 0)
  331. formatex(szText, charsmax(szText), "\y200AM \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_DVESTA_AM_COST]))
  332. menu_additem(menu, szText, "2", 0)
  333. formatex(szText, charsmax(szText), "\y5000AM \r[\w%d$\r]",get_pcvar_num(g_SviCvarovi[VIP_PESTO_AM_COST]))
  334. menu_additem(menu, szText, "3", 0)
  335. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
  336. menu_display(id, menu)
  337. return PLUGIN_HANDLED
  338. }
  339. else
  340. {
  341. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Server je iskljucio ovu opciju")
  342. return PLUGIN_HANDLED
  343. }
  344. }
  345.  
  346. case 6:
  347. {
  348. new szText[555 char]
  349. formatex(szText, charsmax(szText), "\rChoose Glow Color")
  350. new menu = menu_create(szText, "vm_glow_items")
  351. formatex(szText, charsmax(szText), "\yRed")
  352. menu_additem(menu, szText, "1", 0)
  353. formatex(szText, charsmax(szText), "\yBlue")
  354. menu_additem(menu, szText, "2", 0)
  355. formatex(szText, charsmax(szText), "\yYellow")
  356. menu_additem(menu, szText, "3", 0)
  357. formatex(szText, charsmax(szText), "\yGreen")
  358. menu_additem(menu, szText, "4", 0)
  359. formatex(szText, charsmax(szText), "\yPink")
  360. menu_additem(menu, szText, "5", 0)
  361. formatex(szText, charsmax(szText), "\rBlack")
  362. menu_additem(menu, szText, "6", 0)
  363. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
  364. menu_display(id, menu)
  365. return PLUGIN_HANDLED
  366. }
  367. }
  368. return PLUGIN_HANDLED
  369. }
  370.  
  371. public event_infect(victim)
  372. {
  373. if(has_imm[victim])
  374. {
  375. cure_user(victim)
  376. }
  377. }
  378. public Turn_Off_Invisibility(id)
  379. {
  380. if(is_user_connected(id))
  381. {
  382. has_imm[id]=false
  383. }
  384. }
  385.  
  386.  
  387. public vm_hp_items(id,menu,item)
  388. {
  389. if(item ==MENU_EXIT)
  390. {
  391. menu_destroy(menu)
  392. return PLUGIN_CONTINUE
  393. }
  394. new data[6], iName[64], access, callback
  395. menu_item_getinfo(menu, item, access, data, charsmax(data), iName, charsmax(iName), callback )
  396. new key = str_to_num(data)
  397. new money = cs_get_user_money(id)
  398. new health = get_user_health(id)
  399. switch(key)
  400. {
  401. case 1:
  402. {
  403. if(money < get_pcvar_num(g_SviCvarovi[VIP_STO_HP_COST]))
  404. {
  405. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  406. return PLUGIN_HANDLED
  407. }
  408.  
  409. else
  410. {
  411. set_user_health(id, health + 100)
  412. cs_set_user_money(id, money - get_pcvar_num(g_SviCvarovi[VIP_STO_HP_COST]))
  413. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Kupili ste 100HP")
  414. }
  415. }
  416. case 2:
  417. {
  418. if(money < get_pcvar_num(g_SviCvarovi[VIP_DVESTA_HP_COST]))
  419. {
  420. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  421. return PLUGIN_HANDLED
  422. }
  423.  
  424. else
  425. {
  426. set_user_health(id, health + 200)
  427. cs_set_user_money(id, money - get_pcvar_num(g_SviCvarovi[VIP_DVESTA_HP_COST]))
  428. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Kupili ste 200HP")
  429. }
  430. }
  431. case 3:
  432. {
  433. if(money < get_pcvar_num(g_SviCvarovi[VIP_PESTO_HP_COST]))
  434. {
  435. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  436. return PLUGIN_HANDLED
  437. }
  438.  
  439. else
  440. {
  441. set_user_health(id, health + 500)
  442. cs_set_user_money(id, money - get_pcvar_num(g_SviCvarovi[VIP_PESTO_HP_COST]))
  443. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Kupili ste 500HP")
  444. }
  445. }
  446. case 4:
  447. {
  448. if(money < get_pcvar_num(g_SviCvarovi[VIP_HILJADU_HP_COST]))
  449. {
  450. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  451. return PLUGIN_HANDLED
  452. }
  453.  
  454. else
  455. {
  456. set_user_health(id, health + 1000)
  457. cs_set_user_money(id, money - get_pcvar_num(g_SviCvarovi[VIP_HILJADU_HP_COST]))
  458. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Kupili ste 1000HP")
  459. }
  460. }
  461. }
  462. return PLUGIN_HANDLED
  463. }
  464.  
  465.  
  466. public vm_am_items(id,menu,item)
  467. {
  468. if(item ==MENU_EXIT)
  469. {
  470. menu_destroy(menu)
  471. return PLUGIN_CONTINUE
  472. }
  473. new data[6], iName[64], access, callback
  474. menu_item_getinfo(menu, item, access, data, charsmax(data), iName, charsmax(iName), callback )
  475. new key = str_to_num(data)
  476. new money = cs_get_user_money(id)
  477. new armor = get_user_armor(id)
  478. switch(key)
  479. {
  480. case 1:
  481. {
  482. if(money < get_pcvar_num(g_SviCvarovi[VIP_STO_AM_COST]))
  483. {
  484. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  485. return PLUGIN_HANDLED
  486. }
  487.  
  488. else
  489. {
  490. set_user_armor(id, armor + 100)
  491. cs_set_user_money(id, money - get_pcvar_num(g_SviCvarovi[VIP_STO_AM_COST]))
  492. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Kupili ste 100AM")
  493. }
  494. }
  495. case 2:
  496. {
  497. if(money < get_pcvar_num(g_SviCvarovi[VIP_DVESTA_AM_COST]))
  498. {
  499. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  500. return PLUGIN_HANDLED
  501. }
  502.  
  503. else
  504. {
  505. set_user_armor(id, armor + 200)
  506. cs_set_user_money(id, money - get_pcvar_num(g_SviCvarovi[VIP_DVESTA_AM_COST]))
  507. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Kupili ste 200AM")
  508. }
  509. }
  510. case 3:
  511. {
  512. if(money < get_pcvar_num(g_SviCvarovi[VIP_PESTO_AM_COST]))
  513. {
  514. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Nemate dovoljno para")
  515. return PLUGIN_HANDLED
  516. }
  517.  
  518. else
  519. {
  520. set_user_armor(id, armor + 500)
  521. cs_set_user_money(id, money - get_pcvar_num(g_SviCvarovi[VIP_PESTO_AM_COST]))
  522. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Kupili ste 500AM")
  523. }
  524. }
  525. }
  526. return PLUGIN_HANDLED
  527. }
  528.  
  529.  
  530. public vm_glow_items(id,menu,item)
  531. {
  532. if(item ==MENU_EXIT)
  533. {
  534. menu_destroy(menu)
  535. return PLUGIN_CONTINUE
  536. }
  537. new data[6], iName[64], access, callback
  538. menu_item_getinfo(menu, item, access, data, charsmax(data), iName, charsmax(iName), callback )
  539. new key = str_to_num(data)
  540. switch(key)
  541. {
  542. case 1: set_user_rendering(id, kRenderFxGlowShell, 255, 0, 0, kRenderNormal, 25)
  543. case 2: set_user_rendering(id, kRenderFxGlowShell, 0, 0, 255, kRenderNormal, 25)
  544. case 3: set_user_rendering(id, kRenderFxGlowShell, 255, 255, 0, kRenderNormal, 25)
  545. case 4: set_user_rendering(id, kRenderFxGlowShell, 0, 255, 0, kRenderNormal, 25)
  546. case 5: set_user_rendering(id, kRenderFxGlowShell, 255, 0, 255, kRenderNormal, 25)
  547. case 6: set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 25)
  548. }
  549. return PLUGIN_HANDLED
  550. }
  551.  
  552.  
  553. public client_PreThink(id)
  554. {
  555. if(get_cvar_num("mp_falldamage") == 0 && is_user_alive(id) && is_user_connected(id))
  556. {
  557. if(entity_get_float(id, EV_FL_flFallVelocity) >= FALL_VELOCITY)
  558. {
  559. falling[id] = true;
  560. }
  561. else
  562. {
  563. falling[id] = false;
  564. }
  565. }
  566. }
  567.  
  568. public client_PostThink(id)
  569. {
  570. if(get_cvar_num("mp_falldamage") == 0 && is_user_alive(id) && is_user_connected(id))
  571. {
  572. if(get_user_flags(id) & ADMIN_LEVEL_H)
  573. {
  574. if(falling[id])
  575. {
  576. entity_set_int(id, EV_INT_watertype, -3);
  577. }
  578. }
  579. }
  580. }
  581.  
  582. public event_round_start()
  583. {
  584. for (new id; id <= 32; id++) g_has_unlimited_clip[id] = false;
  585. }
  586.  
  587. public message_cur_weapon(msg_id, msg_dest, msg_entity)
  588. {
  589. if (!g_has_unlimited_clip[msg_entity])
  590. return;
  591.  
  592. if (!is_user_alive(msg_entity) || get_msg_arg_int(1) != 1 || is_user_zombie(msg_entity))
  593. return;
  594.  
  595. static weapon, clip
  596. weapon = get_msg_arg_int(2)
  597. clip = get_msg_arg_int(3)
  598.  
  599. if (MAXCLIP[weapon] > 2)
  600. {
  601. set_msg_arg_int(3, get_msg_argtype(3), MAXCLIP[weapon])
  602.  
  603. if (clip < 2)
  604. {
  605. static wname[32], weapon_ent
  606. get_weaponname(weapon, wname, sizeof wname - 1)
  607. weapon_ent = fm_find_ent_by_owner(-1, wname, msg_entity)
  608.  
  609. fm_set_weapon_ammo(weapon_ent, MAXCLIP[weapon])
  610. }
  611. }
  612. }
  613.  
  614. stock fm_find_ent_by_owner(entity, const classname[], owner)
  615. {
  616. while ((entity = engfunc(EngFunc_FindEntityByString, entity, "classname", classname)) && pev(entity, pev_owner) != owner) {}
  617.  
  618. return entity;
  619. }
  620.  
  621. stock fm_set_weapon_ammo(entity, amount)
  622. {
  623. set_pdata_int(entity, OFFSET_CLIPAMMO, amount, OFFSET_LINUX_WEAPONS);
  624. }
  625.  
  626. public openmotd(id)
  627. {
  628. new configsdir[200]
  629. new MOTDfile[200]
  630.  
  631. get_configsdir(configsdir,199)
  632. format(MOTDfile,199,"%s/vip.html",configsdir)
  633.  
  634. show_motd(id,MOTDfile)
  635.  
  636. return PLUGIN_HANDLED
  637. }
  638.  
  639. public vip_connect(id)
  640. {
  641. if(is_user_connected(id))
  642. {
  643. if(get_user_flags(id) & ADMIN_LEVEL_H)
  644. {
  645. new ime[32]
  646. get_user_name(id, ime, 31)
  647. set_hudmessage(255, 0, 0, 0.06, 0.73, 0, 6.0, 10.0)
  648. show_hudmessage(0, "VIP %s je dosao na server",ime)
  649. }
  650. return PLUGIN_HANDLED
  651. }
  652. return PLUGIN_HANDLED
  653. }
  654.  
  655. public StartRunde()
  656. {
  657. ColorChat(0,NORMAL,"^4[VIP] ^1Da vidis VIP privilegije say ^3/vip^1")
  658. ColorChat(0,NORMAL,"^4[VIP] ^1Da otvoris VIP menu say ^3/vm^1")
  659. ColorChat(0,NORMAL,"^4[VIP] ^1Ako zelite da narucite VIP-a say ^3/buyvip^1")
  660. return PLUGIN_HANDLED
  661. }
  662.  
  663. public Adv_pub()
  664. {
  665. ColorChat(0,NORMAL,"^4[VIP] ^1Ovaj server koristi ^3Zombie Biohazard VIP ^1by ^3MiljanX^1")
  666. return PLUGIN_HANDLED
  667. }
  668.  
  669.  
  670. public buyvip(id)
  671. {
  672. client_cmd(id, "messagemode UNESITE_VAS_EMAIL")
  673. set_hudmessage(0, 255, 0, -1.0, 0.38, 0, 6.0, 10.0)
  674. show_hudmessage(id, "Ukucajte vas E-Mail")
  675. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Ukucajte vas E-mail")
  676. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Svaka zloupotreba se kaznjava")
  677. return PLUGIN_CONTINUE
  678. }
  679.  
  680. public type_mail(id)
  681. {
  682. new receno[192]
  683. new ime[33]
  684. new steam[33]
  685. new nesto[192]
  686. read_args(receno,191)
  687. get_user_name(id,ime,32)
  688. get_user_authid(id,steam,32)
  689. remove_quotes(receno)
  690. format(nesto, 191, "Nick: ^"%s^" je narucio VIP-a. STEAM_ID: ^"%s^". E-Mail: ^"%s^"", ime, steam, receno)
  691. write_file(narudzba, nesto)
  692. write_file(narudzba, " ")
  693. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Uspesno ste narucili VIP-a.")
  694. ColorChat(id, TEAM_COLOR,"^4[VIP] ^1Head Admin ce pregledati vasu porudzbinu i odgovoriti vam na mail u najkracem roku.")
  695. return PLUGIN_HANDLED
  696. }
  697. /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
  698. *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par }
  699. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement