Автологин (нужна помощь)

NHacker1271

Известный
Автор темы
156
16
Версия MoonLoader
.026-beta
Решил сделать автоматический вход, всё работает, но есть проблема, когда сажусь в автобус, диалог не высвечивается, то же самое и с предложением лечения в больнице, какую ошибку в коде я допустил?

Lua:
script_name("Fast Login")

require "lib.moonloader"
local sampev = require "lib.samp.events"

function main()
    while true do wait(0) end
end

function sampev.onShowDialog(dialogId, style, title, button1, button2, text)
    local _, id = sampGetPlayerIdByCharHandle(PLAYER_PED)
    local score = sampGetPlayerScore(id)
    if (dialogId == 2 and style == 1 and score == 0) then
        sampSendDialogResponse(2, 1, -1, "Пароль")
        return false
    end
end
 

NHacker1271

Известный
Автор темы
156
16
Проверяй на название диалога, а не на ид.
Даже сделав так, у меня скрывает диалог. При вводе: /mn. при попытке сесть в автобус и т.д.
Lua:
script_name("Fast Login")

require "lib.moonloader"
local sampev = require "lib.samp.events"

function main()
    while true do wait(0) end
end

function sampev.onShowDialog(dialogId, style, title, button1, button2, text)
    local _, id = sampGetPlayerIdByCharHandle(PLAYER_PED)
    local score = sampGetPlayerScore(id)
    if (title == "Вход" and score == 0) then
        sampSendDialogResponse(2, 1, -1, "Пароль")
        return false
    end
end
 

Tema05

Известный
1,401
376
Даже сделав так, у меня скрывает диалог. При вводе: /mn. при попытке сесть в автобус и т.д.
Lua:
script_name("Fast Login")

require "lib.moonloader"
local sampev = require "lib.samp.events"

function main()
    while true do wait(0) end
end

function sampev.onShowDialog(dialogId, style, title, button1, button2, text)
    local _, id = sampGetPlayerIdByCharHandle(PLAYER_PED)
    local score = sampGetPlayerScore(id)
    if (title == "Вход" and score == 0) then
        sampSendDialogResponse(2, 1, -1, "Пароль")
        return false
    end
end
Выведи через print переменную title в консоль и оттуда уже бери вместе с цветовыми кодами.
Например у аризоны title "{BFBBBA}Авторизация" но чтоб увидеть цветовой тег нужно вывести его в консоль.
Так-же может быть и с табуляцией. Если юзаешь Notepad++ нажми на значок параграфа и стрелочки это как раз и есть табуляция. Что-бы её проверять нужно заменить на \t
Я чекаю по id и title, но иногда приходится использовать text по мне это самый надёжный вариант.

Возможно у тебя title не "Вход", а "{FFFFFF}Вход"
 

h.rogge

Участник
22
3
Lua:
local sp = require 'lib.samp.events' -- Подключаешь библиотеку

local parol = 'parol' -- Сюда твой пароль

function sp.onShowDialog(id, style, title, button1, button2, text) -- Сама функция
    if id == 1 and #tostring(parol) >= 6 then
        sampSendDialogResponse(id, 1, _, tostring(parol))
        return false
    end
end