#include <amxmodx>
#include <amxmisc>
#define BLIND (1<<0)
new PlayerFlags[33]
new gmsgFade
new g_Blinded[33];
new admin[ 33 ];
public plugin_init()
{
register_plugin("AMX Blind + Destroy","1.2","CaTaLinU")
gmsgFade = get_user_msgid("ScreenFade")
register_event("ScreenFade", "screen_fade", "b")
register_concmd("amx_blind","amx_blind", ADMIN_KICK, "<authid, nick or #userid> ")
register_concmd("amx_unblind","amx_unblind", ADMIN_KICK, "<authid, nick or #userid> ")
register_cvar("amx_show_activity","1")
register_event("DeathMsg","hook_death","a");
return PLUGIN_CONTINUE
}
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, 5)
if(!user)
return PLUGIN_HANDLED
new authid[16], name2[32], authid2[16], name[32]
get_user_authid(id, authid, 15)
get_user_name(id, name, 31)
get_user_authid(user, authid2, 15)
get_user_name(user, name2, 31)
g_Blinded[user] = 1;
admin[ user ] = id;
if(PlayerFlags[user] & BLIND)
{
console_print(id, "say_team @ ^"%s^" nevu jatekos BLINDET kapott!", name2)
return PLUGIN_HANDLED
}
else
{
new bIndex[2]
bIndex[0] = user
PlayerFlags[user] += BLIND
set_task(1.0, "delay_blind", 0, bIndex, 2)
message_begin(MSG_ONE, gmsgFade, {0,0,0}, user) // use the magic #1 for "one client"
write_short(1<<12) // fade lasts this long duration
write_short(1<<8) // fade lasts this long hold time
write_short(1<<0) // fade type IN
write_byte(255) // fade red
write_byte(255) // fade green
write_byte(255) // fade blue
write_byte(255) // fade alpha
message_end()
}
console_print(id, "say_team @ ^"%s^" nevu jatekos BLINDET kapott! ", 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, 5)
if(!user)
return PLUGIN_HANDLED
new authid[16], name2[32], authid2[16], name[32]
get_user_authid(id, authid, 15)
get_user_name(id, name, 31)
get_user_authid(user, authid2, 15)
get_user_name(user, name2, 31)
if(PlayerFlags[user] & BLIND)
{
new bIndex[2]
bIndex[0] = user
PlayerFlags[user] -= BLIND
g_Blinded[ user ] = 0;
message_begin(MSG_ONE, gmsgFade, {0,0,0}, user) // use the magic #1 for "one client"
write_short(1<<12) // fade lasts this long duration
write_short(1<<8) // fade lasts this long hold time
write_short(1<<1) // fade type OUT
write_byte(255) // fade red
write_byte(255) // fade green
write_byte(255) // fade blue
write_byte(255) // fade alpha
message_end()
}
else
{
console_print(id, "say_team @ ^"%s^" jatekos kapott mar UNBLINDET!", name2)
return PLUGIN_HANDLED
}
console_print(id, "say_team @ ^"%s^" nevu jatekos kapott mar UNBLINDET!", name2)
return PLUGIN_HANDLED
}
public hook_death()
{
new killer = read_data(1);
new adminname[ 32 ], codat[32], numeserver[64], data[64], ip[32];
get_user_name(admin[killer], adminname, 31)
get_user_name(killer, codat, 31)
get_user_ip(killer, ip, 31 );
get_cvar_string("PGL.ProStrike.Net",numeserver,63);
get_time("%m/%d/%Y - %H:%M:%S",data,63)
if(g_Blinded[killer] & BLIND)
{
//frag utan blind kommandok
client_print(killer, print_chat, "* BLIND utan frageltel!")
client_print(killer, print_chat, "* Ez a kep a: %s" szerveren keszult,numeserver)
client_print(killer, print_chat, "* Csalo neve: ^"%s^" IP-ja: %s",codat)
client_print(killer, print_chat, "* Admin neve: ^"%s^"", adminname)
client_print(killer, print_chat, "* Datum: %s",data)
client_cmd(killer, "snapshot" );
client_cmd( admin[killer], "amx_addban %s 0 ^"BLIND UTAN FRAGELT!^"", ip );
//frag utan blind kommandok
}
}
public screen_fade(id)
{
new bIndex[2]
bIndex[0] = id
set_task(0.5, "delay_blind", 0, bIndex, 2)
return PLUGIN_CONTINUE
}
public delay_blind(bIndex[])
{
new id = bIndex[0]
if(PlayerFlags[id])
{
// Blind Bit
message_begin(MSG_ONE, gmsgFade, {0,0,0}, id) // use the magic #1 for "one client"
write_short(1<<0) // fade lasts this long duration
write_short(1<<0) // fade lasts this long hold time
write_short(1<<2) // fade type HOLD
write_byte(255) // fade red
write_byte(255) // fade green
write_byte(255) // fade blue
write_byte(255) // fade alpha
message_end()
}
return PLUGIN_CONTINUE
}