Не самый удачный пример кода, если честно.
Я считаю, что достаточно было просто упомянуть, что при использовании аргумента в функции туда передается все, что будет введено после команды + пробел.
Например:
-- somewhere
sampRegisterChatCommand("command", cmd)
function cmd(params)
print(params)
end
-- Если я вызываю /command foo bar
-- То в moonloader.log будет выведено "foo bar"
Для того, чтобы обработать входящую информацию и провести ее валидацию можно использовать регулярные выражения.
Допустим, мы ожидаем что в /command будет передано 2 аргумента: из которых первый число, второе строка
function cmd(params)
local int, str = params:match("(%d+) (.*)")
if not int or not str then sampAddChatMessage("Usage: /command [integer] [string]")
return int, str
end
В примере выше команда разбивает передаваемый ей аргумент на две переменных и возвращает их как результат выполнения функции.