HLMOD.HU Forrás Megtekintés - www.hlmod.hu
  1. #include <amxmodx>
  2. #include <fakemeta>
  3. #include <cstrike>
  4. #include <zombieplague>
  5.  
  6. #define PLUGIN "[ZP] Granat csomag"
  7. #define VERSION "1.4"
  8. #define AUTHOR "alan_el_more"
  9.  
  10. new g_engedelyez
  11. new g_granat_csomag
  12. new const g_cost = 35 // Csomag ara
  13.  
  14. public plugin_init()
  15. {
  16. register_plugin(PLUGIN, VERSION, AUTHOR)
  17. g_engedelyez = register_cvar("zp_granat_csomag", "1")
  18. g_granat_csomag = zp_register_extra_item("Granat csomag", g_cost, ZP_TEAM_HUMAN)
  19. }
  20.  
  21. public zp_extra_item_selected(player, itemid)
  22. {
  23. if (itemid == g_granat_csomag)
  24. {
  25. if (get_pcvar_num(g_engedelyez)) {
  26. if(user_has_weapon(player, CSW_HEGRENADE))
  27. {
  28. static napalm
  29. napalm = cs_get_user_bpammo(player, CSW_HEGRENADE)
  30. cs_set_user_bpammo(player, CSW_HEGRENADE, napalm + 1)
  31. }
  32. else
  33. {
  34. fm_give_item(player, "weapon_hegrenade")
  35. }
  36.  
  37. if(user_has_weapon(player, CSW_FLASHBANG))
  38. {
  39. static frost
  40. frost = cs_get_user_bpammo(player, CSW_FLASHBANG)
  41. cs_set_user_bpammo(player, CSW_FLASHBANG, frost + 2)
  42. }
  43. else
  44. {
  45. fm_give_item(player, "weapon_flashbang")
  46. }
  47.  
  48. if(user_has_weapon(player, CSW_SMOKEGRENADE))
  49. {
  50. static flare
  51. flare = cs_get_user_bpammo(player, CSW_SMOKEGRENADE)
  52. cs_set_user_bpammo(player, CSW_SMOKEGRENADE, flare + 1)
  53. }
  54. else
  55. {
  56. fm_give_item(player, "weapon_smokegrenade")
  57. }
  58.  
  59. client_print(player, print_chat, "[ZP_Granat_csomag] Te vettel egy Granat csomagot.")
  60. }
  61. else
  62. {
  63. static ammopacks
  64. ammopacks = zp_get_user_ammo_packs(player)
  65. zp_set_user_ammo_packs(player, ammopacks + g_cost)
  66. }
  67. }
  68. }
  69.  
  70. stock fm_give_item(id, const item[])
  71. {
  72. static ent
  73. ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, item))
  74. if (!pev_valid(ent)) return;
  75.  
  76. static Float:originF[3]
  77. pev(id, pev_origin, originF)
  78. set_pev(ent, pev_origin, originF)
  79. set_pev(ent, pev_spawnflags, pev(ent, pev_spawnflags) | SF_NORESPAWN)
  80. dllfunc(DLLFunc_Spawn, ent)
  81.  
  82. static save
  83. save = pev(ent, pev_solid)
  84. dllfunc(DLLFunc_Touch, ent, id)
  85. if (pev(ent, pev_solid) != save)
  86. return;
  87.  
  88. engfunc(EngFunc_RemoveEntity, ent)
  89. }
  90.