Всем привет. Пишу плагин по выдаче талисманов.
Сначала открывается список игроков, выбирается игрок, а затем открывается меню со списком талисманов, в которое передаётся значение new player = g_menuPlayers[id][g_menuPosition [id]* 7 + key] через массив (Значение Param[1])
Код меню такой:
Код
public Give_One_Talisman(Param[2])
{
new player = Param[1]
new id = Param[0]
new i_Menu = menu_create("\r [\yВыдать талисман\r: \w1\y/\w5\r]", "GOT_menu")
if(!colourSwitch1[id])
{
menu_additem(i_Menu, "\wАмулет", "1", 0)
}
else
{
menu_additem(i_Menu, "\yАмулет", "1", 0)
}
// и т.д.
menu_setprop(i_Menu, MPROP_PERPAGE, 0)
menu_display(id, i_Menu, 0)
}
Вот обработчик меню:
Код
public GOT_menu(id, menu, item, player)
{
new name2[32]
get_user_name(player, name2, 31)
new data[6], iName[64], access, callback
menu_item_getinfo(menu, item, access, data, 5, iName, 63, callback)
new key = str_to_num(data)
switch(key)
{
case 1:{
}
}
// и т.д.
}
Но при использовании get_user_name(player, name2, 31) строке name2 почему-то присваивается имя сервера, а не выбраннв ого игрока. В GOT_menu нужно либо как-то передать переменную player, либо Give_One_Talisman получить имя выбранного игрока name2 и передать эту строку в GOT_menu (предпочтителен второй вариант).
Помогите пожалуйста разобраться