1 (изменено: AngelKayne, 2017-09-10 14:38:00)

Тема: [SA:MP] Как делать кликабельный диалог?

Вопрос всем вам, подскажите пожалуйста как делается кликабельный диалог, к примеру диалог с командами -

+ открыть спойлер

:?:/hhelp::
{
addChatMessage("{FF4500}Спасибо большое что пользуетесь моим AHK (c) Angel Kayne <З")
Sleep 200
ShowDialog("2", "{FF1493}Автор - Angel Kayne", "{FF4500}Что бы вылечить человека пропишите - /лечение`n{FF4500}Что бы сделать операцию пропишите - /операция`n{FF4500}Что бы выдать мед.карту пропишите - /медкарта`n{FF4500}Что бы сделать укол пропишите - /укол`n{FF4500}Что бы сделать вакцинацию пропишите - /вакцина`n{FF4500}Что бы сменить пол пропишите - /сменапола`n{FF4500}Что бы выдать выговор пропишите - /fwarn`n{FF4500}Что бы уволить человека пропишите - /uninvite`n{FF4500}Что бы повысить человека пропишите - /rang`n{FF4500}Что бы поменять скин человеку - пропишите /setskin`n{FF4500}Что бы прочитать лекцию напишите - /лекция1`n{FF4500}Что бы прочитать лекцию напишите - /лекция2`n{FF0000}Так же, когда вы пишите в общую рацию /f - тэг ставится автоматом`n{ff0000}Нон рп общая рация - /fn, автоматом ставит скобки`n{FF0000}/rn - Нон рп чат рации больницы`n{ff0000}Нажмите F5 - это /time с фокусом ", "Закрыть")
}
Return

И мне допустим нужно что бы при нажатии команда активировалась. Каким образом это сделать?

2

Re: [SA:MP] Как делать кликабельный диалог?

Создавать бинд на левую кнопку мыши и ентер, либо писать функцию, которая в цикле будет все отслеживать. Как вариант, старый и костыльный, но работающий, могу предложить использовать 1 id диалога, там где строка и решать все посредством ввода в строчку данных. А отслеживать либо через input, либо читая память (не помню адрес памяти, но такой же он как и у чата). Вот пример:

showdialog("1", "заголовок", "[1] - действие 1`n[2] - действие 2`n[3] - действие 3", "Ok")
input, text, V, {Enter}
Keywait, Enter, D
sleep 300

if (text = 1) {
msbox, действие 1
} else if (text = 2) {
msgbox, действие 2
} else if (text = 3) {
msbbox, действие 3
} else {
msgbox, text != 1-3 
}
return
Когда вы говорите что не можете сделать, вам всего-лишь не хватает фантазии придумать какой-нибудь костыль.

3

Re: [SA:MP] Как делать кликабельный диалог?

belyankin12 пишет:

Создавать бинд на левую кнопку мыши и ентер, либо писать функцию, которая в цикле будет все отслеживать. Как вариант, старый и костыльный, но работающий, могу предложить использовать 1 id диалога, там где строка и решать все посредством ввода в строчку данных. А отслеживать либо через input, либо читая память (не помню адрес памяти, но такой же он как и у чата). Вот пример:

showdialog("1", "заголовок", "[1] - действие 1`n[2] - действие 2`n[3] - действие 3", "Ok")
input, text, V, {Enter}
Keywait, Enter, D
sleep 300

if (text = 1) {
msbox, действие 1
} else if (text = 2) {
msgbox, действие 2
} else if (text = 3) {
msbbox, действие 3
} else {
msgbox, text != 1-3 
}
return

Если честно, я вообще в АХК не понимаю. Можно ваш ВК?
Я поспрашиваю у вас если вы не против.

4

Re: [SA:MP] Как делать кликабельный диалог?

ВК для меня неудобный вид связи, скайп подойдет? Belyankin120 с пометкой AHK добавляйтесь.

Когда вы говорите что не можете сделать, вам всего-лишь не хватает фантазии придумать какой-нибудь костыль.