Диалог lua

Sadow

Известный
Автор темы
1,428
593
Как можно сделать определение диалога не по айди, а по типу?
 
Решение
А можно ли как-то сделать ещё так чтобы отправляло текст который введёт человек в это окно?
так делай тож самое, что и делал, только получая стиль диалога

Lua:
function sampev.onSendDialogResponse(dialogId, button, listboxId, input)
    local style = sampGetCurrentDialogType()
    if dialogId == 2 and style == 3 then
        sampAddChatMessage("Был открыт диалог с ID 2 и 3 стилем", -1)
        if dialogId == 211 and style == 3 then
            sampAddChatMessage("Был открыт диалог с ID 211 и 3 стилем", -1)
        end
    end
end

sat0ry

Известный
1,093
296
Lua:
sampShowDialog(int id, zstring caption, zstring text, zstring button1, zstring button2, int style)

1660825974451.png


1660826046821.png


Lua:
sampShowDialog(1337, 'Caption', 'Open\nClose\n', 'OK', 'XYI', 2)
 

Sadow

Известный
Автор темы
1,428
593
Lua:
sampShowDialog(int id, zstring caption, zstring text, zstring button1, zstring button2, int style)

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

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

Lua:
sampShowDialog(1337, 'Caption', 'Open\nClose\n', 'OK', 'XYI', 2)
А можно тут помимо айди диалога определять его стиль?
Lua:
function sampev.onSendDialogResponse(dialogId, button, listboxId, input)
    if dialogId == 2 then
        sampAddChatMessage("Был открыт диалог с ID 2 и 3 стилем", -1)
        if dialogId == 211 then
            sampAddChatMessage("Был открыт диалог с ID 211 и 3 стилем", -1)
        end
    end
end
 

TheUnity

Известный
113
40
А можно тут помимо айди диалога определять его стиль?
Lua:
function sampev.onSendDialogResponse(dialogId, button, listboxId, input)
    if dialogId == 2 then
        sampAddChatMessage("Был открыт диалог с ID 2 и 3 стилем", -1)
        if dialogId == 211 then
            sampAddChatMessage("Был открыт диалог с ID 211 и 3 стилем", -1)
        end
    end
end
тебе точно надо это делать в onSendDialogResponse, а не в onShowDialog
 

sat0ry

Известный
1,093
296
А можно тут помимо айди диалога определять его стиль?
Lua:
function sampev.onSendDialogResponse(dialogId, button, listboxId, input)
    if dialogId == 2 then
        sampAddChatMessage("Был открыт диалог с ID 2 и 3 стилем", -1)
        if dialogId == 211 then
            sampAddChatMessage("Был открыт диалог с ID 211 и 3 стилем", -1)
        end
    end
end
думаю не

хотя

@Sadow, открываешь диалог и пишешь /getdialog, в консоль sampfuncs выводится лог с информацией об окне
 

Вложения

  • dialogs.lua
    481 байт · Просмотры: 20
Последнее редактирование:
  • Нравится
  • Эм
Реакции: moreveal и Sadow

Sadow

Известный
Автор темы
1,428
593
думаю не

хотя

@Sadow, открываешь диалог и пишешь /getdialog, в консоль sampfuncs выводится лог с информацией об окне
А зачем мне информация об окне? Мне надо чтобы скрипт определял айди диалога и его стиль. И если он будет совпадать то он отправит эту информацию в чат
 
  • Bug
Реакции: sat0ry

sat0ry

Известный
1,093
296
А зачем мне информация об окне? Мне надо чтобы скрипт определял айди диалога и его стиль. И если он будет совпадать то он отправит эту информацию в чат
пиздец, там и есть стиль и айди диалога, лишнее ты можешь сам убрать

я вообще не понимаю нахуй тебе стиль знать, если отправлять синхру диалогу можно без стиля блять
 

Sadow

Известный
Автор темы
1,428
593
пиздец, там и есть стиль и айди диалога, лишнее ты можешь сам убрать

я вообще не понимаю нахуй тебе стиль знать, если отправлять синхру диалогу можно без стиля блять
Я стиль диалога и так знаю. Я же написал. Я хочу чтобы скрипт отправлял в чат информацию только в том случае если айди диалога равен 2, а стиль 3
 

sat0ry

Известный
1,093
296
Я стиль диалога и так знаю. Я же написал. Я хочу чтобы скрипт отправлял в чат информацию только в том случае если айди диалога равен 2, а стиль 3
Lua:
function main()
    while not isSampAvailable() do wait(0) end

    while true do
        wait(0)
        local dtp = sampGetCurrentDialogType()
        local did = sampGetCurrentDialogId()
        if sampIsDialogActive() and dtp == 3 and did == 2 then
            --code
        end
    end
end
 
Последнее редактирование:

Sadow

Известный
Автор темы
1,428
593
Lua:
function main()
    while not isSampAvailable() do wait(0) end

    while true do
        wait(0)
        local dtp = sampGetCurrentDialogType()
        local did = sampGetCurrentDialogId()
        if sampIsDialogActive() and dtp == 3 and did == 2 then
            --code
        end
    end
end
А можно ли как-то сделать ещё так чтобы отправляло текст который введёт человек в это окно?
 

sat0ry

Известный
1,093
296
А можно ли как-то сделать ещё так чтобы отправляло текст который введёт человек в это окно?
В теме был вопрос лишь за тип и айди диалога, ответ был дан. Создавай новую тему и задавай вопрос уже там
 

moreveal

Известный
Проверенный
928
621
А можно ли как-то сделать ещё так чтобы отправляло текст который введёт человек в это окно?
так делай тож самое, что и делал, только получая стиль диалога

Lua:
function sampev.onSendDialogResponse(dialogId, button, listboxId, input)
    local style = sampGetCurrentDialogType()
    if dialogId == 2 and style == 3 then
        sampAddChatMessage("Был открыт диалог с ID 2 и 3 стилем", -1)
        if dialogId == 211 and style == 3 then
            sampAddChatMessage("Был открыт диалог с ID 211 и 3 стилем", -1)
        end
    end
end
 
  • Нравится
Реакции: Sadow