/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#define PLUGIN "Akceptacja zasad"
#define VERSION "1.0"
#define AUTHOR "Sn!ff3r"
#define Keys (1<<0)|(1<<1)
new enabled
new delay
new immunity
new file[84]
new joined[33], accepted[33]
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("TeamInfo","join_team","a","2=TERRORIST","2=CT")
enabled = register_cvar("amx_rules_enabled","1")
delay = register_cvar("amx_rules_delaykick","60.0")
immunity = register_cvar("amx_rules_immunity","0")
register_clcmd("radio1","hook")
register_clcmd("radio2","hook")
register_clcmd("radio3","hook")
register_menucmd(register_menuid("Zasady serwera"), Keys, "klawisze")
static configsdir[64]
get_localinfo("amxx_configsdir", configsdir, 63)
format(file , 83 , "%s/rules.txt" , configsdir)
if(!file_exists(file))
{
write_file(file, "Pełny regulamin znajdziesz na forum!")
write_file(file, "====================================")
write_file(file, "Zakaz blokowania niezarazonych graczy przez zombie!")
write_file(file, "Nie wpychaj sie do kamp na sile!")
write_file(file, "Mikrofon jest dozwolony dla osób po mutacji")
write_file(file, "Zabronione jest zarażanie przez ściany/okna itp.!")
write_file(file, "Zakaz kampienia jako Zombie/Nemezis/Survival!")
write_file(file, "Zachowaj pelna kulture osobista i nie obrazaj innych!")
write_file(file, "Zakaz podszywania sie pod innych graczy/adminów")
}
}
public join_team()
{
if(!get_pcvar_num(enabled))
return PLUGIN_CONTINUE
// pobrano z cs-puchatek.pl
new id = read_data(1)
if(get_pcvar_num(immunity) && get_user_flags(id) & ADMIN_KICK)
return PLUGIN_CONTINUE
joined[id]++
if(joined[id] != 2) // check for first join
return PLUGIN_CONTINUE
new i, num, text[127], rules[440]
for(i = 0; read_file(file, i, text, 127, num); i++)
{
if(num > 0 && text[0] != ';')
{
add(rules,439,text)
add(rules,439,"^n")
}
}
new body[512]
formatex(body,511,"\dZasady serwera:^n\r%s^n\yAkceptujesz zasady?^n\w1. Nie^n2. Tak^n",rules)
show_menu(id, Keys, body, -1, "Zasady serwera")
set_task(get_pcvar_float(delay),"check_player",id)
return PLUGIN_CONTINUE
}
public klawisze(id, key)
{
new name[33], msg[100]
get_user_name(id,name,32)
switch (key)
{
case 0:
{
formatex(msg,99,"^x04%s nie zaakceptowal zasad serwera.",name)
for(new i = 1; i <= get_playersnum(); i++)
print_message(i,msg)
server_cmd("kick #%d Nie zaakceptowales zasad",get_user_userid(id))
}
case 1:
{
formatex(msg,99,"^x04%s zaakceptowal zasady serwera.",name)
for(new i = 1; i <= get_playersnum(); i++)
print_message(i,msg)
print_message(id,"^x03Zyczymy milej gry na serwerze.")
// pobrano z cs-naoczni.pl
accepted[id] = 1
}
}
}
public client_disconnect(id)
{
joined[id] = 0
accepted[id] = 0
}
public check_player(id)
{
if(!accepted[id])
server_cmd("kick #%d Nie zaakceptowales zasad!",get_user_userid(id))
}
public hook(id)
{
if(!accepted[id])
return PLUGIN_HANDLED
return PLUGIN_CONTINUE
}
public print_message(id, msg[])
{
if(!is_user_connected(id))
return
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), {0,0,0}, id)
write_byte(id)
write_string(msg)
message_end()
}