Скрипт перестал работать

DeagleC+

Известный
Автор темы
48
3
Версия MoonLoader
.026-beta
После добавления функции function sampev.onShowDialog скрипт перестал работать, помогите.

Код:
require "lib.moonloader"
local se = require "lib.samp.events"

function main()

    while true do
        
    wait(0)
    
    if isKeyJustPressed(0x06) then -- Продать
        sampSendChat('/sellprods')
    end

function sampev.onShowDialog(dialogId, style, title, button1, button2, text)
    if title:find('Договор поставки', 1, true) then
        sampCloseCurrentDialogWithButton(1)
    end
    
    end
end
 
Решение
Lua:
require "lib.moonloader"
local se = require "lib.samp.events"

function main()
    while true do
        wait(0)
        if isKeyJustPressed(0x06) then -- Продать
            sampSendChat('/sellprods')
        end
    end
end

function se.onShowDialog(dialogId, style, title, button1, button2, text)
    if title:find('Договор поставки', 1, true) then
        sampCloseCurrentDialogWithButton(1)
    end
end
title:find разве правильно написан?
А так проблема в табуляции и что ты подключил библиотеку и дал ей имя se, а использовал sampev.

PanSeek

t.me/dailypanseek
Всефорумный модератор
899
1,746
Lua:
require "lib.moonloader"
local se = require "lib.samp.events"

function main()
    while true do
        wait(0)
        if isKeyJustPressed(0x06) then -- Продать
            sampSendChat('/sellprods')
        end
    end
end

function se.onShowDialog(dialogId, style, title, button1, button2, text)
    if title:find('Договор поставки', 1, true) then
        sampCloseCurrentDialogWithButton(1)
    end
end
title:find разве правильно написан?
А так проблема в табуляции и что ты подключил библиотеку и дал ей имя se, а использовал sampev.
 
  • Нравится
Реакции: DeagleC+

DeagleC+

Известный
Автор темы
48
3
Lua:
require "lib.moonloader"
local se = require "lib.samp.events"

function main()
    while true do
        wait(0)
        if isKeyJustPressed(0x06) then -- Продать
            sampSendChat('/sellprods')
        end
    end
end

function se.onShowDialog(dialogId, style, title, button1, button2, text)
    if title:find('Договор поставки', 1, true) then
        sampCloseCurrentDialogWithButton(1)
    end
end
title:find разве правильно написан?
А так проблема в табуляции и что ты подключил библиотеку и дал ей имя se, а использовал sampev.
Бинд работает:
Lua:
require "lib.moonloader"
local sampev = require "lib.samp.events"

function main()
    while true do
        wait(0)
        if isKeyJustPressed(0x06) then -- Продать
            sampSendChat('/sellprods')
        end
    end
end

function sampev.onShowDialog(dialogId, style, title, button1, button2, text)
    if title:find('Договор поставки') then
        sampCloseCurrentDialogWithButton(1)
    end
    if text:find('Управляющий: Мы не закупаем товар.') then
        sampCloseCurrentDialogWithButton(0)
    end
end

Спасибо, а ты случайно не знаешь, как подправить код, чтобы скрипт закрывал окна по поиску текста? А то не работает. Одно с заголовком, другое только с текстом.

1624460849554.png
С заголовком


1624460887715.png
Без заголовка

Буду благодарен!
 

PanSeek

t.me/dailypanseek
Всефорумный модератор
899
1,746
Бинд работает:
Lua:
require "lib.moonloader"
local sampev = require "lib.samp.events"

function main()
    while true do
        wait(0)
        if isKeyJustPressed(0x06) then -- Продать
            sampSendChat('/sellprods')
        end
    end
end

function sampev.onShowDialog(dialogId, style, title, button1, button2, text)
    if title:find('Договор поставки') then
        sampCloseCurrentDialogWithButton(1)
    end
    if text:find('Управляющий: Мы не закупаем товар.') then
        sampCloseCurrentDialogWithButton(0)
    end
end

Спасибо, а ты случайно не знаешь, как подправить код, чтобы скрипт закрывал окна по поиску текста? А то не работает. Одно с заголовком, другое только с текстом.

Посмотреть вложение 102277 С заголовком


Посмотреть вложение 102279 Без заголовка

Буду благодарен!
Lua:
if title:find('Договор поставки') or text:find('Управляющий: Мы не закупаем товар%.') then
    return false
end
Не проверял.
 
  • Нравится
Реакции: DeagleC+

DeagleC+

Известный
Автор темы
48
3
Lua:
if title:find('Договор поставки') or text:find('Управляющий: Мы не закупаем товар%.') then
    return false
end
Не проверял.
Без выбора в диалоге (Где 1 кнопка) всё скрывается без проблем. С выбором "Да" (Мне нужно "Да") и "Нет" оно скрывается, но не выбирает ответ, из-за чего пишет, что у меня неиспользованные диалоги. Попробовал через функцию sampSendDialogResponse - всё равно не работает, мне всё-же желательно через поиск заголовка как-то это решить.

Lua:
function sampev.onShowDialog(dialogId, style, title, button1, button2, text)
        if title:find('Управляющий: Договор поставки') then
            sampSendDialogResponse(3370,0,0,' ')
            return false
        end
        if text:find('Управляющий: Мы не закупаем товар.') then
            return false
        end
end
 

PanSeek

t.me/dailypanseek
Всефорумный модератор
899
1,746
Без выбора в диалоге (Где 1 кнопка) всё скрывается без проблем. С выбором "Да" (Мне нужно "Да") и "Нет" оно скрывается, но не выбирает ответ, из-за чего пишет, что у меня неиспользованные диалоги. Попробовал через функцию sampSendDialogResponse - всё равно не работает, мне всё-же желательно через поиск заголовка как-то это решить.

Lua:
function sampev.onShowDialog(dialogId, style, title, button1, button2, text)
        if title:find('Управляющий: Договор поставки') then
            sampSendDialogResponse(3370,0,0,' ')
            return false
        end
        if text:find('Управляющий: Мы не закупаем товар.') then
            return false
        end
end
Lua:
if button1 then
    print('+')
end
 
  • Нравится
Реакции: James Saula