сохранение нажатой клавиши в ini

Iskon

Участник
Автор темы
99
16
Версия MoonLoader
.026-beta
Есть такая проблема: ini файл возвращает инфу в стринге, поэтому всякие функции по типу wasKeyPressed не работают. Например, есть переменная ini.main.key_open_hask = VK_Q
И функции wasKeyPressed(ini.main.key_open_hask) возвращается "VK_Q". Как решить проблему?
 
Решение
В чём проблема?

Lua:
require('moonloader')
local inicfg = require('inicfg')
local IniFileName = 'test.ini'
local ini = inicfg.load({ keys = { vk = VK_Q } }, IniFileName)

function main()
    if not doesFileExist(getWorkingDirectory() .. '\\moonloader\\config\\' .. IniFileName) then
        inicfg.save(ini, IniFileName)
    end
    while true do
        wait(0)
        if wasKeyPressed(ini.keys.vk) then
            sampAddChatMessage('Нажата клавиша', -1)
        end
    end
end

1698158388089.png


1698158403822.png

Hinаta

Известный
783
358
В чём проблема?

Lua:
require('moonloader')
local inicfg = require('inicfg')
local IniFileName = 'test.ini'
local ini = inicfg.load({ keys = { vk = VK_Q } }, IniFileName)

function main()
    if not doesFileExist(getWorkingDirectory() .. '\\moonloader\\config\\' .. IniFileName) then
        inicfg.save(ini, IniFileName)
    end
    while true do
        wait(0)
        if wasKeyPressed(ini.keys.vk) then
            sampAddChatMessage('Нажата клавиша', -1)
        end
    end
end

1698158388089.png


1698158403822.png
 
Последнее редактирование:

Iskon

Участник
Автор темы
99
16
В чём проблема?

Lua:
require('moonloader')
local inicfg = require('inicfg')
local IniFileName = 'test.ini'
local ini = inicfg.load({ keys = { vk = VK_Q } }, IniFileName)

function main()
    if not doesFileExist(getWorkingDirectory() .. '\\moonloader\\config\\test.ini') then
        inicfg.save(ini, IniFileName)
    end
    while true do
        wait(0)
        if wasKeyPressed(ini.keys.vk) then
            sampAddChatMessage('Нажата клавиша', -1)
        end
    end
end

Посмотреть вложение 218930

Посмотреть вложение 218931
почему в ini файле цифры, если по дефолту
inicfg.load({ keys = { vk = VK_Q } }, IniFileName)?