Что нового

[Timezero] Автоматизация в бою

dmdtip

Новичок
Сообщения
6
Репутация
0
Версия AutoIt: 3.

Описание:
Хотелось бы бота кликера по монстрам в бою TimeZero.
Кликер должен кликать в каждого монстра,по 2 раза,никаких действий по перемещению в бою,и прочего,по типу перезарядки не нужно...Главное делать клики по монстрам.

Вот скрин самого боя

Примечания:
Я на данным языке работаю только 4й день....ЧТо то вышло...но не то,кликает постоянно в одного и того же мостра,который попадается по цвету пикселя.
Сам Код :
Код:
#region ---Au3Recorder generated code Start ---
Opt("WinWaitDelay",100)
Opt("WinDetectHiddenText",1)
Opt("MouseCoordMode",0)

Global $Paused
HotKeySet("{PAUSE}", "TogglePause")
HotKeySet("{ESC}", "Terminate")

_WinWaitActivate("","")
while 1
sleep(700)
 ;~MouseClick(24, 177)
 ;~MouseClick(1118,491)

$coord = PixelSearch ( 24, 177, 1100, 491, 0x262626 ,20)
$coord = PixelSearch ( 10, 92, 1112, 570, 0x262626 ,10)
if not @error Then ;если крыса обнаружена

MouseClick("left",$coord[0] ,$coord[1] ,10)
MouseClick("left",$coord[0]+40 ,$coord[1]+30 ,1)
MouseClick("left", $coord[0]+40 ,$coord[1]+30 ,7)
sleep(100)

ElseIf @error Then ;если крыса необнаружена

EndIf
WEnd

Func TogglePause()
$Paused = NOT $Paused
While $Paused
 sleep(100)
 ToolTip('Script is "Paused"',0,0)
WEnd
ToolTip("")
EndFunc

Func Terminate()
Exit 0
EndFunc

#region --- Internal functions Au3Recorder Start ---
Func _WinWaitActivate($title,$text,$timeout=0)
WinWait($title,$text,$timeout)
If Not WinActive($title,$text) Then WinActivate($title,$text)
WinWaitActive($title,$text,$timeout)
EndFunc
#endregion --- Internal functions Au3Recorder End ---

#endregion --- Au3Recorder generated code End ---


Заранее благодарен вам за помощь!
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,605
Репутация
941
Re: [Автоматизация] Timezero

Предупреждение За нарушение правил форума (пункт Б.5):
Имя темы должно нести смысловую нагрузку (отражать суть вопроса/проблемы)
Правильно сформулированное название темы привлекает больше внимания, и шансы получить конкретный ответ увеличиваются.


Данные правила могут пополняться локальными правилами раздела.
Как правильно называть темы

"[Автоматизация] Timezero" - это неприемлемое название темы, переименуйте тему иначе она будет закрыта, а вам возможно будет выдан бан на несколько дней.

С уважением, ваш Модератор.
 

_ToBe_

Осваивающий
Сообщения
142
Репутация
35
1. Укажи ещё
Код:
Opt("PixelCoordMode", 0) ;поиск пикселей только в координатах окна


2. Думаю надо найти более уникальные цвета для мобов... 0х262626 с шэйдом 20 или 10 это слишком большой разброс... потому он и тыкает не в том месте, т.к. находит этот цвет совсем не там, где тебе хотелось бы :smile:
 
Автор
D

dmdtip

Новичок
Сообщения
6
Репутация
0
1. Укажи ещё Код: AutoIt [Выделить]
Opt("PixelCoordMode", 0) ;поиск пикселей только в координатах окна



2. Думаю надо найти более уникальные цвета для мобов... 0х262626 с шэйдом 20 или 10 это слишком большой разброс... потому он и тыкает не в том месте, т.к. находит этот цвет совсем не там, где тебе хотелось бы
Да пиксель он находит,и кликает...Но В одного и того же моба,пока не пропадет он с поля боя...А нужно к примеру по 2 клика в 5 монстров за ход....
 

_ToBe_

Осваивающий
Сообщения
142
Репутация
35
Тогда, я думаю, тебе надо исключать зоны, где был найден моб...
К примеру, нашёл точку в координате 10, 10, длина и высота моба 40,20... Делаем цикл с условием
Если $найденная_точка(х) меньше 50 и $найденная_точка(у) меньше 30, то новые значения х = 50, у = 30
и от них искать дальше...

Если чё-то не понятно, спрашивай... я попробую объяснить подробнее :smile:
 
Верх