HLMOD.HU Forrás Megtekintés - www.hlmod.hu
  1. /* AMX Mod X
  2. * Admin no recoil
  3. *
  4. * / \ / \ ___________________________
  5. * / / \_/ \ \ / \
  6. * \__/\ /\__/ / GIVE ME A CARROT OR I WILL \
  7. * \O O/ \ BLOW UP YOUR HOUSE /
  8. * ___/ ^ \___ / ___________________________/
  9. * \___/ /_/
  10. * _/ \_
  11. * __// \\__
  12. * /___\/_\/___\
  13. *
  14. * (c) Copyright 2008 by FakeNick
  15. *
  16. * This file is provided as is (no warranties)
  17. *
  18. * DESCRIPTION
  19. * This plugin allows admins with ADMIN_KICK flag to earn no recoil.
  20. *
  21. * MODULES
  22. * fakemeta
  23. * hamsandwich
  24. *
  25. * CVARS
  26. * admin_no_recoil_on - plugin be/ki kapcsolasa
  27. * admin_no_recoil_sound - bekapcsolasnak hangot jatszon-e le
  28. *
  29. * VERSIONS
  30. * 1.0 - first release
  31. *
  32. */
  33.  
  34. #include <amxmodx>
  35. #include <hamsandwich>
  36. #include <fakemeta>
  37.  
  38. new const VERSION[] = "1.0"
  39.  
  40. new const sound_activated[] = "norecoil/activ.wav"
  41.  
  42. new pcvar_on,pcvar_sound
  43.  
  44. new g_norecoil[33],Float:g_angle[3] = {0.0,0.0,0.0}
  45.  
  46. public plugin_init()
  47. {
  48. register_plugin("Admin no recoil", VERSION, "FakeNick");
  49. pcvar_on = register_cvar("admin_no_recoil_on","1");
  50. if(get_pcvar_num(pcvar_on))
  51. {
  52. pcvar_sound = register_cvar("admin_no_recoil_sound","1")
  53. RegisterHam(Ham_Spawn,"player","func_spawn",1);
  54. register_forward(FM_PlayerPreThink,"func_prethink");
  55. }
  56. }
  57. public plugin_precache()
  58. {
  59. engfunc(EngFunc_PrecacheSound,sound_activated);
  60. }
  61. public func_spawn(id)
  62. {
  63. if(!is_user_alive(id))
  64. return;
  65.  
  66. if(get_user_flags(id) & ADMIN_KICK)
  67. {
  68. g_norecoil[id] = true;
  69. if(get_pcvar_num(pcvar_sound))
  70. client_cmd(id,"spk %s",sound_activated);
  71.  
  72. client_print(id,print_chat,"[ANR] Admin no recoil aktivalva!");
  73. }
  74. }
  75. public func_prethink(id)
  76. {
  77. if(!is_user_alive(id) && !g_norecoil[id])
  78. return;
  79.  
  80. set_pev(id,pev_punchangle,g_angle);
  81. }
  82.