Не работает sampSendChat()

RedHolms

Известный
Автор темы
Проверенный
617
360
Версия MoonLoader
.026-beta
Не срабатывает sampSendChat("/engine"). Пытался вставлять другие команды, всё равно не срабатывает. Однако print(2) срабатывает, из-за чего вообще не понятно, в чем ошибка. В логах Мунлоадера ничего необычного.

Lua:
local sampev = require 'lib.samp.events'

function main()
    if not isSampfuncsLoaded() or not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end
   wait(-1)
end

function sampev.onServerMessage(color, text)
    if text:find('Ключи не вставлены') then 
        sampSendChat("/key")
        print(1)
        sampSendChat("/engine")
        print(2)
        return false
    end
end
 
Решение
Я так-же, тоже раньше ставил задержку спокойно, без потока и все работало. Но сейчас, у меня как-будто сломался LuaJIT в мунлоадере, или сам мунлоадер. Переустанавливал, но не помогло.
Lua:
local sampev = require 'lib.samp.events'

function main()
    if not isSampfuncsLoaded() or not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end
   wait(-1)
end

function sampev.onServerMessage(color, text)
    if text:find('Ключи не вставлены') then
        lua_thread.create(function()
            sampSendChat("/key")
            wait(1000)
            sampSendChat("/engine")
            return false
        end)
    end
end
без потока и все работало.
Кому ты рассказываешь. wait вне мейна нужно...

RedHolms

Известный
Автор темы
Проверенный
617
360
Возможно потому что сервер не засчитывает когда ты вводишь 2 команды одновременно?
Дело в том, что раньше(сегодня же, но утром) все работало идеально, одновременно все срабатывало, но сейчас почему-то не работает. Пытался так-же ставить задержку, но вылетала ошибка.
 

RedHolms

Известный
Автор темы
Проверенный
617
360
Значит без потока ставил
Я так-же, тоже раньше ставил задержку спокойно, без потока и все работало. Но сейчас, у меня как-будто сломался LuaJIT в мунлоадере, или сам мунлоадер. Переустанавливал, но не помогло.
 

Fott

Простреленный
3,433
2,279
Я так-же, тоже раньше ставил задержку спокойно, без потока и все работало. Но сейчас, у меня как-будто сломался LuaJIT в мунлоадере, или сам мунлоадер. Переустанавливал, но не помогло.
Lua:
local sampev = require 'lib.samp.events'

function main()
    if not isSampfuncsLoaded() or not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end
   wait(-1)
end

function sampev.onServerMessage(color, text)
    if text:find('Ключи не вставлены') then
        lua_thread.create(function()
            sampSendChat("/key")
            wait(1000)
            sampSendChat("/engine")
            return false
        end)
    end
end
без потока и все работало.
Кому ты рассказываешь. wait вне мейна нужно использовать исключительно с потоком.
 

RedHolms

Известный
Автор темы
Проверенный
617
360
Lua:
local sampev = require 'lib.samp.events'

function main()
    if not isSampfuncsLoaded() or not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end
   wait(-1)
end

function sampev.onServerMessage(color, text)
    if text:find('Ключи не вставлены') then
        lua_thread.create(function()
            sampSendChat("/key")
            wait(1000)
            sampSendChat("/engine")
            return false
        end)
    end
end

Кому ты рассказываешь. wait вне мейна нужно использовать исключительно с потоком.
Для примера поставил вместо /key и /engine команды /time и /mm. В итоге все зациклилось, и флудит этими командами каждую секунду.