Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
Привет народ, возникла такая проблема, в данном плагине используется массив что дает использовать не более 6, я так понял что без массива ничего не изменится, но можно будет использовать неограниченное количество пунктов, где можно убрать данный массив?
Код:
#include amxmodx
#include fakemeta_util
#include fun
#include hamsandwich
#include colorchat
#include cstrike
#include fakemeta
#define AUTHOR "ReapiTV"
#define PLUGIN "shop menu"
#define VERSION "0.1"
//#pragma tabsize 0
native give_weapon_vsk94(id);
native give_weapon_m134(id);
native give_weapon_m24(id);
native give_weapon_buffsg552(id);
native give_weapon_hk416ex(id);
native give_weapon_sprifle(id);
native give_weapon_usas(id);
native give_weapon_aks74u(id);
//#define VIP_FLAG ADMIN_LEVEL_H // флаг VIP
//native is_user_zombie(id); // Натив на проверку игрок зомби или нет
new iMoney,iShop[7]; // Переменная для cs_get_user_money(id), Переменная для $ у VIPa
public plugin_init()
{
register_plugin(AUTHOR, PLUGIN, VERSION);
register_clcmd("magazin","shop_menu");
register_clcmd("say /magazin","shop_menu");
register_event( "HLTV", "RoundStart", "a", "1=0", "2=0" ); // Событие старта раунда
register_menucmd(register_menuid("Show_ShopMenu"),(1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<9), "Handle_ShopMenu");
}
public RoundStart()
{
for(new r = 0; r <= 7; r++)
{
iShop[r] = 0;
}
}
public shop_menu(id)
{
if(is_user_alive(id) && is_user_connected(id)) // Если игрок (не зомби,живой,подключен) запустить меню
{
Show_ShopMenu(id);
}else ColorChat(id,GREEN,"^1[^4Магазин^1] ^3Вам это недоступно.")
}
public Show_ShopMenu(id)
{
iMoney = cs_get_user_money(id);
new szMenu[1024], iKeys = (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<9), iLen = formatex(szMenu, charsmax(szMenu), "\wМагазин оружия^n\wДеньги\d: \y%d$^n^n",iMoney);
if(iShop[0] == 0)
{
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r1. \wVsk94 \r| \d(\y3000$\d)^n");
iKeys |= (1<<1);
}else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d1. \dVsk94 \r| \d(\y3000$\d)^n");
if(iShop[1] == 0)
{
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r2. \wМиниган \r| \d(\y8000$\d)^n");
iKeys |= (1<<2);
}else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d2. \dМиниган \r| \d(\y8000$\d)^n");
if(iShop[2] == 0)
{
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r3. \wM-24 \r| \d(\y3000$\d)^n");
iKeys |= (1<<3);
}else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d3. \dM-24 \r| \d(\y3000$\d)^n");
if(iShop[3] == 0)
{
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r4. \wSG552 Lycanthrope \r| \d(\y4500$\d)^n");
iKeys |= (1<<4);
}else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d4. \dSG552 Lycanthrope \r| \d(\y4500$\d)^n");
if(iShop[4] == 0)
{
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r5. \wHk416 \r| \d(\y2000$\d)^n");
iKeys |= (1<<5);
}else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d5. \dHk416 \r| \d(\y2000$\d)^n");
if(iShop[5] == 0)
{
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r6. \wAWP Sprifle \r| \d(\y3000$\d)^n");
iKeys |= (1<<6);
}else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d6. \dAWP Sprifle \r| \d(\y3000$\d)^n");
if(iShop[6] == 0)
{
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r7. \wMK3O1 \r| \d(\y3500$\d)^n");
iKeys |= (1<<7);
}else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d7. \dMK3O1 \r| \d(\y3500$\d)^n");
if(iShop[6] == 0)
formatex(szMenu[iLen], charsmax(szMenu) - iLen, "^n\r0. \wВыйти^n^n");
return show_menu(id, iKeys, szMenu, -1, "Show_ShopMenu");
}
public Handle_ShopMenu(id, iKey)
{
new pname[33],UserMoney[33];
get_user_name(id,pname,charsmax(pname));
UserMoney[id] = cs_get_user_money(id);
switch(iKey)
{
case 0:
{
if(iShop[0] == 0)
{
if(UserMoney[id] >= 3000)
{
cs_set_user_money(id,UserMoney[id] - 3000);
fm_strip_user_gun( id, CSW_M249 ) ;
fm_strip_user_gun( id, CSW_SCOUT ) ;
fm_strip_user_gun( id, CSW_M4A1 ) ;
fm_strip_user_gun( id, CSW_FAMAS ) ;
fm_strip_user_gun( id, CSW_GALIL ) ;
fm_strip_user_gun( id, CSW_AK47 ) ;
fm_strip_user_gun( id, CSW_AWP ) ;
fm_strip_user_gun( id, CSW_P90 ) ;
fm_strip_user_gun( id, CSW_M3 ) ;
give_weapon_vsk94(id);
return Show_ShopMenu(id)
}
else ColorChat(id,GREEN,"^1[^4Магазин^1] ^1Игрок ^3%s^1 у вас недостаточно ^3средств.",pname);
}else ColorChat(id,GREEN,"^1[^4Магазин^1] ^1Можно купить ^41 раз.");
}
case 1:
{
if(iShop[1] == 0)
{
if(UserMoney[id] >= 8000)
{
cs_set_user_money(id,UserMoney[id] - 8000);
fm_strip_user_gun( id, CSW_M249 ) ;
fm_strip_user_gun( id, CSW_SCOUT ) ;
fm_strip_user_gun( id, CSW_M4A1 ) ;
fm_strip_user_gun( id, CSW_FAMAS ) ;
fm_strip_user_gun( id, CSW_GALIL ) ;
fm_strip_user_gun( id, CSW_AK47 ) ;
fm_strip_user_gun( id, CSW_AWP ) ;
fm_strip_user_gun( id, CSW_P90 ) ;
fm_strip_user_gun( id, CSW_M3 ) ;
give_weapon_m134(id);
return Show_ShopMenu(id);
}
else ColorChat(id,GREEN,"^1[^4Магазин^1] ^1Игрок ^3%s^1 у вас недостаточно ^3средств.",pname);
}else ColorChat(id,GREEN,"^1[^4Магазин^1] ^1Можно купить ^41 раз.");
}
case 2:
{
if(iShop[2] == 0)
{
if(UserMoney[id] >= 3500)
{
cs_set_user_money(id,UserMoney[id] - 3500);
fm_strip_user_gun( id, CSW_M249 ) ;
fm_strip_user_gun( id, CSW_SCOUT ) ;
fm_strip_user_gun( id, CSW_M4A1 ) ;
fm_strip_user_gun( id, CSW_FAMAS ) ;
fm_strip_user_gun( id, CSW_GALIL ) ;
fm_strip_user_gun( id, CSW_AK47 ) ;
fm_strip_user_gun( id, CSW_AWP ) ;
fm_strip_user_gun( id, CSW_P90 ) ;
fm_strip_user_gun( id, CSW_M3 ) ;
give_weapon_m24(id);
return Show_ShopMenu(id);
}
else ColorChat(id,GREEN,"^1[^4Магазин^1] ^1Игрок ^3%s^1 у вас недостаточно ^3средств.",pname);
}else ColorChat(id,GREEN,"^1[^4Магазин^1] ^1Можно купить ^41 раз");
}
case 3:
{
if(iShop[3] == 0)
{
if(UserMoney[id] >= 4500)
{
cs_set_user_money(id,UserMoney[id] - 4500);
fm_strip_user_gun( id, CSW_M249 ) ;
fm_strip_user_gun( id, CSW_SCOUT ) ;
fm_strip_user_gun( id, CSW_M4A1 ) ;
fm_strip_user_gun( id, CSW_FAMAS ) ;
fm_strip_user_gun( id, CSW_GALIL ) ;
fm_strip_user_gun( id, CSW_AK47 ) ;
fm_strip_user_gun( id, CSW_AWP ) ;
fm_strip_user_gun( id, CSW_P90 ) ;
fm_strip_user_gun( id, CSW_M3 ) ;
give_weapon_buffsg552(id);
return Show_ShopMenu(id);
}
else ColorChat(id,GREEN,"^1[^4Магазин^1] ^1Игрок ^3%s^1 у вас недостаточно ^3средств.",pname);
}else ColorChat(id,GREEN,"^1[^4Магазин^1] ^1Можно купить ^41 раз.");
}
case 4:
{
if(iShop[4] == 0)
{
if(UserMoney[id] >= 2000)
{
cs_set_user_money(id,UserMoney[id] - 2000);
fm_strip_user_gun( id, CSW_M249 ) ;
fm_strip_user_gun( id, CSW_SCOUT ) ;
fm_strip_user_gun( id, CSW_M4A1 ) ;
fm_strip_user_gun( id, CSW_FAMAS ) ;
fm_strip_user_gun( id, CSW_GALIL ) ;
fm_strip_user_gun( id, CSW_AK47 ) ;
fm_strip_user_gun( id, CSW_AWP ) ;
fm_strip_user_gun( id, CSW_P90 ) ;
fm_strip_user_gun( id, CSW_M3 ) ;
give_weapon_hk416ex(id);
return Show_ShopMenu(id);
}
else ColorChat(id,GREEN,"^1[^4Магазин^1] ^1Игрок ^3%s^1 у вас недостаточно ^3средств.",pname);
}else ColorChat(id,GREEN,"^1[^4Магазин^1] ^1Можно купить ^41 раз.");
}
case 5:
{
if(iShop[5] == 0)
{
if(UserMoney[id] >= 3000)
{
cs_set_user_money(id,UserMoney[id] - 3000);
fm_strip_user_gun( id, CSW_M249 ) ;
fm_strip_user_gun( id, CSW_SCOUT ) ;
fm_strip_user_gun( id, CSW_M4A1 ) ;
fm_strip_user_gun( id, CSW_FAMAS ) ;
fm_strip_user_gun( id, CSW_GALIL ) ;
fm_strip_user_gun( id, CSW_AK47 ) ;
fm_strip_user_gun( id, CSW_AWP ) ;
fm_strip_user_gun( id, CSW_P90 ) ;
fm_strip_user_gun( id, CSW_M3 ) ;
give_weapon_sprifle(id);
return Show_ShopMenu(id);
}
else ColorChat(id,GREEN,"^1[^4Магазин^1] ^1Игрок ^3%s^1 у вас недостаточно ^3средств.",pname);
}else ColorChat(id,GREEN,"^1[^4Магазин^1] ^1Можно купить ^41 раз.");
}
case 6:
{
if(iShop[6] == 0)
{
if(UserMoney[id] >= 3500)
{
cs_set_user_money(id,UserMoney[id] - 3500);
fm_strip_user_gun( id, CSW_M249 ) ;
fm_strip_user_gun( id, CSW_SCOUT ) ;
fm_strip_user_gun( id, CSW_M4A1 ) ;
fm_strip_user_gun( id, CSW_FAMAS ) ;
fm_strip_user_gun( id, CSW_GALIL ) ;
fm_strip_user_gun( id, CSW_AK47 ) ;
fm_strip_user_gun( id, CSW_AWP ) ;
fm_strip_user_gun( id, CSW_P90 ) ;
fm_strip_user_gun( id, CSW_M3 ) ;
give_weapon_usas(id);
return Show_ShopMenu(id);
}
else ColorChat(id,GREEN,"^1[^4Магазин^1] ^1Игрок ^3%s^1 у вас недостаточно ^3средств.",pname);
}else ColorChat(id,GREEN,"^1[^4Магазин^1] ^1Можно купить ^41 раз.");
}
case 9: return PLUGIN_HANDLED;
}
return Show_ShopMenu(id);
}