imgui.Button с сохранением в Ini

boy next door

Участник
Автор темы
213
18
Версия MoonLoader
.026-beta
Приветос.
Как сделать сохранение в .ini через imgui.Button?

Lua:
local imgui = require 'mimgui'
local inicfg = require 'inicfg'
local directIni = 'ohelp.ini'
local ini = inicfg.load(inicfg.load({
    main = {
        enabled = true,
        theme = 1 -- тема
    },
}, directIni))
inicfg.save(ini, directIni)
local colorListNumber = imgui.new.int()
colorListNumber[0] = ini.main.theme -- берем число для комбо




function onScriptTerminate(s) -- функция сохранения, при выгрузке скрипта
    if s == thisScript() then
    ini.main.theme = colorListNumber[0] -- запихиваем комбо в ини
    ini.save(ini, directIni) -- сохраняем
    end
end

А то вот это не работает, и вырубает скрипт:
Lua:
            if imgui.Button(u8'Сохранить выбор') then
                ini.main.theme = colorListNumber[0] -- запихиваем комбо в ини
                ini.save(ini, directIni)
            end
 
Решение
Код:
[10:01:32.995600] (error)    Otbor helper: F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:186: attempt to call field 'save' (a nil value)
stack traceback:
    F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:186: in function '_draw'
    ...-PINK STYLE GTA [REBUILT]\moonloader\lib\mimgui\init.lua:107: in function <...-PINK STYLE GTA [REBUILT]\moonloader\lib\mimgui\init.lua:91>
[10:01:33.010600] (error)    Otbor helper: F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:129: attempt to call field 'save' (a nil value)
stack traceback:
    F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:129: in function <F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:126>
[10:01:33.010600] (error)    Otbor helper: Script died due to an error...

whyega52

Гений, миллионер, плейбой, долбаеб
Модератор
2,782
2,609
Приветос.
Как сделать сохранение в .ini через imgui.Button?

Lua:
local imgui = require 'mimgui'
local inicfg = require 'inicfg'
local directIni = 'ohelp.ini'
local ini = inicfg.load(inicfg.load({
    main = {
        enabled = true,
        theme = 1 -- тема
    },
}, directIni))
inicfg.save(ini, directIni)
local colorListNumber = imgui.new.int()
colorListNumber[0] = ini.main.theme -- берем число для комбо




function onScriptTerminate(s) -- функция сохранения, при выгрузке скрипта
    if s == thisScript() then
    ini.main.theme = colorListNumber[0] -- запихиваем комбо в ини
    ini.save(ini, directIni) -- сохраняем
    end
end

А то вот это не работает, и вырубает скрипт:
Lua:
            if imgui.Button(u8'Сохранить выбор') then
                ini.main.theme = colorListNumber[0] -- запихиваем комбо в ини
                ini.save(ini, directIni)
            end
а с какой причиной-то вырубает?)
 
  • Нравится
Реакции: boy next door

boy next door

Участник
Автор темы
213
18
а с какой причиной-то вырубает?)
Код:
[10:01:32.995600] (error)    Otbor helper: F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:186: attempt to call field 'save' (a nil value)
stack traceback:
    F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:186: in function '_draw'
    ...-PINK STYLE GTA [REBUILT]\moonloader\lib\mimgui\init.lua:107: in function <...-PINK STYLE GTA [REBUILT]\moonloader\lib\mimgui\init.lua:91>
[10:01:33.010600] (error)    Otbor helper: F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:129: attempt to call field 'save' (a nil value)
stack traceback:
    F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:129: in function <F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:126>
[10:01:33.010600] (error)    Otbor helper: Script died due to an error. (0EA1F4CC)

Сейчас скину код..

Сейчас скину код..

Lua:
function onScriptTerminate(s) -- функция сохранения, при выгрузке скрипта
    if s == thisScript() then
    ini.main.theme = colorListNumber[0] -- запихиваем комбо в ини
    ini.save(ini, directIni) -- 129 строка
    end
end

if imgui.Button(u8'Сохранить выбор') then
    ini.main.theme = colorListNumber[0] -- запихиваем комбо в ини
    ini.save(ini, directIni) --186
end --187
 

whyega52

Гений, миллионер, плейбой, долбаеб
Модератор
2,782
2,609
Код:
[10:01:32.995600] (error)    Otbor helper: F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:186: attempt to call field 'save' (a nil value)
stack traceback:
    F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:186: in function '_draw'
    ...-PINK STYLE GTA [REBUILT]\moonloader\lib\mimgui\init.lua:107: in function <...-PINK STYLE GTA [REBUILT]\moonloader\lib\mimgui\init.lua:91>
[10:01:33.010600] (error)    Otbor helper: F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:129: attempt to call field 'save' (a nil value)
stack traceback:
    F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:129: in function <F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:126>
[10:01:33.010600] (error)    Otbor helper: Script died due to an error. (0EA1F4CC)

Сейчас скину код..

Сейчас скину код..

Lua:
function onScriptTerminate(s) -- функция сохранения, при выгрузке скрипта
    if s == thisScript() then
    ini.main.theme = colorListNumber[0] -- запихиваем комбо в ини
    ini.save(ini, directIni) -- 129 строка
    end
end

if imgui.Button(u8'Сохранить выбор') then
    ini.main.theme = colorListNumber[0] -- запихиваем комбо в ини
    ini.save(ini, directIni) --186
end --187
ini.save замени на inicfg.save
 
  • Нравится
Реакции: VanoKLR

VanoKLR

Известный
849
463
Код:
[10:01:32.995600] (error)    Otbor helper: F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:186: attempt to call field 'save' (a nil value)
stack traceback:
    F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:186: in function '_draw'
    ...-PINK STYLE GTA [REBUILT]\moonloader\lib\mimgui\init.lua:107: in function <...-PINK STYLE GTA [REBUILT]\moonloader\lib\mimgui\init.lua:91>
[10:01:33.010600] (error)    Otbor helper: F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:129: attempt to call field 'save' (a nil value)
stack traceback:
    F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:129: in function <F:\1 WHITE-PINK STYLE GTA [REBUILT]\moonloader\ohelp.lua:126>
[10:01:33.010600] (error)    Otbor helper: Script died due to an error. (0EA1F4CC)

Сейчас скину код..

Сейчас скину код..

Lua:
function onScriptTerminate(s) -- функция сохранения, при выгрузке скрипта
    if s == thisScript() then
    ini.main.theme = colorListNumber[0] -- запихиваем комбо в ини
    ini.save(ini, directIni) -- 129 строка
    end
end

if imgui.Button(u8'Сохранить выбор') then
    ini.main.theme = colorListNumber[0] -- запихиваем комбо в ини
    ini.save(ini, directIni) --186
end --187
используй вместо ini.save - inicfg.save
 
  • Нравится
Реакции: whyega52

whyega52

Гений, миллионер, плейбой, долбаеб
Модератор
2,782
2,609
почему бы и не использовать json?
если код не сильно большой, то можно спокойно юзать иникфг, т.к. порой он реально проще, нежели работа с джейсоном, как в плане умений, так и в плане количества кода
 
  • Нравится
Реакции: boy next door