HLMOD.HU Forrás Megtekintés - www.hlmod.hu
  1. #include <amxmodx>
  2. #include <hamsandwich>
  3.  
  4. //Define fade type
  5. #define FFADE_OUT 0x0001
  6.  
  7. //CVAR
  8. new cvar_on, cvar_death, cvar_red, cvar_green, cvar_blue
  9.  
  10. //MSG
  11. new g_MsgScreenFade, g_MsgScreenShake
  12.  
  13. public plugin_init()
  14. {
  15. // Register plugin call
  16. register_plugin("Damage & Death Effect", "1.3.2", "YKH =]")
  17.  
  18. //CVAR
  19. cvar_on = register_cvar("amx_damage_effect_on", "1")
  20. cvar_death = register_cvar("amx_killed_effect_on", "1")
  21. cvar_red = register_cvar("death_color_r","0")
  22. cvar_green = register_cvar("death_color_g","0")
  23. cvar_blue = register_cvar("death_color_b","255")
  24.  
  25. //Forward
  26. RegisterHam(Ham_Killed, "player", "fw_Killed")
  27. RegisterHam(Ham_TakeDamage, "player", "fw_Damage")
  28.  
  29. // Message IDs
  30. g_MsgScreenFade = get_user_msgid("ScreenFade")
  31. g_MsgScreenShake = get_user_msgid("ScreenShake")
  32. }
  33.  
  34. public fw_Killed(victim)
  35. {
  36. if(get_pcvar_num(cvar_death))
  37. {
  38. message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, {0,0,0}, victim)
  39. write_short(12288) // Duration
  40. write_short(12288) // Hold time
  41. write_short(FFADE_OUT) // Fade type
  42. write_byte (get_pcvar_num(cvar_red)) // Red
  43. write_byte (get_pcvar_num(cvar_green)) // Green
  44. write_byte (get_pcvar_num(cvar_blue)) // Blue
  45. write_byte (255) // Alpha
  46. message_end()
  47. }
  48. }
  49.  
  50. public fw_Damage(victim, attacker, Float:damage)
  51. {
  52. if (victim != attacker && damage > 0 && get_pcvar_num(cvar_on))
  53. {
  54. message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenShake, {0,0,0}, victim)
  55. write_short( 1<<14 )
  56. write_short( 1<<14 )
  57. write_short( 1<<14 )
  58. message_end();
  59.  
  60. message_begin(MSG_ONE_UNRELIABLE, g_MsgScreenFade, {0,0,0}, victim)
  61. write_short( 1<<10 )
  62. write_short( 1<<10 )
  63. write_short( 1<<12 )
  64. write_byte( 225 )
  65. write_byte( 0 )
  66. write_byte( 0 )
  67. write_byte( 125 )
  68. message_end()
  69. }
  70. }
  71.  
  72.  
  73. /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
  74. *{\\ rtf1\\ ansi\\ ansicpg950\\ deff0{\\ fonttbl{\\ f0\\ fnil\\ fcharset136 Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1028\\ f0\\ fs16 \n\\ par }
  75. */
  76.