DStalker
Ботоводство+Мультибоксинг = время выспаться ;)
- Сообщения
- 39
- Репутация
- 2
Начал воять автоматизацию на игру-браузерку, как наткнулся на грабли.
Для того чтобы передвигаться боту по карте, его необходимо сориентировать в пространстве.
Не могу извлечь название локации в которой находится бот.
Скрин ниже с обведённым текстом "Волшебный магазинчик" - и есть название локации.
Хотелось бы помощи в корректном поиске фразы "Волшебный магазинчик" в этом окне. Т.е. каким то образом из текста взятого в активном окне найти при помощи StringRegExp искомую фразу "Волшебный магазинчик".
Тест персонаж:
L:Autopet
P:qwertyuiop
http://chaosage.ru/
Кусок рабочего проэкта, т.е. нажал F5 и сам запустился в игру зашёл, с граблями в конце:
Для того чтобы передвигаться боту по карте, его необходимо сориентировать в пространстве.
Не могу извлечь название локации в которой находится бот.
Скрин ниже с обведённым текстом "Волшебный магазинчик" - и есть название локации.
Хотелось бы помощи в корректном поиске фразы "Волшебный магазинчик" в этом окне. Т.е. каким то образом из текста взятого в активном окне найти при помощи StringRegExp искомую фразу "Волшебный магазинчик".
Тест персонаж:
L:Autopet
P:qwertyuiop
http://chaosage.ru/
Кусок рабочего проэкта, т.е. нажал F5 и сам запустился в игру зашёл, с граблями в конце:
Код:
Opt("MouseCoordMode", 2) ;Отсчет координат мыши от левого верхнего угла клиентской части окна
While 1
GUISetState()
$title=("Аватары: Эпоха Хахуса")
$oIE = ObjCreate("Shell.Explorer.2")
GUICreate($title, 1200, 800, -1, -1);создаёт внешнее окно размером х,у
$GUIActiveX = GUICtrlCreateObj($oIE, 0, 0, 1000, 700); ;создаёт окно с клиентом размером х1,у1
GUISetState()
WinActivate($title)
WinMove($title, "", 0, 0) ;выравнивает окно по х=0 у=0
ControlClick($title, "" , "[CLASS:MacromediaFlashPlayerActiveX; INSTANCE:1]"); кликает по активному окну,
Sleep (500)
$oIE.navigate("http://chaosage.ru/")
WinActivate($title)
Sleep (500)
MouseClick ("left", 474, 459, 1, 0) ;выбор сервера
Sleep (500)
Send('Autopet') ;логин
Sleep (100)
Send('{TAB 1}') ;переключается на следующее поле "пароль"
Sleep (100)
Send('qwertyuiop');пароль
Sleep (100)
Send('{TAB 1}') ;переключается на следующее поле "вход"
Send('{enter}') ;жакается Ентер.Вход в игру
Sleep (3000) ;ждём
;_________________Грабли_______________________________________
$okno = WinList()
For $i = 1 to $okno[0][0]
$find=StringRegExp( $okno[$i][0], "Волшебный магазинчик" )
If $okno[$i][0] <> "" and $find <>0 Then
$txtokno = WinGetText($okno[$i][0], "")
MsgBox(64, "Имя локи:", $txtokno)
Else
MsgBox(64, "Имя локи:", "болт")
EndIf
Next
;____________________________________________________________
WEnd