HLMOD.HU Forrás Megtekintés - www.hlmod.hu
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <csx>
  4. #include <engine>
  5. #include <cstrike>
  6. #include <fakemeta>
  7. #include <fun>
  8.  
  9.  
  10. #define PLUGIN "Granat ero"
  11. #define VERSION "1.0"
  12. #define AUTHOR "Nandee"
  13.  
  14. new Float:nadegrav[33]
  15. new bool:inattack[33]
  16. new pcvarenable
  17.  
  18. public plugin_init()
  19. {
  20. register_plugin(PLUGIN, VERSION, AUTHOR)
  21. pcvarenable=register_cvar("amx_nadepower","1")
  22. }
  23.  
  24. public client_PreThink(id)
  25. {
  26. if(get_pcvar_num(pcvarenable)!=1||!is_user_alive(id))
  27. return PLUGIN_CONTINUE
  28. if((get_user_weapon(id)!=CSW_FLASHBANG&&get_user_weapon(id)!=CSW_HEGRENADE&&get_user_weapon(id)!=CSW_SMOKEGRENADE))
  29. {
  30. if(task_exists(id))
  31. remove_task(id)
  32. progress_bar(id,0)
  33. }
  34. if(entity_get_int(id, EV_INT_button)&IN_ATTACK)
  35. {
  36. inattack[id]=true
  37. if(get_user_weapon(id)==CSW_FLASHBANG||get_user_weapon(id)==CSW_HEGRENADE||get_user_weapon(id)==CSW_SMOKEGRENADE)
  38. {
  39. if(!task_exists(id))
  40. {
  41. nadegrav[id]=3.8
  42. count_grav(id)
  43. progress_bar(id,2)
  44. }
  45. }
  46. }
  47. else
  48. inattack[id]=false
  49. return PLUGIN_HANDLED
  50. }
  51.  
  52. public grenade_throw(id,nadeent,wid)
  53. {
  54. if(get_pcvar_num(pcvarenable)!=1)
  55. return FMRES_IGNORED
  56. progress_bar(id,0)
  57. entity_set_float(nadeent,EV_FL_gravity,nadegrav[id])
  58. return FMRES_IGNORED
  59. }
  60.  
  61. public count_grav(id)
  62. {
  63. if(nadegrav[id]<=0.5)
  64. {
  65. client_cmd(id,"-attack")
  66. if(task_exists(id))
  67. remove_task(id)
  68. progress_bar(id,0)
  69. return PLUGIN_HANDLED
  70. }
  71. if(!inattack[id])
  72. {
  73. if(task_exists(id))
  74. remove_task(id)
  75. progress_bar(id,0)
  76. return PLUGIN_HANDLED
  77. }
  78. nadegrav[id]-=0.2
  79. set_task(0.1,"count_grav",id)
  80. return PLUGIN_HANDLED
  81. }
  82.  
  83. stock progress_bar(index,pbtime=1)
  84. {
  85. message_begin(MSG_ONE,108,{0,0,0},index)
  86. write_byte(pbtime)
  87. write_byte(0)
  88. message_end()
  89. }