Не вводит текст в диалог

AngelMAILS228

Участник
Автор темы
79
7
Версия MoonLoader
.026-beta
Смотрите, есть скрипт типо простой автологин, в инпут текст вводишь пароль, он сохраняется в ини файл и при диалоге с названием "Авторизация" должен ввести данные из инпут текста, но почему то так не делает, помогите найти проблему!!!?!??!?
Lua:
local inicfg = require 'inicfg'
local imgui = require "imgui"
local sW, sH = getScreenResolution()
local sampev = require('lib.samp.events')
local se = require 'lib.samp.events'
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8


local mainIni = inicfg.load({ -- CFG
    config = {
    PassNew = ""
    }
}, "autologin")
local settings = imgui.ImBool(false)
local pass = imgui.ImBuffer(mainIni.config.PassNew, 256)
local status = inicfg.load(mainIni, 'autologin.ini')
if not doesFileExist('moonloader/config/autologin.ini') then inicfg.save(mainIni, 'autologin.ini') end

function main()
            sampRegisterChatCommand('setpass', function()
            settings.v = not settings.v
        end)
    while true do
        wait(0)
        imgui.Process = settings.v
    end
end

function setpass()
    settings.v = not settings.v
end

function imgui.OnDrawFrame()
    if settings.v then
local iScreenWidth, iScreenHeight = getScreenResolution()
imgui.SetNextWindowPos(imgui.ImVec2(sW / 2, sH / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
imgui.SetNextWindowSize(imgui.ImVec2(300, 300), imgui.Cond.FirstUseEver)
imgui.Begin('AutoLogin ', settings, imgui.WindowFlags.NoCollapse + imgui.WindowFlags.NoScrollbar) -- imgui.WindowFlags.NoResize
if imgui.InputText(u8"Пароль от аккаунта", pass) then
    mainIni.config.PassNew = pass.v
    inicfg.save(mainIni, 'autologin.ini')
end
imgui.End()
end
end

function sampev.onShowDialog(id, style, title, button1, button2, text)
   if title == 'Авторизация' then
   sampSendDialogResponse(id, 1, -1, pass.v)
  end
end
 
Решение
Lua:
local inicfg = require 'inicfg'
local imgui = require "imgui"
local sW, sH = getScreenResolution()
local sampev = require('lib.samp.events')
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8

local mainIni = inicfg.load({ -- CFG
    config = {
        PassNew = ""
        }
}, "autologin")
local settings = imgui.ImBool(false)
local pass = imgui.ImBuffer(mainIni.config.PassNew, 256)
local status = inicfg.load(mainIni, 'autologin.ini')
if not doesFileExist('moonloader/config/autologin.ini') then inicfg.save(mainIni, 'autologin.ini') end

function main()
    sampRegisterChatCommand('setpass', function() settings.v = not settings.v end)
    while true do wait(0)
        imgui.Process = settings.v
    end...

qdIbp

Автор темы
Проверенный
1,430
1,172
Lua:
local inicfg = require 'inicfg'
local imgui = require "imgui"
local sW, sH = getScreenResolution()
local sampev = require('lib.samp.events')
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8

local mainIni = inicfg.load({ -- CFG
    config = {
        PassNew = ""
        }
}, "autologin")
local settings = imgui.ImBool(false)
local pass = imgui.ImBuffer(mainIni.config.PassNew, 256)
local status = inicfg.load(mainIni, 'autologin.ini')
if not doesFileExist('moonloader/config/autologin.ini') then inicfg.save(mainIni, 'autologin.ini') end

function main()
    sampRegisterChatCommand('setpass', function() settings.v = not settings.v end)
    while true do wait(0)
        imgui.Process = settings.v
    end
end

function setpass()
    settings.v = not settings.v
end

function imgui.OnDrawFrame()
    if settings.v then
        local iScreenWidth, iScreenHeight = getScreenResolution()
        imgui.SetNextWindowPos(imgui.ImVec2(sW / 2, sH / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
        imgui.SetNextWindowSize(imgui.ImVec2(300, 300), imgui.Cond.FirstUseEver)
        imgui.Begin('AutoLogin ', settings, imgui.WindowFlags.NoCollapse + imgui.WindowFlags.NoScrollbar) -- imgui.WindowFlags.NoResize
            if imgui.InputText(u8"Пароль от аккаунта", pass) then
                mainIni.config.PassNew = pass.v
                inicfg.save(mainIni, 'autologin.ini')
            end
        imgui.End()
    end
end

function sampev.onShowDialog(id, style, title, button1, button2, text)
    if title:find('Авторизация') then
        sampSendDialogResponse(id, 1, -1, pass.v)
    end
end
За одно табуляцию сделал
 
Последнее редактирование:
  • Нравится
Реакции: AngelMAILS228

AngelMAILS228

Участник
Автор темы
79
7
Lua:
local inicfg = require 'inicfg'
local imgui = require "imgui"
local sW, sH = getScreenResolution()
local sampev = require('lib.samp.events')
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8

local mainIni = inicfg.load({ -- CFG
    config = {
        PassNew = ""
        }
}, "autologin")
local settings = imgui.ImBool(false)
local pass = imgui.ImBuffer(mainIni.config.PassNew, 256)
local status = inicfg.load(mainIni, 'autologin.ini')
if not doesFileExist('moonloader/config/autologin.ini') then inicfg.save(mainIni, 'autologin.ini') end

function main()
    sampRegisterChatCommand('setpass', function() settings.v = not settings.v end)
    while true do wait(0)
        imgui.Process = settings.v
    end
end

function setpass()
    settings.v = not settings.v
end

function imgui.OnDrawFrame()
    if settings.v then
        local iScreenWidth, iScreenHeight = getScreenResolution()
        imgui.SetNextWindowPos(imgui.ImVec2(sW / 2, sH / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
        imgui.SetNextWindowSize(imgui.ImVec2(300, 300), imgui.Cond.FirstUseEver)
        imgui.Begin('AutoLogin ', settings, imgui.WindowFlags.NoCollapse + imgui.WindowFlags.NoScrollbar) -- imgui.WindowFlags.NoResize
            if imgui.InputText(u8"Пароль от аккаунта", pass) then
                mainIni.config.PassNew = pass.v
                inicfg.save(mainIni, 'autologin.ini')
            end
        imgui.End()
    end
end

function sampev.onShowDialog(id, style, title, button1, button2, text)
    if title:find('Авторизация') then
        sampSendDialogResponse(id, 1, -1, pass.v)
    end
end
За одно табуляцию сделал
Спасибо бро! Понял

Lua:
local inicfg = require 'inicfg'
local imgui = require "imgui"
local sW, sH = getScreenResolution()
local sampev = require('lib.samp.events')
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8

local mainIni = inicfg.load({ -- CFG
    config = {
        PassNew = ""
        }
}, "autologin")
local settings = imgui.ImBool(false)
local pass = imgui.ImBuffer(mainIni.config.PassNew, 256)
local status = inicfg.load(mainIni, 'autologin.ini')
if not doesFileExist('moonloader/config/autologin.ini') then inicfg.save(mainIni, 'autologin.ini') end

function main()
    sampRegisterChatCommand('setpass', function() settings.v = not settings.v end)
    while true do wait(0)
        imgui.Process = settings.v
    end
end

function setpass()
    settings.v = not settings.v
end

function imgui.OnDrawFrame()
    if settings.v then
        local iScreenWidth, iScreenHeight = getScreenResolution()
        imgui.SetNextWindowPos(imgui.ImVec2(sW / 2, sH / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
        imgui.SetNextWindowSize(imgui.ImVec2(300, 300), imgui.Cond.FirstUseEver)
        imgui.Begin('AutoLogin ', settings, imgui.WindowFlags.NoCollapse + imgui.WindowFlags.NoScrollbar) -- imgui.WindowFlags.NoResize
            if imgui.InputText(u8"Пароль от аккаунта", pass) then
                mainIni.config.PassNew = pass.v
                inicfg.save(mainIni, 'autologin.ini')
            end
        imgui.End()
    end
end

function sampev.onShowDialog(id, style, title, button1, button2, text)
    if title:find('Авторизация') then
        sampSendDialogResponse(id, 1, -1, pass.v)
    end
end
За одно табуляцию сделал
А как правильно можно будет сделать, типо если введет пароль скрипт, в диалоге напишет что пароль не верный, то чтоб дальше не вводило, а в чате написало мол в настройках не правильно указан пароль, перепроверьте!??!
 

qdIbp

Автор темы
Проверенный
1,430
1,172
Спасибо бро! Понял


А как правильно можно будет сделать, типо если введет пароль скрипт, в диалоге напишет что пароль не верный, то чтоб дальше не вводило, а в чате написало мол в настройках не правильно указан пароль, перепроверьте!??!
Lua:
local inicfg = require 'inicfg'
local imgui = require "imgui"
local sW, sH = getScreenResolution()
local sampev = require('lib.samp.events')
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8
local xz = 0
local mainIni = inicfg.load({ -- CFG
    config = {
        PassNew = ""
        }
}, "autologin")
local settings = imgui.ImBool(false)
local pass = imgui.ImBuffer(256)
local status = inicfg.load(mainIni, 'autologin.ini')
if not doesFileExist('moonloader/config/autologin.ini') then inicfg.save(mainIni, 'autologin.ini') end

function main()
    sampRegisterChatCommand('setpass', function() settings.v = not settings.v end)
    while true do wait(0)
        imgui.Process = settings.v
    end
end

function imgui.OnDrawFrame()
    if settings.v then
        local iScreenWidth, iScreenHeight = getScreenResolution()
        imgui.SetNextWindowPos(imgui.ImVec2(sW / 2, sH / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
        imgui.SetNextWindowSize(imgui.ImVec2(300, 300), imgui.Cond.FirstUseEver)
        imgui.Begin('AutoLogin ', settings, imgui.WindowFlags.NoCollapse + imgui.WindowFlags.NoScrollbar) -- imgui.WindowFlags.NoResize
            imgui.InputText(u8"Пароль от аккаунта", pass)
            if imgui.Button(u8'Новый пароль') and pass.v ~= '' and pass.v ~= nil then --теперь сохр пароль по нажатия кнопки
                mainIni.config.PassNew = pass.v
                inicfg.save(mainIni, 'autologin.ini')
                xz = 0
            end
        imgui.End()
    end
end

function sampev.onShowDialog(id, style, title, button1, button2, text)
    if title:find('Авторизация') and xz == 0 then
        sampSendDialogResponse(id, 1, -1, mainIni.config.PassNew) xz = 1
    elseif title:find('Авторизация') and xz ~= 0 then
        sampAddChatMessage('error №'..xz,-1) --здесь можешь написать перепроверь пароль
    end
end
типа такого?
 
  • Нравится
Реакции: AngelMAILS228

AngelMAILS228

Участник
Автор темы
79
7
Lua:
local inicfg = require 'inicfg'
local imgui = require "imgui"
local sW, sH = getScreenResolution()
local sampev = require('lib.samp.events')
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8
local xz = 0
local mainIni = inicfg.load({ -- CFG
    config = {
        PassNew = ""
        }
}, "autologin")
local settings = imgui.ImBool(false)
local pass = imgui.ImBuffer(256)
local status = inicfg.load(mainIni, 'autologin.ini')
if not doesFileExist('moonloader/config/autologin.ini') then inicfg.save(mainIni, 'autologin.ini') end

function main()
    sampRegisterChatCommand('setpass', function() settings.v = not settings.v end)
    while true do wait(0)
        imgui.Process = settings.v
    end
end

function imgui.OnDrawFrame()
    if settings.v then
        local iScreenWidth, iScreenHeight = getScreenResolution()
        imgui.SetNextWindowPos(imgui.ImVec2(sW / 2, sH / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
        imgui.SetNextWindowSize(imgui.ImVec2(300, 300), imgui.Cond.FirstUseEver)
        imgui.Begin('AutoLogin ', settings, imgui.WindowFlags.NoCollapse + imgui.WindowFlags.NoScrollbar) -- imgui.WindowFlags.NoResize
            imgui.InputText(u8"Пароль от аккаунта", pass)
            if imgui.Button(u8'Новый пароль') and pass.v ~= '' and pass.v ~= nil then --теперь сохр пароль по нажатия кнопки
                mainIni.config.PassNew = pass.v
                inicfg.save(mainIni, 'autologin.ini')
                xz = 0
            end
        imgui.End()
    end
end

function sampev.onShowDialog(id, style, title, button1, button2, text)
    if title:find('Авторизация') and xz == 0 then
        sampSendDialogResponse(id, 1, -1, mainIni.config.PassNew) xz = 1
    elseif title:find('Авторизация') and xz ~= 0 then
        sampAddChatMessage('error №'..xz,-1) --здесь можешь написать перепроверь пароль
    end
end
типа такого?
Да, типо такого, спасибо большое!