Что нового

Разделение скриптов

MDF1ne

Новичок
Сообщения
2
Репутация
0
Помогите разделить 5 скриптов, что-бы они работали последовательно. Я новичок и совсем не могу разобраться, пробовал вставить AdlibRegister, не получилось и решил обратиться за помощью.
Код:
HotKeySet ("{F1}","_Pause" )
HotKeySet ("{F2}","_NotPause")
HotKeySet("{F7}", "_Exit")
Global $Paused
Func _Pause()
$Paused = True
While $Paused
WEnd
EndFunc
Func _NotPause()
$Paused = False
EndFunc
While 1
$Variable = PixelSearch (1076,270,1283,345,0x828297)
If IsArray($Variable) = True Then
MouseMove(1085,280,3)
MouseClick("LEFT")
EndIf
$Variable = PixelSearch(874,54,976,95,0xFFFFFF)
If IsArray($Variable) = True Then
MouseMove(1311,741,0)
MouseClick("LEFT")
EndIf
$Variable = PixelSearch (1267,663,1280,669,0x828297)
If IsArray($Variable) = True Then
MouseMove(1320,741,3)
MouseClick("LEFT")
EndIf
$Variable = PixelSearch (1247,732,1251,735,0xFFFFFF)
If IsArray($Variable) = True Then
MouseMove(1347,740,3)
MouseClick("LEFT")
EndIf
$Variable = PixelSearch (1230,533,1239,538,0x828297)
If IsArray($Variable) = True Then
MouseMove(1285,529,3)
MouseClick("LEFT")
EndIf
WEnd
Func _Exit()
Exit
EndFunc
 

All2khoff

Продвинутый
Сообщения
376
Репутация
68
Немного не понял, что вы имели в виду в своем описании задачи... решил предложить немного другой принцип построения скрипта.
Вынул ваш скрипт из бесконечного цикла и немного сократил, убрав повторяющиеся команды в функцию, возможно это поможет.
Код:
HotKeySet ("{F1}","_Pause" )
HotKeySet ("{F2}","_NotPause")
HotKeySet("{F7}", "_Exit")
Global $Paused

Func _Exit()                                            ;функция выхода из скрипта
   Exit
EndFunc

Func _Pause()                                            ;функция приостановки скрипта
   $Paused = True
   While $Paused
      WEnd
   EndFunc

Func _NotPause()                                        ;функция продолжения работы скрипта с места приостановки
   $Paused = False
EndFunc

$Variable1 = PixelSearch (1076,270,1283,345,0x828297)    ;координаты поиска и цвет пикселя в переменную
$Variable2 = PixelSearch (874,54,976,95,0xFFFFFF)
$Variable3 = PixelSearch (1267,663,1280,669,0x828297)
$Variable4 = PixelSearch (1247,732,1251,735,0xFFFFFF)
$Variable5 = PixelSearch (1230,533,1239,538,0x828297)

pixel($Variable1,1085,280,3)                            ;вызов основной функции с координатами для поиска пикселя $Variable№ и координатами куда двигать мышку x,y,z
pixel($Variable2,1311,741,0)
pixel($Variable3,1320,741,3)
pixel($Variable4,1347,740,3)
pixel($Variable5,1285,529,3)

Func pixel($Variable,$x,$y,$z)                            ;основная фукция скрипта
   If IsArray($Variable) = True Then                    ;если переменная массив то
      MouseMove($x,$y,$z)                                ;двигаем курсор мыши по координатам с заданой скоростью
      Sleep(10)                                            ;небольшая задержка для стабильности
      MouseClick("LEFT")                                ;выполнение клика
   EndIf                                                ;конец условия если
EndFunc
 
Автор
M

MDF1ne

Новичок
Сообщения
2
Репутация
0
Немного не понял, что вы имели в виду в своем описании задачи... решил предложить немного другой принцип построения скрипта.
Вынул ваш скрипт из бесконечного цикла и немного сократил, убрав повторяющиеся команды в функцию, возможно это поможет.
Код:
HotKeySet ("{F1}","_Pause" )
HotKeySet ("{F2}","_NotPause")
HotKeySet("{F7}", "_Exit")
Global $Paused

Func _Exit()                                            ;функция выхода из скрипта
   Exit
EndFunc

Func _Pause()                                            ;функция приостановки скрипта
   $Paused = True
   While $Paused
      WEnd
   EndFunc

Func _NotPause()                                        ;функция продолжения работы скрипта с места приостановки
   $Paused = False
EndFunc

$Variable1 = PixelSearch (1076,270,1283,345,0x828297)    ;координаты поиска и цвет пикселя в переменную
$Variable2 = PixelSearch (874,54,976,95,0xFFFFFF)
$Variable3 = PixelSearch (1267,663,1280,669,0x828297)
$Variable4 = PixelSearch (1247,732,1251,735,0xFFFFFF)
$Variable5 = PixelSearch (1230,533,1239,538,0x828297)

pixel($Variable1,1085,280,3)                            ;вызов основной функции с координатами для поиска пикселя $Variable№ и координатами куда двигать мышку x,y,z
pixel($Variable2,1311,741,0)
pixel($Variable3,1320,741,3)
pixel($Variable4,1347,740,3)
pixel($Variable5,1285,529,3)

Func pixel($Variable,$x,$y,$z)                            ;основная фукция скрипта
   If IsArray($Variable) = True Then                    ;если переменная массив то
      MouseMove($x,$y,$z)                                ;двигаем курсор мыши по координатам с заданой скоростью
      Sleep(10)                                            ;небольшая задержка для стабильности
      MouseClick("LEFT")                                ;выполнение клика
   EndIf                                                ;конец условия если
EndFunc
Большое спасибо. Я наконец-то разобрался.
 
Верх