Есть список команд с скрипте:
RegCmds = {
cmd1 = function()
end,
cmd2 = function()
end,
...
}
Согласно ему создается меню пользователя:
for i,v in pairs(RegCmds) do
local desc,arg1,arg2 = RegCmds[i]()
Core.SendToNick(user.sNick,"$UserCommand 1 1 "..SubMenu.."\\"..desc.."$<%[mynick]> "..Pfx..i..arg1.."|")
end
Проблема в том, что я не могу понять по какому принципу упорядочивается конечное меню хаба.
В итоге пользователь видит пунты меню в какой угодно последовательности, кроме как попорядку cmd1, cmd2, cmd3 ...
Как вообще такая проблема реашается? Не откажите новичку в помощи.
Порядок следования индексов неопределен для функции pairs не определён, поэтому можно таблицу делать так:
Спасибо Вам.
Setuper - по твоему методу меню встали по порядку, но перестали работать команды. Буду думать.
Wariner - твой метод я не совсем понял. Может позже дойдет.
Обрати внимание, что каждая функция теперь должна возвращать не 3 значения, а четыре