Помощь - Проблема со скриптом (SA:MP)

govnocode.lua

Участник
Автор темы
92
17
Версия MoonLoader
.027.0-preview
Написал скрипт, в игре пытаюсь протестировать. В консоли выдает:
[ML] (error) otdih.lua: D:\блаблабла\блаблабла\блаблабла\блаблабла\moonloader\otdih.lua:9: attempt to call global 'u8' (a nil value)
stack traceback:
D:\блаблабла\блаблабла\блаблабла\блаблабла\moonloader\otdih.lua: in function <D:\блаблабла\блаблабла\блаблабла\блаблабла\moonloader\otdih.lua:2>
[ML] (error) otdih.lua: Script died due to an error. (47D8C44C)​

Lua:
local bNotf, notf = pcall(import, "imgui_notf.lua")
function main()
    repeat
        wait(0)
    until isSampAvailable()
    wait(1)
    while true do
if bNotf then
        notf.addNotification(u8("Пора отдохнуть!"), 4, 1)
        end
    end
end

Суть скрипта в том, что каждые 15 минут будет отправляться "Push-Imgui" сообщение с помощью imgui_notf
 
Решение
Lua:
local bNotf, notf = pcall(import, "imgui_notf.lua")
local encoding = require("encoding")
encoding.default = 'CP1251'
u8 = encoding.UTF8
function main()
    repeat wait(15) until isSampAvailable
    while true do
if bNotf then
        notf.addNotification(u8("тут текст типа"), 4, 1)
        end
    end
end
Учти то что сейчас умедомление в бесконечном цикле и будет отправлять бесконечно.
code:
local bNotf, notf = pcall(import, "imgui_notf.lua")
local encoding = require("encoding")
encoding.default = 'CP1251'
u8 = encoding.UTF8
function main()
    repeat wait(15) until isSampAvailable
    while true do
        wait(0)
        if bNotf then
            notf.addNotification("тут текст типа", 4, 1)
        end
    end
end

govnocode.lua

Участник
Автор темы
92
17

chapo

чопа сребдс // @moujeek
Модератор
8,868
11,572
Можешь еще пожалуйста подсказать, как сделать активацию скрипта ПРИ ПОДКЛЮЧЕНИИ К СЕРВЕРУ?

Если использую

Lua:
function onPacketReceived(packetId, data)
    if packetId == 34 then
        main()
    end
end

То выбивает ошибку
после isSampAvailable() добавь строку
while sampGetGamestate() ~= 3 do wait(0) end
 

siwage

Активный
193
66
while true do удаляю?
Возможно чапо имеет ввиду сделать вот так(я не уверен что правильно)
Внимание на 6 строчку
1687967729298.png
 

chapo

чопа сребдс // @moujeek
Модератор
8,868
11,572
Lua:
local bNotf, notf = pcall(import, 'imgui_notf.lua')
local time = 15 * ((60 * 1000) * 60)
local last = os.clock()

function main()
    while not isSampAvailable() do wait(0) end
    while sampGetGamestate() ~= 3 do wait(0) end
    while true do
        wait(0)
        if last + time - os.clock() <= 0 then
            notf.addNotification('Долбаеб, ливни из игры', 7.500, 2)
            last = os.clock()
        end
    end
end