urrya
Новичок
- Сообщения
- 159
- Репутация
- 1
Всем доброго времени суток уважаемые форумчане.
Промучился 2 дня, но так и не смог сам придумать ... .
Вот решил всё же попросить помощи здесь на форуме, тут как всегда добрые, знающие люди помогут наверняка
В общем проблема такая, есть несколько окон клиента игры, при разрыве связи с сервером включается механизм проверки связи с сервером и новый заход в игру всеми аккаунтами.
Но, тут возникает следующая проблема, если в момент когда ещё не все аккаунты залогинились, и снова происходит обрыв связи с сервером, тогда это сказывается на том, что после очередного раза убийства всех процессов окон клиента игры и всё таки залогинясь в конце-концов, происходит на запланированный, самопроизвольный перезаход в игру.
Вот эту проблемку я и не могу решить
пример кода:
вот если при выполнении функций
или
снова обрыв связи с сервером, тогда
или
и в функциях входа в игру идёт заново вызов функции
тогда и возникает проблема незапланированного, повторного входа :(
Подскажите пожалуйста в чём моя ошибка? Как сделать что бы при вызове " restar() " все остальное "убивалось" ?
Или как то по другому, в общем что бы работал скрипт .
Заранее всем спасибо! ;)
Добавлено:
Тему не помечаю решённой, но для себя решил - просто переписал код совсем иначе ;)
Промучился 2 дня, но так и не смог сам придумать ... .
Вот решил всё же попросить помощи здесь на форуме, тут как всегда добрые, знающие люди помогут наверняка
В общем проблема такая, есть несколько окон клиента игры, при разрыве связи с сервером включается механизм проверки связи с сервером и новый заход в игру всеми аккаунтами.
Но, тут возникает следующая проблема, если в момент когда ещё не все аккаунты залогинились, и снова происходит обрыв связи с сервером, тогда это сказывается на том, что после очередного раза убийства всех процессов окон клиента игры и всё таки залогинясь в конце-концов, происходит на запланированный, самопроизвольный перезаход в игру.
Вот эту проблемку я и не могу решить
пример кода:
Код:
Global $fghs2 = 0, $fghs3 = 0, $paroli = '123', $paroli2 = '123', $paroli3 = '123', $Akkaynt1 = '123', $Akkaynt2 = '123', $Akkaynt3 = '123'
Func restar()
Local $vvar = 0, $coob = 0
Sleep(300)
_STOPscript() ; приостановка скрипта ( цикл крутится в пустую до какой то команды )
Sleep(600)
_STOPscript() ; приостановка скрипта ( цикл крутится в пустую до какой то команды )
Sleep(600)
_STOPscript() ; приостановка скрипта ( цикл крутится в пустую до какой то команды )
Sleep(600)
pisec() ; функция убийства всех процессов клиента игры ( закрытие всех окон )
Do
Sleep(300)
MsgBox(0,'','new attempt to connect to the server', 3)
$vvar = Ping('google.com', 11999)
Select
Case Not @error
$coob = 1
Case @error
$coob = 0
Sleep(3999)
MsgBox(0,'','No connection to the server', 3)
EndSelect
Until $coob = 1
If $coob = 1 Then
pisec() ; повторно вызов функции для страховки, вдруг какое то окно игры не закрылось
Sleep(1000)
vxod1() ; запуск входа в игру
Else
Sleep(30)
EndIf
EndFunc
Func v_2_vxod1() ; вход в игру
Local $okny
Local $s = Sleep(500)
Local $filee1 = ""
If $Akkaynt1 == "" Then
Sleep(10)
Else
Run("exe.exe") ;Запуск игры
Sleep(5000)
_2_poisk2() ; функция поиска пикселей окна игры и выполнения определённых действий
If $fghs2 = 1 Then
restar()
Else
$okny = WinWait('Game', '')
WinActivate($okny)
WinMove("Game", '', 0, 0, 1280, 768)
Sleep($s)
WinActivate('Game', "")
Send('{BS 22}')
Sleep($s)
WinActivate('Game', "")
Send($Akkaynt1)
Sleep($s)
WinActivate('Game', "")
Send('{Tab}')
Sleep($s)
WinActivate('Game', "")
Send($paroli)
Send('{Tab}')
WinActivate('Game', "")
Send('{Enter}')
WinMove("Game", '', 0, 0, 1280, 768)
_2_poisk33()
If $fghs3 = 1 Then
restar()
Else
Sleep(10)
EndIf
EndIf
EndIf
v_2_vxod2()
EndFunc
Func v_2_vxod2() ; вход в игру
Local $okny
Local $s = Sleep(500)
Local $filee2 = ""
If $Akkaynt2 == "" Then
Sleep(10)
Else
Run("exe.exe") ;Запуск игры
Sleep(5000)
_2_poisk2()
If $fghs2 = 1 Then
restar()
Else
$okny = WinWait('Game', '') ; ожидает появления указанного окна
WinActivate($okny) ; активирует(передаёт фокус) окно
WinMove("Game", '', 0, 0, 1280, 768)
Sleep($s)
WinActivate('Game', "")
Send('{BS 22}')
Sleep($s)
WinActivate('Game', "")
Send($Akkaynt2) ;ввод с клавиатуры
Sleep($s)
WinActivate('Game', "")
Send('{Tab}')
Sleep($s)
WinActivate('Game', "")
Send($paroli2) ;ввод с клавы
Send('{Tab}')
WinActivate('Game', "")
Send('{Enter}')
WinMove("Game", '', 0, 0, 1280, 768)
_2_poisk33()
If $fghs3 = 1 Then
restar()
Else
Sleep(10)
EndIf
EndIf
EndIf
_2_vxod3()
EndFunc
Func _2_vxod3() ; вход в игру
Local $okny
Local $s = Sleep(500)
Local $filee3 = ''
If $Akkaynt3 == "" Then
Sleep(10)
Else
Run("exe.exe") ;Запуск игры
Sleep(5000)
_2_poisk2()
If $fghs2 = 1 Then
restar()
Else
$okny = WinWait('Game', '') ; ожидает появления указанного окна
WinActivate($okny) ; активирует(передаёт фокус) окно
WinMove("Game", '', 0, 0, 1280, 768)
Sleep($s)
WinActivate('Game', "")
Send('{BS 22}')
Sleep($s)
WinActivate('Game', "")
Send($Akkaynt3) ;ввод с клавиатуры
Sleep($s)
WinActivate('Game', "")
Send('{Tab}')
Sleep($s)
WinActivate('Game', "")
Send($paroli3) ;ввод с клавы
Send('{Tab}')
WinActivate('Game', "")
Send('{Enter}')
WinMove("Game", '', 0, 0, 1280, 768)
_2_poisk33()
If $fghs3 = 1 Then
restar()
Else
Sleep(10)
EndIf
EndIf
EndIf
_2_vxod4()
EndFunc
Func _2_poisk2()
Local $faaaghs2 = 0
WinActivate('Game', "")
Sleep(500)
WinMove("Game", '', 0, 0, 1280, 768)
Sleep(500)
Do
PixelSearch( 600, 728, 600, 728, 0x212121, 3 ) ;поиск пикселя по координатам
If Not @error Then ;если условие тогда
$fghs2 = 12
MouseClick('left', 600, 728, 1, 2)
Send('+{Tab}') ;нажатие клавы
Else
MouseClick('left', Random(660, 665, 1), Random(239, 252, 1), 1, 3)
Sleep(500)
WinMove("Game", '', 0, 0, 1280, 768)
Sleep(4500)
$faaaghs2 += 1
$fghs2 += 1
EndIf
Until $fghs2 = 12
$fghs2 = 0
Select
Case $faaaghs2 = 12
$fghs2 = 1
EndSelect
EndFunc
Func _2_poisk33()
Local $faaaghs3 = 0
WinActivate('Game', "")
Sleep(500)
WinMove("Game", '', 0, 0, 1280, 768)
Sleep(500)
Do
PixelSearch( 634, 107, 634, 107, 0xFFFFFF, 1 ) ;поиск пикселя по координатам
If Not @error Then ;если условие тогда
$fghs3 = 12
Sleep(3999)
Send('{Enter}')
Sleep(10000)
Else
MouseClick('left', Random(660, 665, 1), Random(239, 252, 1), 1, 3)
Sleep(500)
WinMove("Game", '', 0, 0, 1280, 768)
Sleep(4500)
$faaaghs3 += 1
$fghs3 += 1
EndIf
Until $fghs3 = 12
$fghs3 = 0
Select
Case $faaaghs3 = 12
$fghs3 = 1
EndSelect
EndFunc
вот если при выполнении функций
Код:
Func _2_poisk2()
или
Код:
Func _2_poisk33()
снова обрыв связи с сервером, тогда
Код:
$fghs2 = 1
или
Код:
$fghs3 = 1
и в функциях входа в игру идёт заново вызов функции
Код:
restar()
тогда и возникает проблема незапланированного, повторного входа :(
Подскажите пожалуйста в чём моя ошибка? Как сделать что бы при вызове " restar() " все остальное "убивалось" ?
Или как то по другому, в общем что бы работал скрипт .
Заранее всем спасибо! ;)
Добавлено:
Сообщение автоматически объединено:
Тему не помечаю решённой, но для себя решил - просто переписал код совсем иначе ;)