Нужна помощь со скриптом!

AngelMAILS228

Участник
Автор темы
79
7
Пытаюсь создать скрипт по сокращению комманд. Но обычные команды по типу /time на /t, /members на /mb - все без проблем получается, но команды в которых есть ид, все с ними сложнее, подскажите что и куда вписать для нормального сокращение команды с идом, к примеру /invite [ID] на /inv [ID]

46659
 

Impossible In Rage

Известный
955
247
Пытаюсь создать скрипт по сокращению комманд. Но обычные команды по типу /time на /t, /members на /mb - все без проблем получается, но команды в которых есть ид, все с ними сложнее, подскажите что и куда вписать для нормального сокращение команды с идом, к примеру /invite [ID] на /inv [ID]

Посмотреть вложение 46659
оно должно быть как %d
 

AngelMAILS228

Участник
Автор темы
79
7
Lua:
sampRegisterChatCommand("inv", cmd_inv)



function cmd_inv(param)
    local id = string.match(param, "(%d+)")
    sampSendChat("/invite "..id)
end
Огромное спасибр, ещё вопрос, если там к примеру 2 параметра:
Например:
/giverank [ID] [RANK]
или
/su [ID] [Причина/2,8УК и тд.]
 

Dmitriy Makarov

25.05.2021
Проверенный
2,478
1,113
Огромное спасибр, ещё вопрос, если там к примеру 2 параметра:
Например:
/giverank [ID] [RANK]
или
/su [ID] [Причина/2,8УК и тд.]
Также как и 1 параметр, только рядом с id пишешь еще 1 параметр и 1 регулярное выражение
Lua:
sampRegisterChatCommand("rank", cmd_rank)
sampRegisterChatCommand("розыск", cmd_su)


function cmd_rank(param)
    local id, rank = string.match(param, "(%d+) (%d+)")
    sampSendChat("/giverank "..id.." "..rank.."")
end

function cmd_su(param)
    local id, reason = string.match(param, "(%d+) (.+)")
    sampSendChat("/su "..id.." "..reason.."")
end
 
  • Нравится
Реакции: AngelMAILS228

Tema05

Известный
1,442
401
Пытаюсь создать скрипт по сокращению комманд. Но обычные команды по типу /time на /t, /members на /mb - все без проблем получается, но команды в которых есть ид, все с ними сложнее, подскажите что и куда вписать для нормального сокращение команды с идом, к примеру /invite [ID] на /inv [ID]

Посмотреть вложение 46659
Зачем так заморачиваться? Делать отдельную функцию?
Lua:
sampRegisterChatCommand("invite", function(id)
    sampSendChat("/invite " .. id)
end)
sampRegisterChatCommand("giverank", function(arg)
    local id, rank = string.match(arg, "(.+) (.+)")
    sampSendChat("/giverank " .. id .. " " .. rank)
end)
Или вот так.
Lua:
sampRegisterChatCommand("giverank", function(arg)
    local id, rank = string.match(arg, "(.+) (.+)")
    sampSendChat(string.format("/giverank %d %d", id, rank))
end)
 
Последнее редактирование:
  • Нравится
Реакции: BlackCherry