у тебя скрипт делает 1 проход поскрипту...
может такой цикл тебе нужен....
правда не представляю, что должен делать скрипт
что за ошибка?
Если тебе еще нужен скрипт на крафт вот накидал.
Скрипт работает на уже открытой станице Професии, с 2мя рецептами, добавленными в избранное. т.е. их там должно быть только ДВА рецепта или они должны быть на самом верху.
скрипт работает на основе поиска цветов и тебе придется поменять все значения переменных на свои
может такой цикл тебе нужен....
Код:
$StartCoordX = 163
$StartCoordY = 375
$EndCoordX =486
$EndCoordY = 540
$SearchColor = 0x9BB7D2
$Find = 0 ; переменная Нашел-Нет
$YSector = 0
While 1
ToolTip("Начинаю поиск", 100, 300)
While $YSector <= 19 AND $Find <> 1
$XSector = 0
While $XSector <= 19 AND $Find <> 1
ToolTip("Сканирование", 100, 300)
$AlfaX = ($EndCoordX - $StartCoordX) / 20
$AlfaY = ($EndCoordY - $StartCoordY) / 20
$coord = PixelSearch( $StartCoordX+$AlfaX * $XSector, $StartCoordY+$AlfaY * $YSector, $StartCoordX+$AlfaX * ($XSector+1), $StartCoordY+$AlfaY * ($YSector+1), $SearchColor, 10 );
If Not @error Then
BusyTest ($coord[0], $coord[1])
EndIf
$XSector = $XSector + 1
WEnd
$YSector = $YSector + 1
WEnd
If $Find = 0 Then
EndIf
Sleep(1000)
WEnd
Func BusyTest ($Cord_X, $Cord_Y) ; проверка на занятость кустика
$busy = PixelSearch($Cord_X-30, $Cord_Y-30, $Cord_X+20, $Cord_Y+20, 0xFFEB00, 15)
If NOT @error Then
$Find = 0
Else
ToolTip("Найден!!!", 100, 300)
MouseMove($Cord_X + 4, $Cord_Y - 5)
Sleep(Random(100, 200))
MouseClick("left")
Sleep(Random(100, 200))
MouseMove($Cord_X - 4, $Cord_Y + 5)
Sleep(Random(200, 400))
MouseClick("left")
Sleep(Random(150, 250))
MouseClick("left")
$Find = 1
Sleep(Random(19000, 21000))
$nnn = PixelSearch(385, 390, 423, 418, 0xFFEDA3)
If Not @error Then
Sleep(Random(200, 400))
MouseMove(533, 420)
Sleep(Random(100, 200))
MouseClick("left")
EndIf
EndIf
EndFunc
правда не представляю, что должен делать скрипт
что за ошибка?
Если тебе еще нужен скрипт на крафт вот накидал.
Скрипт работает на уже открытой станице Професии, с 2мя рецептами, добавленными в избранное. т.е. их там должно быть только ДВА рецепта или они должны быть на самом верху.
Код:
global $proverka_1 = 0x4A9800 ; цвет зеленой галочки в рецептах
global $proverka_1_x = 857 ; ee координаты Х
global $proverka_1_y = 396 ; ee координаты У
global $proverka_2 = 0xD00000 ; цвет карсной надписи "30 сек"
global $proverka_2_x = 688 ; ee координаты Х
global $proverka_2_y = 394 ; ee координаты У
global $count = 0 ; счетчик
global $nujno = 2 ; сколько циклов
; координаты кнопки ОБНОВИТь
Global $refresh_x = 621
Global $refresh_y = 470
Global $sozdat = 0x2D1600
Global $sozdat_x = 770
Global $sozdat_y = 396
Global $activated = 0
Global $craft_page = 0
Global $button_test = 0
_activate()
_ready_test()
_button_test()
Func _activate()
If WinExists("[class:OperaWindowClass]") Then
WinActivate("[class:OperaWindowClass]")
$activated = 1
Sleep(500)
EndIf
EndFunc
Func _ready_test()
If $activated = 1 Then
$ready_coord = PixelSearch( $proverka_1_x, $proverka_1_y, $proverka_1_x, $proverka_1_y, $proverka_1, 50 ) ; странно но меньше 50 не находит цвет
If Not @error Then
$craft_page = 1
Else
MsgBox (0, "Error!", "Не найдены контрольные точки страницы Крафта")
EndIf
EndIf
EndFunc
Func _button_test()
$check = 0
While $check = 0
$check = _check($sozdat_x, $sozdat_y, $sozdat)
Sleep(100) ;ждем обновления страницы
WEnd
If $check = 1 Then
$button_test = 1
_craft()
EndIf
EndFunc
Func _craft()
$check_1 = 0
$check_2 = 0
if $button_test = 1 Then
MouseMove($sozdat_x, $sozdat_y) ; 1ый рецепт
MouseClick("left")
While $check_1 = 0
$check_1 = _check($proverka_2_x, $proverka_2_y, $proverka_2)
Sleep(100) ;ждем обновления страницы
WEnd
MouseMove($sozdat_x, $sozdat_y+33) ; 2ой рецепт
MouseClick("left")
While $check_2 = 0
$check_2 = _check($proverka_2_x, $proverka_2_y+33, $proverka_2)
Sleep(100) ;ждем обновления страницы
WEnd
$count += 1
_craft_check()
EndIf
EndFunc
Func _check($x, $y, $color)
$coord = PixelSearch( $x-5, $y, $x+5, $y, $color, 50 )
If Not @error Then
Return 1
Else
Return 0
EndIf
EndFunc
Func _craft_check()
if $nujno = $count Then
MsgBox(0, "Задание выполнено", "Крафт закончен")
Exit
Else
Sleep (30000) ;ждем отката
_refresh()
EndIf
EndFunc
Func _refresh()
MouseMove($refresh_x, $refresh_y)
MouseClick("left")
Sleep(1000)
_button_test()
EndFunc