привязка с документа

Fabregoo

Известный
Автор темы
656
128
Версия MoonLoader
Другое
Нашёл я тему.
Все сделал так, сылку ток на свою поменял с совета @imring но скрипт выдает SampAddChatMessage, но активация скрипта /trener когда ввожу ничего не происходит, менял даты в текстовику.
код скрипта кидать не буду, но часть с него кину.
Lua:
site = "https://pastebin.com/raw/WZ5bEpqN"

function getTableUsersByUrl(url)
    local n_file, bool, users = os.getenv('TEMP')..os.time(), false, {}
    downloadUrlToFile(url, n_file, function(id, status)
        if status == 6 then bool = true end
    end)
    while not doesFileExist(n_file) do wait(0) end
    if bool then
        local file = io.open(n_file, 'r')
        for w in file:lines() do
            local n, d = w:match('(.*): (.*)')
            users[#users+1] = { name = n, date = d }
        end
        file:close()
        os.remove(n_file)
    end
    return users
end

function isAvailableUser(users, name)
    for i, k in pairs(users) do
        if k.name == name then
            local d, m, y = k.date:match('(%d+)%.(%d+)%.(%d+)')
            local time = {
                day = tonumber(d),
                isdst = true,
                wday = 0,
                yday = 0,
                year = tonumber(y),
                month = tonumber(m),
                hour = 0
            }
            if os.time(time) >= os.time() then return true end
        end
    end
    return false
end

function main()
  if not isSampfuncsLoaded() or not isSampLoaded() then return end
  while not isSampAvailable() do wait(100) end -- снизу идёт регистрация команд, и тому подобное.
  sampRegisterChatCommand(tostring(fs), function() main_window_state.v = not main_window_state.v end)
  notf.addNotification('Активация: /' ..ggvp, 5, 1)
  notf.addNotification('Скрипт успешно загружен! Текущая версия: ' ..version, 5, 1)
  sampAddChatMessage('{ffff00} [by Fabrego] {20B2AA} Тренер Капчи {ffffff}Версия: '..version, -1)
              while sampGetCurrentServerName() == 'SA-MP' do wait(0) end
    local users = getTableUsersByUrl(site) -- узнаём таблицу списка.
    local _, myid = sampGetPlayerIdByCharHandle(playerPed) -- Узнаём свой ид.
    if not isAvailableUser(users, sampGetPlayerNickname(myid)) then -- Если срок уже прошёл или в списке нету моего ника, то..
        print('The term is ended or your name is not in the list.')
        thisScript():unload()
  while true do wait(0)
    end
    imgui.Process = main_window_state.v
  end
  wait(-1)
end
end
новая проблема, скрипт работает и не важно какая дата 2010 года, или 2020,
 
Последнее редактирование:

Fabregoo

Известный
Автор темы
656
128
лучше не используй
Да я то понял.
Но среди друзей, которые не знаю как открыть луа блокнотом, подойдет)
[ML] (error) Òðåíåð Êàï÷è: D:\GTA San Andreas - êîïèÿ\moonloader\õóéïåð õó¸âëè.lua:419: The term is ended or your name is not in the list.
stack traceback:
[C]: in function 'assert'
D:\GTA San Andreas - êîïèÿ\moonloader\õóéïåð õó¸âëè.lua:419: in function <D:\GTA San Andreas - êîïèÿ\moonloader\õóéïåð õó¸âëè.lua:413>
[ML] (error) Òðåíåð Êàï÷è: Script died due to an error. (06497714)