Что нового

[ArcheAge] Бот

ToyotaChaser

Новичок
Сообщения
1
Репутация
0
Всем доброго времени суток. Скрипт делался для игры(простой макрос для мобов). Склепал из шаблонов с форума. Суть такова: есть красный пиксель - нажимаем многократно "4", а если нет, то ждем пока не появится нужный пиксель(Также пауза скрита на "U"). Скрипт работает, но когда игра в оконном режиме. Когда игру разворачиваю и нахожу нужные координаты - программа не работает. Пробовал прицепить к нужному окну, но так и не смог. Подскажите, как это сделать.
Window info пишет такое:
Title: - ArcheAge DX11 - Dec 12 2013 (16:59:23)
Class: ArcheAge

Код:
Dim $iPause, $i = 0
HotKeySet('{u}', '_Pause')
   While 1
		 If $iPause Then _Pause()
		  For $i = 1 To 5
		  If PixelGetColor(978, 76) = 0x861D1D Then
			Send("{4}")
			Sleep ( '2' )
			EndIf
	  $i = $i+1
	  Next
   WEnd
Func _Pause()
   $iPause = Not $iPause
    While $iPause
        Sleep(250)
    WEnd
EndFunc
 

Belfigor

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

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


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

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

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

Z_Lenar

Продвинутый
Сообщения
209
Репутация
52
Re: [Мышь, клавиатура] Работа с нужным окном

Возможна разная цветопередача для оконного и полноэкранного режимов. Попробуйте сделать скриншот в полноэкранном режиме и с помощью paint'а отыскать нужные координаты и значение цвета пикселя.
 

C2H5OH

AutoIT Гуру
Сообщения
1,473
Репутация
333
Код:
Global $iPause = False
HotKeySet('{u}', '_Pause')

While 1
    For $i = 1 To 5
		$color = PixelGetColor(978, 76)
		ConsoleWrite("цвет = 0x"&Hex($color,6)&@CR)
		If $color = 0x861D1D Then
			Send("{4}")
			Sleep (2000)
		EndIf
	Next
WEnd

Func _Pause()
   $iPause = Not $iPause
    While $iPause
        Sleep(250)
    WEnd
EndFunc


ToyotaChaser, или начинайте изучать программирование с самых основ, или вообще бросайте это занятие.
 

ORLANGUR-M3

Новичок
Сообщения
15
Репутация
0
Код:
If WinActive('AA.....') Then ;Если окно с аркейджем на данный момент активно, то запускаем функцию скрипта
			Function_Find(); Твой скрипт внутри блока проверки
	EndIf
		Sleep($Sleep_1); Если скрипт выполнен, спим время 1
	Else
		Sleep($Sleep_3); Если окно неактивно, спим другое кол-во времени.
EndIf

Я сделал себе такую проверку активного окна.
С полноэкр. режимом World of Tanks в вин7 у меня всегда была проблема: цвет не находится (всегда черный). Делал скрипт принтскрина, так просто черный экран. Отключи аэро, без него вроде нормально работает.
ЗЫ: Координаты лучше забить в переменные - так легче править потом.
 
Верх