Вопросы по AHK-скриптингу

dima232_pro11

Новичок
61
0
Напиши, в чём проблема?
Смотри этому рангу разрешено использовать команду /inv, но если он напишет просто /inv (без id) то эму должно написать
Код:
AddChatMessageEx("{FFFFFF}", "[{FF6347}AHK{FFFFFF}]: Введите команду /inv {FFFF00}[id].")
но если он напишет с id то все как обычно
 

#Rin

Известный
Всефорумный модератор
1,214
1,043
Смотри этому рангу разрешено использовать команду /inv, но если он напишет просто /inv (без id) то эму должно написать
Код:
AddChatMessageEx("{FFFFFF}", "[{FF6347}AHK{FFFFFF}]: Введите команду /inv {FFFF00}[id].")
но если он напишет с id то все как обычно
if (text == "")
msgbox где ид
 

dima232_pro11

Новичок
61
0
Если ты не понимаешь где это вставить - учи основы.
ну вот код

Код:
$~Enter::
if (isInChat() && !isDialogOpen())
{
    Sleep, 200
    chatText := readString(hGTA, dwSAMP + 0x12D8F8, 256)
    if (RegExMatch(chatText, "^\/inv (\d+)", out))
    {
        Random, var1, 1, 50
        if (rank != "Зам.Глав Врача" && rank != "Глав.Врач")
            AddChatMessageEx("{FFFFFF}", "[{FF6347}AHK{FFFFFF}]: Вам недоступна эта функция!")
        else
        {
        sendChat("/invite "out1)
        SendChat("/me легким движением руки достал ключик от свободного шкафчика из кармана пиджака.")
        sleep 1000
        SendChat("/do На ключике написан номер " var1 ".")
        sleep 1000
        SendChat("/time")
        sleep 500
        SendChat("/me Взглянул на часы с гравировкой «" grav "».")
        sleep 500
        SendChat("/do Время на часах | " ServerTime() ".")
        SendInput {F8}
        }
    }
}
return
куда это вставить
 

dima232_pro11

