поиск ошибок в формах

Lance_Sterling

Известный
Автор темы
978
342
Версия MoonLoader
.026-beta
решил сделать поиск ошибок в формах, которые введены в inputtextmultiline
Lua:
if imgui.Button(u8'Выдать', imgui.ImVec2(460/3, 20)) then
            if formbuffer.v ~= '' then
                forms_give = true
                lua_thread.create(function()
                    sampAddChatMessage('[Admin Tools] {FFFFFF}Выдаю все формы...',0x00BFFF)
                    for i = 1, 100 do
                        if mainIni.aforms[i] ~= nil then
                            if bindStr(i) ~= '' then
                                line_form = i
                                wait(1300)
                                sampSendChat(bindStr(i))
                            end
                        end
                    end
                    wait(30)
                    sampAddChatMessage('[Admin Tools] {FFFFFF}Выдача форм успешно завершена.',0x00BFFF)
                    wait(3000)
                    formbuffer.v = ''
                    for i = 1, 100 do mainIni.aforms[i] = '' end inicfg.save(mainIni, directIni)
                    forms_give = false
                end)
            else
                sampAddChatMessage('[Admin Tools] {FFFFFF}Вы не ввели ни одну форму.',0x00BFFF)
            end
        end
в итоге оно не выводится, у меня был результат, но тогда выводилась только одна первая ошибка, а остальные просто выводились с текстом первой ошибки
вот код где я ищу ошибку и вставляю в таблицу
Lua:
if forms_give then--регулярка
        if text:find('{ffa8a8}Игрок не найден в бан') then
            -- for i = 1, 100 do
                if mainIni.aforms[i] ~= nil then
                    table.insert(forms_errors, 'Игрок не найден в бан-листе! Форма: '..bindStr(line_form))
                    wt:run()
                    -- break
                end
            -- end
        elseif text:find('{ffa8a8}Игрок не найден') then
            -- for i = 1, 100 do
                if mainIni.aforms[i] ~= nil then
                    table.insert(forms_errors, 'Игрок не найден! Форма: '..bindStr(line_form))
                    wt:run()
                    -- break
                end
            -- end
        end
        if text:find('{ffa8a8}Игрок уже имеет бан чата') then
            -- for i = 1, 100 do
                if mainIni.aforms[i] ~= nil then
                    table.insert(forms_errors, 'У игрока уже есть бан-чата! Форма: '..bindStr(line_form))
                    wt:run()
                    -- break
                end
            -- end
        end
        if text:find('{ffa8a8}Игрок не имеет бан чата') then
            -- for i = 1, 100 do
                if mainIni.aforms[i] ~= nil then
                    table.insert(forms_errors, 'У игрока нет блокировки чата! Форма: '..bindStr(line_form))
                    wt:run()
                    -- break
                end
            -- end
        end
        if text:find('Введите')then
            -- for i = 1, 100 do
                if mainIni.aforms[i] ~= nil then
                    table.insert(forms_errors, 'Неверный синтаксис! Форма: '..bindStr(line_form))
                    wt:run()
                    -- break
                end
            -- end
        end
        if text:find('Вводите') then
            -- for i = 1, 100 do
                if mainIni.aforms[i] ~= nil then
                    table.insert(forms_errors, 'Неверный синтаксис! Форма: '..bindStr(line_form))
                    wt:run()
                    -- break
                end
            -- end
        end
    end
вот функция bindStr
Lua:
local function bindStr(param)
    return u8:decode(mainIni.aforms[param] or 'error')
end
 
  • Эм
Реакции: qdIbp