Код:
#include <amxmodx>
#include <amxmisc>
#include <dhudmessage>
#define PLUGIN "fb_forwards"
#define VERSION "0.1"
#define AUTHOR "kanagava & Renaissance aka. Gig142"
new g_Hostname, g_UnbanURL, g_MsgType, g_SayText, g_Number, g_Interval;
forward fbans_player_banned_pre(id, userid) // ϡ㬿檠forward - 믲ﱠ ⴤ氠㼧㡭ힺꡯ졣鮮ꋊforward fbans_player_banned_post(id, userid, bid) // ϡ㬿檠forward - 믲ﱠ ⴤ氠㼧㡭ힺꡯ졣鮮ꋊ
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
g_Hostname = get_cvar_pointer("hostname")
g_UnbanURL = register_cvar("fb_ss_website", "www.prostrikeserver.ru") // Unban request site (Def.: "www.yoursite.com")
g_MsgType = register_cvar("fb_ss_msgtype", "3") // 0- off all | 1- chat | 2- hud | 3- chat+hud (Def.: 3)
g_Interval = register_cvar("fb_ss_interval", "0.5") // interval ScreenShot (Def.: 0.5)
g_Number = register_cvar("fb_ss_number", "3") // Screen Number (Def.: 3)
g_SayText = get_user_msgid("SayText")
}
public fbans_player_banned_pre(id, userid)
{
if(!id || !is_user_connected(id) || get_user_userid(id)!=userid)
return PLUGIN_HANDLED
new timer[32], hostname[64], name2[32], ip[32], authid2[32], site[64]
get_user_name(id, name2, 31)
get_user_authid(id, authid2, 31)
get_user_ip(id, ip, 31, 1)
get_time("%d/%m/%Y - %H:%M:%S", timer, 63)
get_pcvar_string(g_Hostname, hostname, charsmax(hostname))
get_pcvar_string(g_UnbanURL, site, charsmax(site))
new r = random(256)
new g = random(256)
new b = random(256)
switch( get_pcvar_num(g_MsgType) )
{
case 0:
{
// 椮 妫 㱮壠롪 :)
}
case 1:
{
/* Show screen messages in chat */
client_printc(id,"^1[^4FB^1] Сервер: ^3%s ^1Дата бана: ^3%s", hostname, timer)
client_printc(id,"^1[^4FB^1] Аппеляцию можно подать тут: ^3%s", site)
}
case 2:
{
/* Show screen messages in hud */
set_dhudmessage(r,g,b, -1.0, 0.0, 0, 0.25, 5.0, 0.0, 0.0, 4)
show_dhudmessage(id, "%s вы забанены на сервере %s ^nВаш IP: %s | Ваш ID: %s", name2, hostname, ip, authid2)
}
case 3:
{
/* Show screen messages in chat */
client_printc(id,"^1[^4FB^1] Сервер: ^3%s ^1Дата бана: ^3%s", hostname, timer)
client_printc(id,"^1[^4FB^1] Аппеляцию можно подать тут: ^3%s", site)
/* Show screen messages in hud */
set_dhudmessage(r,g,b, -1.0, 0.0, 0, 0.25, 5.0, 0.0, 0.0, 4)
show_dhudmessage(id, "%s вы забанены на сервере %s ^nВаш IP: %s | Ваш ID: %s", name2, hostname, ip, authid2)
}
}
set_task(get_pcvar_float(g_Interval), "screenshot", id, _, _, "a", get_pcvar_num(g_Number))
return PLUGIN_HANDLED
}
public fbans_player_banned_post(id, userid, bid)
{
// 椮 妫 㱮壠롪 :)
}
public screenshot(id)
{
if(is_user_connected(id))
client_cmd(id, "snapshot")
}
stock bool:is_user_steam(id)
{
static dp_pointer
if(dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider")))
{
server_cmd("dp_clientinfo %d", id)
server_exec()
return (get_pcvar_num(dp_pointer) == 2) ? true : false
}
return false
}
/* Stock colors for chat messages */
stock client_printc(const id, const string[], {Float, Sql, Resul,_}:...) {
new msg[191], players[32], count = 1
vformat(msg, sizeof msg - 1, string, 3)
replace_all(msg,190,"!g","^4")
replace_all(msg,190,"!y","^1")
replace_all(msg,190,"!t","^3")
if(id)
players[0] = id
else
get_players(players,count,"ch")
for (new i = 0 ; i < count ; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, g_SayText,_, players[i])
write_byte(players[i])
write_string(msg)
message_end()
}
}
}