помогите с скриптом

devodrag

Новичок
Автор темы
16
0
во общем хочу погрузится в разработку луа скриптинга, пишу тест скрипт для проверки на личном сервере, и столкнулся с проблемой, команды не работают, знающие люди помогите!


lua:
script_name("Admin Helper CMD")
script_author("devodrag")
script_version("1.0.0")

function main()
  if not isSampLoaded() or not isSampfuncsLoaded() then return end
    while not isSampAvailable() do wait(100) end
 
  sampAddChatMessage(string.format"[ACMD] {ffffff} Доброго времени суток! У вас стоит последняя версия!", 0xff410d)
 
  sampRegisterChatCommand("test", test)
  sampRegisterChatCommand("scripttest", scripttest)
 
end


function test(id)
  sampSendChat('/mute' .. id .. '1' .. 'Test')
  sampAddChatMessage(string.format"[ACMD] {ffffff} Игрок был замучен.", 0xff410d)
  sampSendChat('/unmute' .. id)
  sampAddChatMessage(string.format"[ACMD] {ffffff} Игрок был размучен", 0xff410d)
end

function scripttest()
  sampAddChatMessage(string.format"[ACMD] {ffffff} Скрипт в рабочем состоянии!", 0xff410d)
end
В логах ничего сверхъестественного не нашел
 
Решение
Благодарю тебя!


Не подскажешь еще почему игроков не мутит? Я вроде все правильно сделал, просто пишет то что игрок замучен и игрок размучен, никаких действий не происходят, и как сделать задержку у выдачи и снятия наказания? Как сделать так чтобы когда писал /test без ID он писал "Не введен ID игрока"?
по поводу первого - вероятно из-за забытых пробела после /mute и /unmute
у тебя '/mute', а нужно '/mute ' и далее тоже пробелы забыты
сейчас если ты введешь id=3 у тебя отправится в чат: /mute31Test
по поводу второго: проверяй значение id, если оно пустое то выводи сообщение через sampAddChatMessage и прерывай функцию:
Lua:
if id == "" or id == nil then
    sampAddChatMessage("Не введен ID игрока", -1)
    return...

kizn

q(≧▽≦q)
Всефорумный модератор
2,415
2,137
код внутри main должен заканчиваться вечным циклом while true do wait(0) end или же строчкой с отрицательной задержкой wait(-1). в противном случае скрипт выполняет функции main и выгружается (собственно - ничего не работает)
 
  • Нравится
Реакции: Tema05

devodrag

Новичок
Автор темы
16
0
код внутри main должен заканчиваться вечным циклом while true do wait(0) end или же строчкой с отрицательной задержкой wait(-1). в противном случае скрипт выполняет функции main и выгружается (собственно - ничего не работает)
Благодарю тебя!

код внутри main должен заканчиваться вечным циклом while true do wait(0) end или же строчкой с отрицательной задержкой wait(-1). в противном случае скрипт выполняет функции main и выгружается (собственно - ничего не работает)
Не подскажешь еще почему игроков не мутит? Я вроде все правильно сделал, просто пишет то что игрок замучен и игрок размучен, никаких действий не происходят, и как сделать задержку у выдачи и снятия наказания? Как сделать так чтобы когда писал /test без ID он писал "Не введен ID игрока"?
 
Последнее редактирование:

kizn

q(≧▽≦q)
Всефорумный модератор
2,415
2,137
Благодарю тебя!


Не подскажешь еще почему игроков не мутит? Я вроде все правильно сделал, просто пишет то что игрок замучен и игрок размучен, никаких действий не происходят, и как сделать задержку у выдачи и снятия наказания? Как сделать так чтобы когда писал /test без ID он писал "Не введен ID игрока"?
по поводу первого - вероятно из-за забытых пробела после /mute и /unmute
у тебя '/mute', а нужно '/mute ' и далее тоже пробелы забыты
сейчас если ты введешь id=3 у тебя отправится в чат: /mute31Test
по поводу второго: проверяй значение id, если оно пустое то выводи сообщение через sampAddChatMessage и прерывай функцию:
Lua:
if id == "" or id == nil then
    sampAddChatMessage("Не введен ID игрока", -1)
    return
end

а ну и сейчас твой скрипт одновременно замучивает и размучивает по одной команде, хз зачем это ?
 
  • Нравится
Реакции: devodrag

devodrag

Новичок
Автор темы
16
0
по поводу первого - вероятно из-за забытых пробела после /mute и /unmute
у тебя '/mute', а нужно '/mute ' и далее тоже пробелы забыты
сейчас если ты введешь id=3 у тебя отправится в чат: /mute31Test
по поводу второго: проверяй значение id, если оно пустое то выводи сообщение через sampAddChatMessage и прерывай функцию:
Lua:
if id == "" or id == nil then
    sampAddChatMessage("Не введен ID игрока", -1)
    return
end

а ну и сейчас твой скрипт одновременно замучивает и размучивает по одной команде, хз зачем это ?
Сяба!