HLMOD.HU Forrás Megtekintés - www.hlmod.hu
  1. #include <amxmodx>
  2.  
  3. #pragma semicolon 1
  4.  
  5. //Beállítások.
  6. #define ADMIN ADMIN_KICK //Admin jog, amit ellenõriz
  7.  
  8.  
  9. //Amelyiket ki akarod kapcsolni, az elé írj //-t!
  10. #define ADMIN_LOG_COMMANDS //Logoljon-e admin parancsokat
  11. #define ADMIN_LOG_CONNECT //Logolja-e az adminok le/felcsatlakozását
  12. #define ADMIN_LOG_CHAT //Logolja-e, mit írnak az adminok chatbe
  13.  
  14.  
  15. //Milyen parancsokat ellenõriz le, ha aktív az ADMIN_COMMANDS
  16. //Mint az látható, elég csak a parancs egy részét beírni. :)
  17. new const Cmd_Prefix_List[][] = {
  18. "amx_",
  19. "admin_",
  20. "amxmodmenu"
  21. };
  22.  
  23. //Log fájl elérési útvonala, valamint elõtagja (admin -> elõtag, emögé jön a dátum.)
  24. #define LOG_FILE "addons/amxmodx/logs/admin"
  25.  
  26. new LogTo[64];
  27.  
  28. public plugin_init()
  29. {
  30. register_plugin("Admin Logs", "1.0", "LyleChriss");
  31.  
  32. new Current_Date[32];
  33. get_time("%Y%m%d", Current_Date, charsmax(Current_Date));
  34. formatex(LogTo, charsmax(LogTo), "%s_%s.log", LOG_FILE, Current_Date);
  35.  
  36. new Map[32];
  37. get_mapname(Map, charsmax(Map));
  38. log_to_file(LogTo, "-------- Mapchange to %s --------", Map);
  39. }
  40.  
  41. public client_command(id)
  42. {
  43. if(get_user_flags(id) & ADMIN)
  44. {
  45. new Buffer[128], Data[7][192], Command[16];
  46. read_argv(0, Command, charsmax(Command));
  47. read_args(Buffer, charsmax(Buffer));
  48. parse(Buffer, Data[0], 63, Data[1], 192, Data[2], 63, Data[3], 63, Data[4], 63, Data[5], 63, Data[6], 63);
  49.  
  50. #if defined ADMIN_LOG_COMMANDS
  51. for(new i; i<sizeof(Cmd_Prefix_List); i++)
  52. {
  53. if(containi(Command, Cmd_Prefix_List[i]) != -1)
  54. {
  55. new Name[32], AuthID[32];
  56. get_user_name(id, Name, charsmax(Name));
  57. get_user_authid(id, AuthID, charsmax(AuthID));
  58.  
  59. if(containi(AuthID, "_ID_LAN") != -1)
  60. get_user_ip(id, AuthID, charsmax(AuthID), 1);
  61.  
  62. log_to_file(LogTo, "%s [%s] használta a(z) %s %s %s %s %s %s %s %s parancsot!", Name, AuthID, Command, Data[0], Data[1], Data[2], Data[3], Data[4], Data[5], Data[6]);
  63. break;
  64. }
  65. }
  66. #endif
  67. #if defined ADMIN_LOG_CHAT
  68. if(containi(Command, "say") != -1)
  69. {
  70. new Name[32], AuthID[32];
  71. get_user_name(id, Name, charsmax(Name));
  72. get_user_authid(id, AuthID, charsmax(AuthID));
  73.  
  74. if(containi(AuthID, "_ID_LAN") != -1)
  75. get_user_ip(id, AuthID, charsmax(AuthID), 1);
  76.  
  77. log_to_file(LogTo, "%s [%s] írta: %s ", Name, AuthID, Data[0]);
  78. }
  79. #endif
  80. }
  81. }
  82.  
  83. #if defined ADMIN_LOG_CONNECT
  84. public client_putinserver(id)
  85. {
  86. set_task(1.0, "LogConnect", id);
  87. }
  88.  
  89. public LogConnect(id)
  90. {
  91. if(get_user_flags(id) & ADMIN)
  92. {
  93. new Name[32], AuthID[32];
  94. get_user_name(id, Name, charsmax(Name));
  95. get_user_authid(id, AuthID, charsmax(AuthID));
  96.  
  97. if(containi(AuthID, "_ID_LAN") != -1)
  98. get_user_ip(id, AuthID, charsmax(AuthID), 1);
  99.  
  100. log_to_file(LogTo, "%s [%s] csatlakozott", Name, AuthID);
  101. }
  102. }
  103.  
  104. public client_disconnect(id)
  105. {
  106. if(get_user_flags(id) & ADMIN)
  107. {
  108. new Name[32], AuthID[32];
  109. get_user_name(id, Name, charsmax(Name));
  110. get_user_authid(id, AuthID, charsmax(AuthID));
  111.  
  112. if(containi(AuthID, "_ID_LAN") != -1)
  113. get_user_ip(id, AuthID, charsmax(AuthID), 1);
  114.  
  115. log_to_file(LogTo, "%s [%s] lecsatlakozott", Name, AuthID);
  116. }
  117. }
  118. #endif
  119. /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
  120. *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1038\\ f0\\ fs16 \n\\ par }
  121. */
  122.