- Код: Выделить всё
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <fun>
#include <fakemeta>
#include <cstrike>
new s_Players[32], i_Num, i_Player;
new s_Player[10];
new namer[32];
new warnings[33];
new warnings2[33];
new warnings3[33];
public client_connect(id)
{
warnings[id] = 0;
warnings2[id] = 0;
warnings3[id] = 0;
}
public plugin_init() {
register_plugin("Warn Plugin & Menu", "1.0", "???")
register_clcmd("say /warn", "dd");
register_menucmd(register_menuid("dd_1"), 1023, "dd_reason2");
}
public dd(id)
{
if(get_user_flags(id) & ADMIN_KICK)
{
new i_Menu = menu_create("\yМ\wеню \rП\yредупреждений^n^n", "dd_handler")
get_players(s_Players, i_Num)
for(new i; i < i_Num; i++)
{
i_Player = s_Players[i]
get_user_name(i_Player, namer, charsmax(namer))
num_to_str(i_Player, s_Player, charsmax(s_Player))
menu_additem(i_Menu, namer, s_Player, 0)
}
menu_display(id, i_Menu, 0)
}
}
public dd_handler(id)
{
dd_reason(id);
}
public dd_reason(id)
{
new MenuBody[512], len, keys;
len = format(MenuBody, 511, "\yМ\wеню \rП\yричин^n");
len += format(MenuBody[len], 511-len, "^n\r1. \wНезнание правила админа \d[\yтолько админам\d]");
len += format(MenuBody[len], 511-len, "^n\r2. \wНезнание правил сервера");
len += format(MenuBody[len], 511-len, "^n\r3. \wНету 13+");
len += format(MenuBody[len], 511-len, "^n^n\r0. \wВыход");
keys |= (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<9);
show_menu(id, keys, MenuBody, -1, "dd_1");
}
public dd_reason2( id, key )
{
switch( key )
{
case 0:
{
dd2(id);
}
case 1:
{
dd3(id);
}
case 2:
{
dd4(id);
}
}
}
public dd2(id, menu, item)
{
new s_Data[6], s_Name[64], i_Access, i_Callback
menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)
new i_Player = str_to_num(s_Data)
warnings[i_Player]++;
new name[33];
new name_warn[33];
get_user_name(i_Player, name_warn, 32);
get_user_name(id, name, 32);
if(get_user_flags(i_Player) & ADMIN_BAN)
{
client_print(0, print_chat, "[Jail] Внимание! %s выдано предупреждение за: Незнание правил Админа, админом %s [%s раз(а)]", name_warn, name, reason, warnings[i_Player]);
}else{
client_print(id, print_chat, "[Jail] Данный игрок не администратор!");
}
if(warnings[i_Player] >= 3)
{
server_cmd("fb_ban 30 #%d ^"Незнание правил администратора^"", get_user_userid(i_Player));
}
}
public dd3(id, menu, item)
{
new s_Data[6], s_Name[64], i_Access, i_Callback
menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)
new i_Player = str_to_num(s_Data)
warnings[i_Player]++;
new name[33];
new name_warn[33];
get_user_name(i_Player, name_warn, 32);
get_user_name(id, name, 32);
client_print(0, print_chat, "[Jail] Внимание! %s выдано предупреждение за: Незнание правил сервера, админом %s [%s раз(а)]", name_warn, name, reason, warnings2[i_Player]);
if(warnings2[i_Player] >= 3)
{
server_cmd("fb_ban 5 #%d ^"Незнание правил сервера^"", get_user_userid(i_Player));
}
}
public dd4(id, menu, item)
{
new s_Data[6], s_Name[64], i_Access, i_Callback
menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)
new i_Player = str_to_num(s_Data)
warnings[i_Player]++;
new name[33];
new name_warn[33];
get_user_name(i_Player, name_warn, 32);
get_user_name(id, name, 32);
client_print(0, print_chat, "[Jail] Внимание! %s выдано предупреждение за: Нету 13+ админом %s [%s раз(а)]", name_warn, name, reason, warnings3[i_Player]);
if(warnings3[i_Player] >= 3)
{
server_cmd("fb_ban 5 #%d ^"Нету 13+^"", get_user_userid(i_Player));
}
}
Лог ошибок:
- Код: Выделить всё
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team
Error: Number of arguments does not match definition on line 76
Error: Number of arguments does not match definition on line 80
Error: Number of arguments does not match definition on line 84
Error: Undefined symbol "reason" on line 106
Warning: Expression has no effect on line 106
Error: Expected token: ";", but found ")" on line 106
Error: Invalid expression, assumed zero on line 106
Error: Too many error messages on one line on line 106
Compilation aborted.
7 Errors.
Could not locate output file C:\Users\Trensons\Desktop\warns.amx (compile failed).