Сохранение слайдера

$Mr.R1ch$

Участник
Автор темы
99
25
Версия MoonLoader
Другое
Как сохранить слайдер в inicfg? Не могу сделать из за imgui.new.int
 

хромиус)

спокойно, это всего лишь слива
Друг
4,961
3,233
Lua:
local inicfg = require 'inicfg'
local directIni = 'filename.ini'
local ini = inicfg.load(inicfg.load({
    main = {
        delay = 0
    },
}, directIni))
inicfg.save(ini, directIni)
local slider = imgui.new.int(ini.main.delay)
--ondrawframe
if imgui.SliderInt(u8'привет',slider,0,24) then
   ini.main.delay = slider[0]
   inicfg.save(ini,directIni)   
end
 

$Mr.R1ch$

Участник
Автор темы
99
25
Lua:
local inicfg = require 'inicfg'
local directIni = 'filename.ini'
local ini = inicfg.load(inicfg.load({
    main = {
        delay = 0
    },
}, directIni))
inicfg.save(ini, directIni)
local slider = imgui.new.int(ini.main.delay)
--ondrawframe
if imgui.SliderInt(u8'привет',slider,0,24) then
   ini.main.delay = slider[0]
   inicfg.save(ini,directIni)  
end
Почти также делал, все равно не работает
 

хромиус)

спокойно, это всего лишь слива
Друг
4,961
3,233
Почти также делал, все равно не работает
может это от прямоты рук зависит все же?
Lua:
local inicfg = require 'inicfg'
local directIni = 'filename.ini'
local ini = inicfg.load(inicfg.load({
    main = {
        delay = 0
    },
}, directIni))
inicfg.save(ini, directIni)
local imgui = require 'mimgui'
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8

local new = imgui.new

local renderWindow = new.bool(false)
local delay = imgui.new.int(ini.main.delay)


local newFrame = imgui.OnFrame(
    function() return renderWindow[0] end,
    function(player)
        local resX, resY = getScreenResolution()
        local sizeX, sizeY = 300, 300
        imgui.SetNextWindowPos(imgui.ImVec2(resX / 2, resY / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
        imgui.SetNextWindowSize(imgui.ImVec2(sizeX, sizeY), imgui.Cond.FirstUseEver)
        imgui.Begin('Main Window', renderWindow)
        if imgui.SliderInt(u8'hi',delay,0,15) then
            ini.main.delay = delay[0]
            inicfg.save(ini,directIni)
        end
        if imgui.Button(u8'test') then
            sampAddChatMessage(delay[0],-1)
        end
        imgui.End()
    end
)

function main()
    while not isSampAvailable() do wait(0) end
    sampRegisterChatCommand('mimgui', function()
        renderWindow[0] = not renderWindow[0]
    end)
    while true do
        wait(0)
        
    end
end
1703449360242.png
 
  • Нравится
Реакции: MLycoris

$Mr.R1ch$

Участник
Автор темы
99
25
может это от прямоты рук зависит все же?
Lua:
local inicfg = require 'inicfg'
local directIni = 'filename.ini'
local ini = inicfg.load(inicfg.load({
    main = {
        delay = 0
    },
}, directIni))
inicfg.save(ini, directIni)
local imgui = require 'mimgui'
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8

local new = imgui.new

local renderWindow = new.bool(false)
local delay = imgui.new.int(ini.main.delay)


local newFrame = imgui.OnFrame(
    function() return renderWindow[0] end,
    function(player)
        local resX, resY = getScreenResolution()
        local sizeX, sizeY = 300, 300
        imgui.SetNextWindowPos(imgui.ImVec2(resX / 2, resY / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
        imgui.SetNextWindowSize(imgui.ImVec2(sizeX, sizeY), imgui.Cond.FirstUseEver)
        imgui.Begin('Main Window', renderWindow)
        if imgui.SliderInt(u8'hi',delay,0,15) then
            ini.main.delay = delay[0]
            inicfg.save(ini,directIni)
        end
        if imgui.Button(u8'test') then
            sampAddChatMessage(delay[0],-1)
        end
        imgui.End()
    end
)

function main()
    while not isSampAvailable() do wait(0) end
    sampRegisterChatCommand('mimgui', function()
        renderWindow[0] = not renderWindow[0]
    end)
    while true do
        wait(0)
       
    end
end
Посмотреть вложение 225860
Хорошо, тогда что я сделал тут не так?

Lua:
local ini = inicfg.load({
    set = {
        nick = "",
        rank = "",
        phone = "",
        org = "",
        mark = "",
        zad = 0,
        autorp = false,
        Wiget = false,
        combosu = false,
        combosutwo = false,
        combosuthere = false,
        checkboxone = false,
        checkboxtwo = false,
        checkboxnap = false,
        ComboTest = 0,
        combomark = 0,
        combosost = 0,
        ComboNap = 0,
   }
}, "MVD.ini")


local zad =imgui.new.int(ini.set.zad)


if imgui.SliderInt(u8'Задержка', zad, 1000, 5000) then
      ini.set.zad = zad[0]
       inicfg.save(ini, "MVD.ini")
       end

UPD: Уже починил все сам
 
Последнее редактирование: