Добрый день!Облазил несколько форумов,множество тем просмотрел по моей проблеме и ничего не нашел, в чем бы я самостоятельно смог бы разобраться!
Выручайте!
Суть проблемы:
Каким образом сделать так, чтоб при взятии нового основного(1 слот) или дополнительного(2 слот) оружия из моего "weaponmenu", дропалось то, которое уже есть в (1 слоте) либо же во (2 слоте), а не добавлялось к тому, что уже есть,как при закупке оружия через игровой магазин?
Ну как бы чтоб игрок не бегал с (2мя -3мя - 10ю) оружиями в 1 слоте.
Если возможно, внесите изменения в часть, мною написанного, кода:
CODE
new round_number = 0
public plugin_init()
{
register_plugin(PLUGIN,VERSION,AUTHOR)
register_event("TextMsg", "Event_GameRestart", "a", "2=#Game_Commencing", "2=#Game_will_restart_in")
register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
register_clcmd("weaponmenu", "w_menu", ADMIN_VOTE, "Admin Weaponmenu")
}
public Event_GameRestart()
{
round_number = 0
}
public event_round_start()
{
round_number++
}
public w_menu(id)
{
if(round_number <= 1)
{
client_print(id, print_chat, "В первом раунде оружейка не доступна!")
}
else
{
new w_menu = menu_create("Gunsmenu", "menu_handler")
menu_additem(w_menu, "Pistols", "1", 0)
menu_additem(w_menu, "Shoutgun", "2", 0)
menu_setprop(w_menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, w_menu, 0)
}
return PLUGIN_HANDLED
}
public menu_handler(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
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_Key = str_to_num(s_Data)
switch(i_Key)
{
case 1:
{
pistols_menu(id)
}
case 2:
{
shoutgun_menu(id)
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}
public pistols_menu(id)
{
new pistols_menu = menu_create("Pistols", "pistols_handler")
menu_additem(pistols_menu, "Glock", "1", 0)
menu_additem(pistols_menu, "Usp", "2", 0)
menu_setprop(pistols_menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, pistols_menu, 0)
}
public pistols_handler(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
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_Key = str_to_num(s_Data)
switch(i_Key)
{
case 1:
{
if(is_user_alive(id))
give_item(id, "weapon_glock")
}
case 2:
{
if(is_user_alive(id))
give_item(id, "weapon_usp")
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}
public shoutgun_menu(id)
{
new shoutgun_menu = menu_create("Shoutgun", "shoutgun_handler")
menu_additem(shoutgun_menu, "M3", "1", 0)
menu_additem(shoutgun_menu, "XM1014", "2", 0)
menu_setprop(shoutgun_menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, shoutgun_menu, 0)
}
public shoutgun_handler(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
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_Key = str_to_num(s_Data)
switch(i_Key)
{
case 1:
{
if(is_user_alive(id))
give_item(id, "weapon_m3")
}
case 2:
{
if(is_user_alive(id))
give_item(id, "weapon_xm1014")
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}