seroff

SpecList 1.5 By FatalisDK+Seroff

Jan 10th, 2017
278
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.19 KB | None | 0 0
  1. #include <amxmodx>
  2. #include <fakemeta>
  3.  
  4. #pragma semicolon 1
  5.  
  6. #define RED 64
  7. #define GREEN 64
  8. #define BLUE 64
  9. #define UPDATEINTERVAL 5.0
  10.  
  11. new gMaxPlayers,gCvarImmunity,bool:gOnOff[33] = { true, ... };
  12.  
  13. public plugin_init()
  14. {
  15. register_plugin("SpecList", "1.5", "FatalisDK+Seroff");
  16. gCvarImmunity = register_cvar("amx_speclist_immunity", "1", 0, 0.0);
  17. register_clcmd("say /speclist", "cmdSpecList", -1, "");
  18. gMaxPlayers = get_maxplayers();
  19. set_task(UPDATEINTERVAL, "tskShowSpec", 123094, "", 0, "b", 0);
  20. }
  21.  
  22. public cmdSpecList(id)
  23. {
  24. if( gOnOff[id] )
  25. {
  26. client_print(id, print_chat, "[AMXX] Вы больше не будете видеть, кто в спекртах.");
  27. gOnOff[id] = false;
  28. }
  29. else
  30. {
  31. client_print(id, print_chat, "[AMXX] Теперь вы будете видеть кто в спектрах.");
  32. gOnOff[id] = true;
  33. }
  34. return 0;
  35. }
  36.  
  37. public tskShowSpec()
  38. {
  39. static iCount,szFormat[10],szHud[1102],szName[34],bool:send;
  40. for( new alive = 1; alive <= gMaxPlayers; alive++ )
  41. {
  42. new bool:sendTo[33];
  43. send = false;
  44. if( !is_user_alive(alive) )
  45. {
  46. continue;
  47. }
  48. sendTo[alive] = true;
  49. get_user_name(alive, szName, 32);
  50. format(szHud, 65, "Наблюдают за %s (#num#):^n", szName);
  51. for( new dead = 1; dead <= gMaxPlayers; dead++ )
  52. {
  53. if( is_user_connected(dead) )
  54. {
  55. if( is_user_alive(dead) || is_user_bot(dead) )
  56. {
  57. continue;
  58. }
  59. if( pev(dead, pev_iuser2) == alive )
  60. {
  61. if( !(get_pcvar_num(gCvarImmunity)&&get_user_flags(dead, 0)&ADMIN_IMMUNITY) )
  62. {
  63. iCount++;
  64. get_user_name(dead, szName, 32);
  65. add(szName, 33, "^n", 0);
  66. add(szHud, 1101, szName, 0);
  67. send = true;
  68. }
  69. sendTo[dead] = true;
  70. }
  71. }
  72. }
  73. if( send == true )
  74. {
  75. formatex(szFormat,sizeof(szFormat)-1,"%d",iCount);
  76. replace(szHud, sizeof(szHud)-1, "#num#", szFormat);
  77. for( new i = 1; i <= gMaxPlayers; i++ )
  78. {
  79. if( sendTo[i] == true && gOnOff[i] == true )
  80. {
  81. set_hudmessage(RED, GREEN, BLUE,0.75, 0.15, 0, 0.0, UPDATEINTERVAL + 0.1, 0.0, 0.0, -1);
  82. show_hudmessage(i, szHud);
  83. }
  84. }
  85. }
  86. }
  87. iCount=0;
  88. return 0;
  89. }
  90.  
  91. public client_connect(id) { gOnOff[id] = true; }
Advertisement
Add Comment
Please, Sign In to add comment