- 16
- 0
- Версия MoonLoader
- .026-beta
Я понимаю что вопрос возможно тупой, но все же...
Вот смотрите, я хочу сделать автоматическую авторизацию. Пароль я храню в .ini-файле (не будем вдаваться в подробности его структуры)
В Imgui окне я просто отрисовываю Checkbox и InputText. Соответственно пароль из поля мне надо зашифровать и записать в инишник. При авторизации надо его считать из инишника ввести в диалог авторизации. И по хорошему закинуть в переменную чтобы потом если что редачить
Вот смотрите, я хочу сделать автоматическую авторизацию. Пароль я храню в .ini-файле (не будем вдаваться в подробности его структуры)
В Imgui окне я просто отрисовываю Checkbox и InputText. Соответственно пароль из поля мне надо зашифровать и записать в инишник. При авторизации надо его считать из инишника ввести в диалог авторизации. И по хорошему закинуть в переменную чтобы потом если что редачить
Что я имею:
directory = "cfg.ini"
cfg = inicfg.load(inicfg.load({
settings = {
passacc = '',
autojoin = false
}
}, directory))
inicfg.save(cfg, directory)
local autojoin = imgui.ImBool(cfg.settings.autojoin)
local pass_acc = imgui.ImBuffer(u8(cfg.settings.passacc), 256)
function imgui.OnDrawFrame()
if settings_script.v then
sw, sh = getScreenResolution()
btn_size = imgui.ImVec2(-0.1, 20)
imgui.SetNextWindowPos(imgui.ImVec2(sw / 2, sh / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
imgui.SetNextWindowSize(imgui.ImVec2(650, 450), imgui.Cond.FirstUseEver)
imgui.Begin(u8('Основные настройки скрипта'), settings_script, imgui.WindowFlags.NoCollapse + imgui.WindowFlags.NoResize)
imgui.Separator()
imgui.AlignTextToFramePadding();
imgui.Checkbox("##AutoJoin2", autojoin)
imgui.SameLine(30);
imgui.Text(u8'Автоввод пароля');
if autojoin.v then
imgui.AlignTextToFramePadding();
imgui.Text(u8'Пароль от аккаунта');
imgui.SameLine(135);
imgui.InputText('##Text2', pass_acc, imgui.InputTextFlags.Password)
--вот тут должна быть кнопка для сохранения которая запишет эти данные в ini в зашифрованном виде
end
end
end
function sampev.onShowDialog(dialogId, style, title, button1, button2, text)
if title:find("Авторизация") and dialogId == 1 and autojoin.v then
sampSendDialogResponse(1, 1, 0, ???) -- тут вопрос как передавать ароль, как его правильно считать из файла (чтобы дешифровался)
end
end