Kynep wrote:Просто даже если без клика сделать:
Code: Select all
name = UO.GetName('finditem')
UO.PrintText(name)
и
Code: Select all
UO.PrintText(UO.GetName('finditem'))
то в первом случае мы получим 0 а во втором имя. Вам не кажеться это странным?
В первом случае поиск нашел объект, чье имя неизвестно, вот и 0. Во втором случае - объект, чье имя известно, вот и есть имя. Делаешь так: дисконнектишься, закрываешь клиент, запускаешь по-новой, заходишь в игру. Ни по чему не кликаешь, запускаешь скрипт, где у тебя:
Code: Select all
name = UO.GetName('finditem')
UO.PrintText(name)
UO.PrintText(UO.GetName('finditem'))
Любуешься абсолютно одинаковым результатом. А именно - 0.
После чего запускаешь скрипт, где у тебя:
Code: Select all
Click('finditem')
wait(1000)
Checklag()
name = UO.GetName('finditem')
UO.PrintText(name)
UO.PrintText(UO.GetName('finditem'))
И опять любуешься одинаковым результатом. А именно - именем объекта. Что и требовалось доказать.
И, наконец, по поводу элема. Не ты ли буквально пару дней назад интересовался, по какому сообщению лучше ловить момент появления элема? Мне кажется, да. Если это так - то все понятно. Как я уже писал, у вас на шарде элемы выкапываются сначала в пак, а потом выпадают под ноги. Так как клиент УО "знает" по именам все объекты, которые находятся у чара в паке (было бы странно, если бы не знал), то абсолютно естественно, что чар (и инжект) знает имя элема без всякого клика на него.