HLMOD.HU Forrás Megtekintés - www.hlmod.hu
  1. /*================================================================================
  2.  
  3. -----------------------------------
  4. -*- [ZP] Zombie Class : Invisible Cat -*-
  5. -----------------------------------
  6. Created by Anggara_nothing. ^_^
  7.  
  8. Description:
  9. The cat will be invisible if not move/jump.
  10.  
  11. Credit:
  12. Hello-World -> Cat model.
  13.  
  14. ================================================================================*/
  15.  
  16. #include <amxmodx>
  17. #include <fun>
  18. #include <fakemeta>
  19. #include <zombieplague>
  20.  
  21. // Zombie Attributes
  22. new const zclass_name[] = { "Lathatatlan macsak" } // name
  23. new const zclass_info[] = { "Egy helyben all lathatatlan" } // description
  24. new const zclass_model[] = { "cat_zombie" } // model
  25. new const zclass_clawmodel[] = { "cat_claw.mdl" } // claw model
  26. const zclass_health = 350 // health
  27. const zclass_speed = 270 // speed
  28. const Float:zclass_gravity = 1.0 // gravity
  29. const Float:zclass_knockback = 1.0 // knockback
  30.  
  31. new g_pcvaramount
  32. // Class IDs
  33. new g_cat_class
  34.  
  35. public plugin_init()
  36. {
  37. register_plugin("[ZP] Poison Cat Zombie", "1.2", "Anggara_nothing")
  38. register_forward(FM_PlayerPreThink, "fw_PlayerPreThink")
  39.  
  40. g_pcvaramount = register_cvar("zp_inviscat_amount", "45")
  41. // Register the new class and store ID for reference
  42. g_cat_class = zp_register_zombie_class(zclass_name, zclass_info, zclass_model, zclass_clawmodel, zclass_health, zclass_speed, zclass_gravity, zclass_knockback)
  43. }
  44.  
  45. // User Infected forward
  46. public zp_user_infected_post(id, infector)
  47. {
  48. if(!zp_get_user_zombie(id))
  49. return;
  50.  
  51. // Check if the infected player is using our custom zombie class
  52. if (zp_get_user_zombie_class(id) == g_cat_class)
  53. {
  54. give_item(id, "item_longjump")
  55. }
  56.  
  57. }
  58.  
  59. public fw_PlayerPreThink(id)
  60. {
  61. if(!is_user_alive(id) || !zp_get_user_zombie(id))
  62. return PLUGIN_CONTINUE;
  63.  
  64. if(zp_get_user_zombie_class(id) != g_cat_class)
  65. return PLUGIN_CONTINUE;
  66.  
  67. new button = pev(id, pev_button)
  68.  
  69. if(button&IN_ATTACK || button&IN_ATTACK2 || button&IN_BACK || button&IN_FORWARD || button&IN_RUN || button&IN_JUMP || button&IN_MOVELEFT || button&IN_MOVERIGHT || button&IN_LEFT || button&IN_RIGHT)
  70. set_user_rendering(id, kRenderFxNone, 0,0,0, kRenderNormal, 255)
  71. else
  72. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, get_pcvar_num(g_pcvaramount))
  73.  
  74.  
  75. return PLUGIN_HANDLED
  76. }
  77.  
  78.