Как парсить инфу из dialog_style_tablist

leekyrave

Известный
Автор темы
419
226
Версия MoonLoader
.027.0-preview
с помощью sampGetListboxItemText(item)
идет парс только первого столбца
 
Решение
с помощью sampGetListboxItemText(item)
идет парс только первого столбца
Если получаешь текст на хуках, то функция муна ещё не успевает схватить содержимое диалога, юзай кастомные функции или создавай поток, ставь там задержку 0мс, чтобы диалог успел появится и функция схватила его содержимое

Lua:
local samp = require 'samp.events'
function samp.onShowDialog(id,s,t,b1,b2,text)
    for i=0, sampGetListboxItemsCount(text)-1 do
        print(sampGetListboxItemText(text, i))
    end
end
function sampGetListboxItemText(str, item)
    local num_ = 0
    for str in string.gmatch(str, "[^\r\n]+") do
        if item == num_ then return str end
        num_ = num_ + 1
    end
    return false
end
function sampGetListboxItemsCount(text)...

CaJlaT

07.11.2024 14:55
Модератор
2,846
2,687
с помощью sampGetListboxItemText(item)
идет парс только первого столбца
Если получаешь текст на хуках, то функция муна ещё не успевает схватить содержимое диалога, юзай кастомные функции или создавай поток, ставь там задержку 0мс, чтобы диалог успел появится и функция схватила его содержимое

Lua:
local samp = require 'samp.events'
function samp.onShowDialog(id,s,t,b1,b2,text)
    for i=0, sampGetListboxItemsCount(text)-1 do
        print(sampGetListboxItemText(text, i))
    end
end
function sampGetListboxItemText(str, item)
    local num_ = 0
    for str in string.gmatch(str, "[^\r\n]+") do
        if item == num_ then return str end
        num_ = num_ + 1
    end
    return false
end
function sampGetListboxItemsCount(text)
    local i = 0
    for _ in text:gmatch(".-\n") do
        i = i + 1
    end
    return i
end