#include <amxmodx>
#pragma semicolon 1
//Beállítások.
#define ADMIN ADMIN_KICK //Admin jog, amit ellenõriz
//Amelyiket ki akarod kapcsolni, az elé írj //-t!
#define ADMIN_LOG_COMMANDS //Logoljon-e admin parancsokat
#define ADMIN_LOG_CONNECT //Logolja-e az adminok le/felcsatlakozását
#define ADMIN_LOG_CHAT //Logolja-e, mit írnak az adminok chatbe
//Milyen parancsokat ellenõriz le, ha aktív az ADMIN_COMMANDS
//Mint az látható, elég csak a parancs egy részét beírni. :)
new const Cmd_Prefix_List[][] = {
"amx_",
"admin_",
"amxmodmenu"
};
//Log fájl elérési útvonala, valamint elõtagja (admin -> elõtag, emögé jön a dátum.)
#define LOG_FILE "addons/amxmodx/logs/admin"
new LogTo[64];
public plugin_init()
{
register_plugin("Admin Logs", "1.0", "LyleChriss");
new Current_Date[32];
get_time("%Y%m%d", Current_Date, charsmax(Current_Date));
formatex(LogTo, charsmax(LogTo), "%s_%s.log", LOG_FILE, Current_Date);
new Map[32];
get_mapname(Map, charsmax(Map));
log_to_file(LogTo, "-------- Mapchange to %s --------", Map);
}
public client_command(id)
{
if(get_user_flags(id) & ADMIN)
{
new Buffer[128], Data[7][192], Command[16];
read_argv(0, Command, charsmax(Command));
read_args(Buffer, charsmax(Buffer));
parse(Buffer, Data[0], 63, Data[1], 192, Data[2], 63, Data[3], 63, Data[4], 63, Data[5], 63, Data[6], 63);
#if defined ADMIN_LOG_COMMANDS
for(new i; i<sizeof(Cmd_Prefix_List); i++)
{
if(containi(Command, Cmd_Prefix_List[i]) != -1)
{
new Name[32], AuthID[32];
get_user_name(id, Name, charsmax(Name));
get_user_authid(id, AuthID, charsmax(AuthID));
if(containi(AuthID, "_ID_LAN") != -1)
get_user_ip(id, AuthID, charsmax(AuthID), 1);
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]);
break;
}
}
#endif
#if defined ADMIN_LOG_CHAT
if(containi(Command, "say") != -1)
{
new Name[32], AuthID[32];
get_user_name(id, Name, charsmax(Name));
get_user_authid(id, AuthID, charsmax(AuthID));
if(containi(AuthID, "_ID_LAN") != -1)
get_user_ip(id, AuthID, charsmax(AuthID), 1);
log_to_file(LogTo, "%s [%s] Ãrta: %s ", Name, AuthID, Data[0]);
}
#endif
}
}
#if defined ADMIN_LOG_CONNECT
public client_putinserver(id)
{
set_task(1.0, "LogConnect", id);
}
public LogConnect(id)
{
if(get_user_flags(id) & ADMIN)
{
new Name[32], AuthID[32];
get_user_name(id, Name, charsmax(Name));
get_user_authid(id, AuthID, charsmax(AuthID));
if(containi(AuthID, "_ID_LAN") != -1)
get_user_ip(id, AuthID, charsmax(AuthID), 1);
log_to_file(LogTo, "%s [%s] csatlakozott", Name, AuthID);
}
}
public client_disconnect(id)
{
if(get_user_flags(id) & ADMIN)
{
new Name[32], AuthID[32];
get_user_name(id, Name, charsmax(Name));
get_user_authid(id, AuthID, charsmax(AuthID));
if(containi(AuthID, "_ID_LAN") != -1)
get_user_ip(id, AuthID, charsmax(AuthID), 1);
log_to_file(LogTo, "%s [%s] lecsatlakozott", Name, AuthID);
}
}
#endif
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1038\\ f0\\ fs16 \n\\ par }
*/