Новичок
61
0
Код:
$~Enter::
if (isInChat() && !isDialogOpen())
{
    Sleep, 200
    chatText := readString(hGTA, dwSAMP + 0x12D8F8, 256)
    if (RegExMatch(chatText, "^\/inv (\d+)", out))
    {
        Random, var1, 1, 50
        if (rank != "Зам.Глав Врача" && rank != "Глав.Врач")
            AddChatMessageEx("{FFFFFF}", "[{FF6347}AHK{FFFFFF}]: Вам недоступна эта функция!")
        else
        {
        sendChat("/invite "out1)
        SendChat("/me легким движением руки достал ключик от свободного шкафчика из кармана пиджака.")
        sleep 1000
        SendChat("/do На ключике написан номер " var1 ".")
        sleep 1000
        SendChat("/time")
        sleep 500
        SendChat("/me Взглянул на часы с гравировкой «" grav "».")
        sleep 500
        SendChat("/do Время на часах | " ServerTime() ".")
        SendInput {F8}
        }
    }
    if (isInChat() && !isDialogOpen())
    {
        Sleep, 200
        chatText := readString(hGTA, dwSAMP + 0x12D8F8, 256)
        if (RegExMatch(chatText, "^\/hp (\d+)", out))
        {
            if (rank != "Зам.Глав Врача" && rank != "Глав.Врач")
                AddChatMessageEx("{FFFFFF}", "[{FF6347}AHK{FFFFFF}]: Вам недоступна эта функция!")
            else
            {
            SendChat("Здравствуйте. Я сотрудник данного медицинского центра, что вас беспокоит?")
            AddChatMessageEx("{F5F5DC}", "[{FF6347}Информация{F5F5DC}]: Для продолжения нажмите {FBFA28}PageDown{F5F5DC}.")
            AddChatMessageEx("{F5F5DC}", "[{FF6347}Информация{F5F5DC}]: Для завершения нажмите {FBFA28}end{F5F5DC}.")
            Loop{
                Input , OutputVar, L1 V, {PGDN}{NumpadEnd}
                if (ErrorLevel = "EndKey:PGDN") or (ErrorLevel = "EndKey:NumpadEnd")
                break
            }
            if ErrorLevel = EndKey:PGDN
            {
                goto, hp2
            }
            if ErrorLevel = EndKey:NumpadEnd
            {
                goto, PRend1
            }
            return
Почему не работает команда /hp
 

dima232_pro11

Новичок
61
0
Потому что у тебя код говно. Судя по твоему коду тебе нужно сначала ввести inv а потом только hp
тебе нужно только это
Код:
$~Enter::
if (isInChat() && !isDialogOpen())
{
    Sleep, 200
    chatText := readString(hGTA, dwSAMP + 0x12D8F8, 256)
    if (RegExMatch(chatText, "^\/inv (\d+)", out))
    {
        Random, var1, 1, 50
        if (rank != "Зам.Глав Врача" && rank != "Глав.Врач")
            AddChatMessageEx("{FFFFFF}", "[{FF6347}AHK{FFFFFF}]: Вам недоступна эта функция!")
        else
        {
        sendChat("/invite "out1)
        SendChat("/me легким движением руки достал ключик от свободного шкафчика из кармана пиджака.")
        sleep 1000
        SendChat("/do На ключике написан номер " var1 ".")
        sleep 1000
        SendChat("/time")
        sleep 500
        SendChat("/me Взглянул на часы с гравировкой «" grav "».")
        sleep 500
        SendChat("/do Время на часах | " ServerTime() ".")
        SendInput {F8}
        }
    }
    if (isInChat() && !isDialogOpen())
    {
        Sleep, 200
        chatText := readString(hGTA, dwSAMP + 0x12D8F8, 256)
        if (RegExMatch(chatText, "^\/hp (\d+)", out))
        {
            if (rank != "Зам.Глав Врача" && rank != "Глав.Врач")
                AddChatMessageEx("{FFFFFF}", "[{FF6347}AHK{FFFFFF}]: Вам недоступна эта функция!")
            else
            {
            SendChat("Здравствуйте. Я сотрудник данного медицинского центра, что вас беспокоит?")
            AddChatMessageEx("{F5F5DC}", "[{FF6347}Информация{F5F5DC}]: Для продолжения нажмите {FBFA28}PageDown{F5F5DC}.")
            AddChatMessageEx("{F5F5DC}", "[{FF6347}Информация{F5F5DC}]: Для завершения нажмите {FBFA28}end{F5F5DC}.")

почему не работает /hp но работает /inv
 

dima232_pro11

Новичок
61
0
Посмотри что я написал, и какую хуйню сделал ты.
Тебе нужно 1 раз получить команду которую ты ввел, и уже сколько хочешь раз проверять с нужной тебе
Вот это ты написал и оно работает
Код:
$~Enter::
if (isInChat() && !isDialogOpen())
{
    Sleep, 200
    chatText := readString(hGTA, dwSAMP + 0x12D8F8, 256)
    if (RegExMatch(chatText, "^\/inv (\d+)", out))
    {
        Random, var1, 1, 50
        if (rank != "Интерн" && rank != "Участковый Врач" && rank != "Терапевт" && rank != "Нарколо" && rank != "Окулист" && rank != "Хирург" && rank != "Психолог" && rank != "Зав.Отделением")
            AddChatMessageEx("{FFFFFF}", "[{FF6347}AHK{FFFFFF}]: Вам недоступна эта функция!")
        else
    {
        AddChatMessageEx("{FFFFFF}", "[{FF6347}AHK{FFFFFF}]: Вам доступна эта функция!")
        sendChat("/invite "out1)
        SendChat("/me легким движением руки достал ключик от свободного шкафчика из кармана пиджака.")
        sleep 1000
        SendChat("/do На ключике написан номер " var1 ".")
        sleep 1000
        SendChat("/time")
        sleep 500
        SendChat("/me Взглянул на часы с гравировкой «" grav "».")
        sleep 500
        SendChat("/do Время на часах | " ServerTime() ".")
        SendInput {F8}
    }
    }
}
return
я там убрал
Код:
AddChatMessageEx("{FFFFFF}", "[{FF6347}AHK{FFFFFF}]: Вам доступна эта функция!")
и изменил
Код:
  if (rank != "Интерн" && rank != "Участковый Врач" && rank != "Терапевт" && rank != "Нарколо" && rank != "Окулист" && rank != "Хирург" && rank != "Психолог"

мне нужно просто добавить команду /hp
из всема этими проверками
 

dima232_pro11

Новичок
61
0
Все я узнал причину
не нужно было еще раз уводить
if (isInChat() && !isDialogOpen())
но за то пишет Неизвестная команда! Введите /help для просмотра доступных функций.