json

W1ll04eison

Участник
Автор темы
328
19
Версия MoonLoader
.026-beta
Как реализовать обращение к конкретному массиву в json?

Сам Json:
lua:
    files:write(encodeJson(
        {
        exam_osnova = {
            privetstvie = {name = "Приветствие",text = {"Я проведу для вас экзамен.","{waits:3000}","Я ваш экзаминатор"},},
            prinyato = {name = "Сообщение в случае сдачи экзаменов",text = {"Вы сдали экзамены!"},},
            otkaz = {name = "Сообщение в случае провала экзаменов",text = {"Вы не сдали экзамены!"},},
        },
        exam_vopr = {
            {name = "Вопрос №1", text = {"Расшифруйте код 10-4"}},
            {name = "Вопрос №2", text = {"Расшифруйте понятие юрисдикция"}},
        },
        }
    ))
    files:close()

Как через imgui.Combo производить обращение к конкретному массиву?
Код:
lua:
            local text_exam_okno2 = ''
            local name_exam_okno2 = ''
            if imgui.Combo(u8"Список", array.combo_exam, array.combo_arr_exam) then
                if array.combo_exam.v ~= 0 then
                    if array.combo_exam.v ~= #array.combo_arr_exam then

                        local temp_exam = {}
                        for keySplit, valSplit in pairs(cfg_exam["exam_vopr"][array.combo_exam.v]["text"]) do
                            table.insert(temp_exam, valSplit)
                        end
                        text_exam_okno2 = u8(table.concat(temp_exam, "\n"))

                        name_exam_okno2 = u8(cfg_exam["exam_vopr"][array.combo_exam.v]["name"])
                        slot = array.combo_exam.v
                    end
                end
            end

            imgui.Text(u8'Название Вопроса:')
            imgui.Text(name_exam_okno2)
            imgui.Text(u8'Текст Вопроса:')
            imgui.Text(text_exam_okno2)

Код, который выше - не работает, выдает ошибку на индекс в строках:
lua:
 for keySplit, valSplit in pairs(cfg_exam["exam_vopr"][array.combo_exam.v]["text"]) do
lua:
ame_exam_okno2 = u8(cfg_exam["exam_vopr"][array.combo_exam.v]["name"])

Подскажите, как можно реализовать подобное
 

qdIbp

Автор темы
Проверенный
1,434
1,174
Код, который выше - не работает, выдает ошибку на индекс в строках:
lua:
 for keySplit, valSplit in pairs(cfg_exam["exam_vopr"][array.combo_exam.v]["text"]) do
lua:
ame_exam_okno2 = u8(cfg_exam["exam_vopr"][array.combo_exam.v]["name"])

Подскажите, как можно реализовать подобное
Lua:
for q, w in pairs(cfg_exam["exam_vopr"]) do
    print(q,w["text"][1])
end


Лучше скинь полный код, не то я не понимаю что содержится в array