Ввод текста при появлении определенного диалога

NOWLEX

Участник
Автор темы
41
3
Версия MoonLoader
.026-beta
Подскажите пожалуйста как сделать, что бы при появлении определенного диалога автоматически вписывалась и отправлялась определенная надпись.
Заранее огромное спасибо)
 

chapo

чопа сребдс // @moujeek
Модератор
8,932
11,697
Подскажите пожалуйста как сделать, что бы при появлении определенного диалога автоматически вписывалась и отправлялась определенная надпись.
Заранее огромное спасибо)
Lua:
local sampev = require 'lib.samp.events'

local dialog_id = 1 --айди диалога
local send_text = 'mq' --текст который будет отправлен в качестве ответа на диалог

function sampev.onShowDialog(id, style, title, button1, button2, text)
    if id == dialog_id then
        sampSendDialogResponse(dialog_id, 1 , nil, send_text)
        return false
    end
end
 
  • Нравится
Реакции: NOWLEX

NOWLEX

Участник
Автор темы
41
3
Lua:
local sampev = require 'lib.samp.events'

local dialog_id = 1 --айди диалога
local send_text = 'mq' --текст который будет отправлен в качестве ответа на диалог

function sampev.onShowDialog(id, style, title, button1, button2, text)
    if id == dialog_id then
        sampSendDialogResponse(dialog_id, 1 , nil, send_text)
        return false
    end
end
Спасибо огромное)
 

NOWLEX

Участник
Автор темы
41
3
Lua:
local sampev = require 'lib.samp.events'

local dialog_id = 1 --айди диалога
local send_text = 'mq' --текст который будет отправлен в качестве ответа на диалог

function sampev.onShowDialog(id, style, title, button1, button2, text)
    if id == dialog_id then
        sampSendDialogResponse(dialog_id, 1 , nil, send_text)
        return false
    end
end
А не знаешь как сделать, что бы при заходе на сервер автоматом открывался определенный диалог?
 

chapo

чопа сребдс // @moujeek
Модератор
8,932
11,697
А не знаешь как сделать, что бы при заходе на сервер автоматом открывался определенный диалог?
Если диалог открывается по команде то можно через sampSendChat
 
  • Нравится
Реакции: NOWLEX

NOWLEX

Участник
Автор темы
41
3
Если диалог открывается по команде то можно через sampSendChat
Как открыть диалог сам я уже понял, а вот как сделать, что бы он автоматом открывался после захода на сервер?
 

chapo

чопа сребдс // @moujeek
Модератор
8,932
11,697
Как открыть диалог сам я уже понял, а вот как сделать, что бы он автоматом открывался после захода на сервер?
скажи команду после ввода которой открывается диалог
 

chapo

чопа сребдс // @moujeek
Модератор
8,932
11,697
вроде так

Lua:
local sampev = require 'lib.samp.events'

local dialog_id = 1 --айди диалога
local send_text = 'mq' --текст который будет отправлен в качестве ответа на диалог

local menu_dialog_id = 2 --id диалога /mn

local menu_dialog = false

function main()
    while not isSampAvailable() do wait(0) end
    while true do
        wait(0)
        if sampIsLocalPlayerSpawned() then
            sampSendChat('/mn')
            menu_dialog = true
        end
    end
end

function sampev.onShowDialog(id, style, title, button1, button2, text)
    if id == dialog_id then
        sampSendDialogResponse(dialog_id, 1 , nil, send_text)
        return false
    elseif id == menu_dialog_id and menu_dialog then
        sampSendDialogResponse(menu_dialog_id, 1 , 7, nil)
        menu_dialog = false
        return false
    end
end
 
  • Нравится
Реакции: NOWLEX

NOWLEX

Участник
Автор темы
41
3
вроде так

Lua:
local sampev = require 'lib.samp.events'

local dialog_id = 1 --айди диалога
local send_text = 'mq' --текст который будет отправлен в качестве ответа на диалог

local menu_dialog_id = 2 --id диалога /mn

local menu_dialog = false

function main()
    while not isSampAvailable() do wait(0) end
    while true do
        wait(0)
        if sampIsLocalPlayerSpawned() then
            sampSendChat('/mn')
            menu_dialog = true
        end
    end
end

function sampev.onShowDialog(id, style, title, button1, button2, text)
    if id == dialog_id then
        sampSendDialogResponse(dialog_id, 1 , nil, send_text)
        return false
    elseif id == menu_dialog_id and menu_dialog then
        sampSendDialogResponse(menu_dialog_id, 1 , 7, nil)
        menu_dialog = false
        return false
    end
end
А на какой строчке открывается именно 8 пункт?
 

NOWLEX

Участник
Автор темы
41
3
ахаха, да ладно бывает, кстати там вот такая штучка вылазиет, не знаешь как фиксануть можно, задержку какую нибудь поставить или чонить такое
1612032296190.png
 

chapo

чопа сребдс // @moujeek
Модератор
8,932
11,697
так что, не знаешь?
не, только если впихнуть задержку
Lua:
local sampev = require 'lib.samp.events'

local dialog_id = 1 --айди диалога
local send_text = 'mq' --текст который будет отправлен в качестве ответа на диалог

local menu_dialog_id = 2 --id диалога /mn

local menu_dialog = false

function main()
    while not isSampAvailable() do wait(0) end
    while true do
        wait(0)
        if sampIsLocalPlayerSpawned() then
            sampSendChat('/mn')
            menu_dialog = true
        end
    end
end

function sampev.onShowDialog(id, style, title, button1, button2, text)
    if id == dialog_id then
        sampSendDialogResponse(dialog_id, 1 , nil, send_text)
        return false
    elseif id == menu_dialog_id and menu_dialog then
        lua_thread.create(function()
            wait(1500)
            sampSendDialogResponse(menu_dialog_id, 1 , 7, nil)
            menu_dialog = false
            return false
        end)
    end
end