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

$Mr.R1ch$

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

ChromiusJ

PARΛDIGM ΛSS
Друг
4,922
3,207
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$

Участник
Автор темы
90
23
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
Почти также делал, все равно не работает
 

ChromiusJ

PARΛDIGM ΛSS
Друг
4,922
3,207
Почти также делал, все равно не работает
может это от прямоты рук зависит все же?
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$

Участник
Автор темы
90
23
может это от прямоты рук зависит все же?
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: Уже починил все сам
 
Последнее редактирование: