Код
#include <amxmodx>
#include <amxmisc>
new const PLAGIN[] = "DarkTower.su ARD"
new const VERSIYA[] = "1.6"
new const AVTORG[] = "souriz"
#define KVARNAME1 "4erez_skoka_piwetsa_demga"
#define KVARNAME2 "nazvanie_proekta_v_demke"
#define IKSDE "recorded_demos.log"
public plugin_init()
{
register_plugin(PLAGIN, VERSIYA, AVTORG);
register_cvar(KVARNAME1, "60");
register_cvar(KVARNAME2, "name");
}
public client_authorized(id)
{
client_cmd(id,"stop");
}
public client_putinserver(id)
{
if(!is_user_bot(id) && !is_user_hltv(id))
{
if(get_cvar_num(KVARNAME1) < 15)
set_cvar_num(KVARNAME1, 15)
set_task(get_cvar_float(KVARNAME1), "recDEMO", id);
}
}
public recDEMO(id)
{
if(!is_user_connected(id))
return
static nickname[32], ip[16], hostname[64], map[32], vremia[9], data[11], hash[34], demoname[350], neyznavod[32], stim[35];
get_user_name(id, nickname, sizeof nickname -1);
get_user_ip(id, ip, sizeof ip -1, 1);
get_user_authid(id, stim, sizeof stim -1);
get_cvar_string("hostname", hostname, sizeof hostname -1);
get_mapname(map, sizeof map -1);
get_time("%H:%M:%S", vremia, sizeof vremia -1);
get_time("%d.%m.%Y", data, sizeof data -1);
get_cvar_string(KVARNAME2, neyznavod, sizeof neyznavod -1);
md5(demoname, hash);
format(demoname, sizeof demoname -1, "%s_%s_%s_%s_%s_%s_%s_MD5-%s.dem", neyznavod, hostname, nickname, ip, map, vremia, data, hash);
while(replace(demoname, sizeof demoname -1, "/", "-")) {}
while(replace(demoname, sizeof demoname -1, "\", "-")) {}
while(replace(demoname, sizeof demoname -1, ":", "-")) {}
while(replace(demoname, sizeof demoname -1, "*", "-")) {}
while(replace(demoname, sizeof demoname -1, "?", "-")) {}
while(replace(demoname, sizeof demoname -1, "<", "-")) {}
while(replace(demoname, sizeof demoname -1, ">", "-")) {}
while(replace(demoname, sizeof demoname -1, "|", "-")) {}
while(replace(demoname, sizeof demoname -1, " ", "_")) {}
client_cmd(id, "stop;wait;wait;record ^"%s.a^"", demoname);
if(equal(stim, "VALVE_ID_LAN")
|| equal(stim, "VALVE_ID_PENDING")
|| equal(stim, "STEAM_666:88:666")
|| equal(stim, "WWW.DARKTOWER.SU")
|| equal(stim, "STEAM_ID_PENDING")
|| equal(stim, "STEAM_ID_LAN") )
stim = "UNKNOWN";
log_to_file(IKSDE, "[Игрок: %s][SteamID: %s - IP: %s] [Название дэмо: %s]", nickname, stim, ip, demoname);
}