Код
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#include <colorchat>
#define PLUGIN "vipmenu"
#define VERSION "1.0"
#define AUTHOR "VipMenu "
#define ITEM1 0
#define ITEM2 2
#define ITEM3 4
#define ITEM4 1
#define ITEM5 1
#define ITEM6 4
#define ITEM7 6
#define ITEM8 1
#define ITEM9 5
new KEYSMENU = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<9);
new blockset[33][10]
new bool:adminpeed[33] = false;
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_menu("Menu", KEYSMENU, "MenuFunc"); /*Меню админки*/
register_logevent("RoundStart", 2, "1=Round_Start") /*Отлов начало раунда*/
register_clcmd("minivip","adminmenu") /*Вызов админменю*/
RegisterHam(Ham_Killed, "player", "killnoob") /*Отлов смерти игрока*/
register_event("CurWeapon", "WeaponChange", "be", "1=1") /*Отлов смены оружки*/
}
public RoundStart()
{
for(new id = 1; id <= get_maxplayers(); id++)
{
if (!is_user_connected(id)) continue
for(new i;i < 9;i++)
{
if (!blockset[id][i]) continue
blockset[id][i]--
}
}
}
public killnoob(id)
{
adminpeed[id] = false;
}
public WeaponChange(id)
{
if(adminpeed[id])
{
set_user_maxspeed(id, 500.0)
}
}
/*===Админ Менюшка===*/
public adminmenu(id)
{
static menu[1024], len
len = 0
len = formatex(menu[len], charsmax(menu) - len, "\yV\rI\wP\y menu^n^n");
len += formatex(menu[len], charsmax(menu) - len, (blockset[id][1] || !(get_user_flags(id) & ADMIN_LEVEL_H) || !is_user_alive(id)) ? "\r1.\dКикнуть \rЖдите %d раунд^n" : "\r1.\yКикнуть \rЗа нарушение правил!^n^n", blockset[id][1])
len += formatex(menu[len], charsmax(menu) - len, (blockset[id][2] || !(get_user_flags(id) & ADMIN_LEVEL_H) || !is_user_alive(id)) ? "\r2.\dHP и AP \rЖдите %d раунд(ов)^n" : "\r2.\yHP и AP\d [\rKT\d]^n", blockset[id][2])
len += formatex(menu[len], charsmax(menu) - len, (blockset[id][3] || !(get_user_flags(id) & ADMIN_LEVEL_H) || !is_user_alive(id)) ? "\r3.\dГравити \rЖдите %d раунд(ов)^n" : "\r3.\yГравити\d [\rKT\d]^n", blockset[id][3])
len += formatex(menu[len], charsmax(menu) - len, (blockset[id][4] || !(get_user_flags(id) & ADMIN_LEVEL_H) || !is_user_alive(id)) ? "\r4.\dГранаты \rЖдите %d раунд(ов)^n" : "\r4.\yГранаты\d [\rKT\d]^n", blockset[id][4])
len += formatex(menu[len], charsmax(menu) - len, (blockset[id][5] || !(get_user_flags(id) & ADMIN_LEVEL_H) || !is_user_alive(id)) ? "\r5.\dСтать Зомби \rЖдите %d раунд(ов)^n" : "\r5.\yСтать Зомби\d [\rKT\d]^n", blockset[id][5])
len += formatex(menu[len], charsmax(menu) - len, (blockset[id][6] || !(get_user_flags(id) & ADMIN_LEVEL_H) || !is_user_alive(id)) ? "\r6.\d5000$ \rЖдите %d раунд^n" : "\r6.\y5000$\d [\rВСЕ\d]^n", blockset[id][6])
len += formatex(menu[len], charsmax(menu) - len, (blockset[id][7] || !(get_user_flags(id) & ADMIN_LEVEL_H) || !is_user_alive(id)) ? "\r7.\dAWP \rЖдите %d раунд(ов)^n^n" : "\r7.\yAWP\d [\rKT\d]^n^n", blockset[id][7])
len += formatex(menu[len], charsmax(menu) - len, (blockset[id][8] || !(get_user_flags(id) & ADMIN_LEVEL_H) || !is_user_alive(id)) ? "\r8.\dНейон \rЖдите %d раунд(ов)^n^n" : "\r8.\yНейон\d [\rВСЕ\d]^n^n", blockset[id][8])
len += formatex(menu[len], charsmax(menu) - len, (blockset[id][9] || !(get_user_flags(id) & ADMIN_LEVEL_H) || !is_user_alive(id)) ? "\r9.\dАнтидот \rЖдите %d раунд(ов)^n^n" : "\r9.\yАнтидот\d [\rZM\d]^n^n", blockset[id][9])
len += formatex(menu[len], charsmax(menu) - len, "\r0.\yВыход");
show_menu(id, KEYSMENU, menu, -1, "Menu");
}
/*===Фукций и т.д===*/
public MenuFunc(id,key)
{
switch(key)
{
case 0:
{
if(blockset[id][1] || !(get_user_flags(id) & ADMIN_LEVEL_H) || !is_user_alive(id))
{
adminmenu(id)
}
else
{
client_cmd(id,"amx_kickmenu")
blockset[id][1]=ITEM1
adminmenu(id)
}
}
case 1:
{
if(blockset[id][2] || !(get_user_flags(id) & ADMIN_LEVEL_H) || get_user_team(id) != 2)
{
adminmenu(id)
}
else
{
set_user_armor(id, 200)
set_user_health(id, 200)
new name[32]
get_user_name(id,name,31)
ColorChat(0,GREEN,"^1[^4VIP^1] ^4%s ^1взял ^4 200 ХП и БРОНИ", name)
blockset[id][2]=ITEM2
adminmenu(id)
}
}
case 2:
{
if(blockset[id][3] || !(get_user_flags(id) & ADMIN_LEVEL_H) || get_user_team(id) != 2)
{
adminmenu(id)
}
else
{
set_user_gravity(id, 0.5)
new name[32]
get_user_name(id,name,31)
ColorChat(0,GREEN,"^1[^4VIP^1] ^4%s ^1взял ^4Гравитацию", name)
blockset[id][3]=ITEM3
adminmenu(id)
}
}
case 3:
{
if(blockset[id][4] || !(get_user_flags(id) & ADMIN_LEVEL_H) || get_user_team(id) != 2)
{
adminmenu(id)
}
else
{
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_smokegrenade")
new name[32]
get_user_name(id,name,31)
ColorChat(0,GREEN,"^1[^4VIP^1] ^4%s ^1взял ^4Гранатки", name)
blockset[id][4]=ITEM4
adminmenu(id)
}
}
case 4:
{
if(blockset[id][5] || !(get_user_flags(id) & ADMIN_LEVEL_H) || get_user_team(id) != 2)
{
adminmenu(id)
}
else
{
cs_set_user_team(id, CS_TEAM_T)
ExecuteHamB(Ham_CS_RoundRespawn, id)
new name[32]
get_user_name(id,name,31)
ColorChat(0,GREEN,"^1[^4VIP^1] ^4%s ^1Теперь ^4Зомби!", name)
blockset[id][5]=ITEM5
adminmenu(id)
}
}
case 5:
{
if(blockset[id][6] || !(get_user_flags(id) & ADMIN_LEVEL_H) || !is_user_alive(id))
{
adminmenu(id)
}
else
{
cs_set_user_money(id, cs_get_user_money(id) + 5000)
new name[32]
get_user_name(id,name,31)
ColorChat(0,GREEN,"^1[^4VIP^1] ^4%s ^1взял ^4 5000$", name)
blockset[id][6]=ITEM6
adminmenu(id)
}
}
case 6:
{
if(blockset[id][7] || !(get_user_flags(id) & ADMIN_LEVEL_H) || get_user_team(id) != 2)
{
adminmenu(id)
}
else
{
client_cmd(id, "m95sps")
client_cmd(id, "luger")
new name[32]
get_user_name(id,name,31)
ColorChat(0,GREEN,"^1[^4VIP^1] ^4%s ^1Супер ^4 AWP^1 БЕРЕГИТЕСЬ!", name)
blockset[id][7]=ITEM7
adminmenu(id)
}
}
case 7:
{
if(blockset[id][8] || !(get_user_flags(id) & ADMIN_LEVEL_H) || !is_user_alive(id))
{
adminmenu(id)
}
else
{
set_user_rendering(id,kRenderFxGlowShell,0,140,240,kRenderNormal,25)
new name[32]
get_user_name(id,name,31)
ColorChat(0,GREEN,"^1[^4VIP^1] ^4%s ^1взял ^4Свечение", name)
blockset[id][8]=ITEM8
adminmenu(id)
}
}
case 8:
{
if(blockset[id][9] || !(get_user_flags(id) & ADMIN_LEVEL_H) || get_user_team(id) != 1)
{
adminmenu(id)
}
else
{
cs_set_user_team(id, CS_TEAM_CT)
ExecuteHamB(Ham_CS_RoundRespawn, id)
new name[32]
get_user_name(id,name,31)
ColorChat(0,GREEN,"^1[^4VIP^1] ^4%s ^1Вколол ^4АНТИДОТ!", name)
blockset[id][9]=ITEM9
adminmenu(id)
}
}
}
}
Не работает 9 Пункт "Антидот"
т.е Он работает но только один раз и потом так и пишет на протижении всей карты "Осталось ждать 5 раундов"
Буду благодарен за помошь.