работа с диалогами луа

apa4e

Известный
Автор темы
3
0
Привет, хочу написать скрипт, который по вводу команды /fammenu будет автоматически кликать на текстдрав "Family Apartaments", выбирать в диалоговом окне "5. Положить деньги на склад семьи" и вводиться сума заданая в скрипте.


NeUv18h.png
 
  • Bug
Реакции: MLycoris

qdIbp

Автор темы
Проверенный
1,450
1,190
примерно так
Lua:
local on = require('lib.samp.events') -- подкл.библиотеку

function on.onShowDialog( did, style, title, b1, b2, text )
    print(did) -- узнаешь id диалога
    if did == 12312 or string.match(text, 'Положить деньги на склад семьи') then -- свой id для диалога в котором тебе нужно положить деньги на склад семьи
        sampSendDialogResponse(did, 1, 4, nil) -- https://wiki.blast.hk/moonloader/lua/sampsenddialogresponse
        return false-- помогает не отображает диалог
    elseif did == 321231 or string.match(text, 'Об вашем пополнении узнает вся семья') then -- свой id для пополнения
        sampSendDialogResponse(did, 1, nil, 151515--[[Сумма]]) -- https://wiki.blast.hk/moonloader/lua/sampsenddialogresponse
        return false -- помогает не отображает диалог
    end
end

function on.onSendClickTextDraw(txid)
    print(txid) -- узнать id твоего кликабельного textdraw p.s надо кликнуть на нужный текстдрав
end

function on.onShowTextDraw(txid, data)
    if txid == 2073 then -- id textdraw на который надо кликнуть
        sampSendClickTextdraw(2073) -- кликает на текстдрав с id 2073
    end
end
 
Последнее редактирование:

apa4e

Известный
Автор темы
3
0
примерно так
Lua:
local on = require('lib.samp.events')

function on.onShowDialog( did, style, title, b1, b2, text )
    print(did) -- узнаешь id диалога
    if did == 12312 or string.match(text, 'Положить деньги на склад семьи') then -- свой id для диалога в котором тебе нужно положить деньги на склад семьи
        sampSendDialogResponse(did, 1, 4, nil)
        return false
    elseif did == 321231 or string.match(text, 'Об вашем пополнении узнает вся семья') then -- свой id для пополнения
        sampSendDialogResponse(did, 1, nil, 151515--[[Сумма]])
        return false
    end
end

function on.onSendClickTextDraw(txid)
    print(txid) -- узнать id твоего кликабельного textdraw
end

function on.onShowTextDraw(txid, data)
    if txid == 2073 then -- id textdraw на который надо кликнуть
        sampSendClickTextdraw(2073)
    end
end
Да, все круто. Спасибо. Но мне нужно что бы вводило определенную сумму и нажимало ентер
И как зациклить это все? От ввода команды - до подтвержедния взноса суммы на кнопку "принять"
 
  • Клоун
Реакции: qdIbp и MLycoris

qdIbp

Автор темы
Проверенный
1,450
1,190
Да, все круто. Спасибо. Но мне нужно что бы вводило определенную сумму и нажимало ентер
И как зациклить это все? От ввода команды - до подтвержедния взноса суммы на кнопку "принять"
Я так понимаю тебя не учили читать, хотя бы потому что я оставлял комментарии к коду(сейчас расписал чуть больше), это первое, второе тут с появлением определенного id textdraw он автоматически начинает работать, хотя бы сам немного в коде разберись
 

kyrtion

Известный
1,147
415
Да, все круто. Спасибо. Но мне нужно что бы вводило определенную сумму и нажимало ентер
И как зациклить это все? От ввода команды - до подтвержедния взноса суммы на кнопку "принять"
Тебе следует понять основы программирования и Lua, дальше можешь что хочешь написать скрипты без помощи
 
  • Нравится
Реакции: qdIbp

apa4e

Известный
Автор темы
3
0
Я так понимаю тебя не учили читать, хотя бы потому что я оставлял комментарии к коду(сейчас расписал чуть больше), это первое, второе тут с появлением определенного id textdraw он автоматически начинает работать, хотя бы сам немного в коде разберись
та не ко мне уже потом доперло, я у же разобрался и дописал что нужно =)
спасибо больше