Автоматическое забирание репорта. SAMP.

Lolik223

Новичок
Автор темы
2
1
Здравствуйте! Я хотел бы сделать скрипт, который при надписе "[Жалоба] от" будет писать в чат команду /ot, и так что бы при двух жалоб одновременно скрипт не переходил на вторую жалобу. У меня получилось что-то такое, но скрипт не читает строчку с чатлога, где администратор ответил, что бы после вернуться в начало, он делает и так всё сначала, то есть поступает жалоба от одного игрока, скрипт вводит /ot, в это время поступает 2-я жалоба, скрипт опять вводит /ot, а я хочу что бы он не отвлекался на 2-ю жалобу. Помогите пожалуйста :(


  • #SingleInstance force
    #IfWinActive GTA:SA:MP
    SelectedFile = %A_MyDocuments%\GTA San Andreas User Files\SAMP\chatlog.txt
    filedelete, %SelectedFile%
    fileappend, %SelectedFile%


    lol1:
    Loop, Read, %SelectedFile%
    {
    IfInString, A_LoopReadLine, [Жалоба] от
    {
    Goto, lol2
    }
    }
    goto, lol1

    lol2:
    sleep, 1
    SendInput, {F6}/ot{Enter}
    {
    Goto, lol3
    }
    lol3:
    Loop, Read, %SelectedFile%
    {
    IfInString, A_LoopReadLine, Администратор Ghost_Carleone[(.*)] ответил игроку
    {
    Goto, lol4
    }
    }
    lol4:
    sleep, 1
    reload
    return
 

корбус

Известный
434
108
Здравствуйте! Я хотел бы сделать скрипт, который при надписе "[Жалоба] от" будет писать в чат команду /ot, и так что бы при двух жалоб одновременно скрипт не переходил на вторую жалобу. У меня получилось что-то такое, но скрипт не читает строчку с чатлога, где администратор ответил, что бы после вернуться в начало, он делает и так всё сначала, то есть поступает жалоба от одного игрока, скрипт вводит /ot, в это время поступает 2-я жалоба, скрипт опять вводит /ot, а я хочу что бы он не отвлекался на 2-ю жалобу. Помогите пожалуйста :(


  • #SingleInstance force
    #IfWinActive GTA:SA:MP
    SelectedFile = %A_MyDocuments%\GTA San Andreas User Files\SAMP\chatlog.txt
    filedelete, %SelectedFile%
    fileappend, %SelectedFile%


    lol1:
    Loop, Read, %SelectedFile%
    {
    IfInString, A_LoopReadLine, [Жалоба] от
    {
    Goto, lol2
    }
    }
    goto, lol1

    lol2:
    sleep, 1
    SendInput, {F6}/ot{Enter}
    {
    Goto, lol3
    }
    lol3:
    Loop, Read, %SelectedFile%
    {
    IfInString, A_LoopReadLine, Администратор Ghost_Carleone[(.*)] ответил игроку
    {
    Goto, lol4
    }
    }
    lol4:
    sleep, 1
    reload
    return
тебе на ахк нужно или можно луа?
если можно на луа то могу написать
на держи, активация автоматическая, нужен самп ивентс
 

Вложения

  • 123.lua
    362 байт · Просмотры: 82
Последнее редактирование:

darksoor

Известный
674
353
Здравствуйте! Я хотел бы сделать скрипт, который при надписе "[Жалоба] от" будет писать в чат команду /ot, и так что бы при двух жалоб одновременно скрипт не переходил на вторую жалобу. У меня получилось что-то такое, но скрипт не читает строчку с чатлога, где администратор ответил, что бы после вернуться в начало, он делает и так всё сначала, то есть поступает жалоба от одного игрока, скрипт вводит /ot, в это время поступает 2-я жалоба, скрипт опять вводит /ot, а я хочу что бы он не отвлекался на 2-ю жалобу. Помогите пожалуйста :(


  • #SingleInstance force
    #IfWinActive GTA:SA:MP
    SelectedFile = %A_MyDocuments%\GTA San Andreas User Files\SAMP\chatlog.txt
    filedelete, %SelectedFile%
    fileappend, %SelectedFile%


    lol1:
    Loop, Read, %SelectedFile%
    {
    IfInString, A_LoopReadLine, [Жалоба] от
    {
    Goto, lol2
    }
    }
    goto, lol1

    lol2:
    sleep, 1
    SendInput, {F6}/ot{Enter}
    {
    Goto, lol3
    }
    lol3:
    Loop, Read, %SelectedFile%
    {
    IfInString, A_LoopReadLine, Администратор Ghost_Carleone[(.*)] ответил игроку
    {
    Goto, lol4
    }
    }
    lol4:
    sleep, 1
    reload
    return
Начнём с того, что IfInString - это поиск в строке (не является регулярным выражением). Следовательно, твоё написанное [(.*)] данная функция никак не прочтёт.
AutoHotKey:
if (RegExMatch(A_LoopReadLine, "Администратор Ghost_Carleone\[(\d{1,3})\] ответил игроку", match))
 
Последнее редактирование: