Sanch wrote:
Большое спасибо за инфу, приблизительно то же самое я и делаю в скриптах, есть некая трабла: есть скрипт на мининг, одновременно работают 2 скрипта, на проверку появлеения пк и на саму копку, проблема заключается в следующем, что при копке когда чар что либо выкопал проверяет наличие эелементаля с заданой дистанией в 3 тайтла, при этом скритп на пк ищет чаров на расстоянии в 14 тайтлов, и когда эти 2 проверки перехлестываются то происходит поиск элементаля на расстоянии 14 тайтлов, и как правило он его находит, тк другие игроки элементалей не убивают а выводят из шахты, в совю очередь скритп записывает его ID, отбегает, сьедает инвизку кидает на него вортекса и скрипт выдает тучу ошибок, эту проблему я исправил путем отмены убийства элементаля при пявлении в журнале сообщения о том что он вне зоны видемости, все бы ничего если бы не нереальные цены на инвизки, будут ли какие либо идеи по синхронизации работы 2ух поисков? Не приемлемость испольования проверки на пк в самом скрипте на копку заключается в том что проверка должна производиться постоянно, тк чар еще ходит по шахте и тд, в это время он бут беззащитен против пк.
Code:
sub AntiPK()
uo.setGlobal("in_pk","0")
...
while uo.getGlobal("in_element") == "1"
wait(10)
wend
uo.setGlobal("in_pk","1")
; поиск PK
uo.setGlobal("in_pk","0")
endsub
sub AntiElement()
uo.setGlobal("in_element","0")
...
while uo.getGlobal("in_pk") == "1"
wait(10)
wend
uo.setGlobal("in_element","1")
; поиск элементов
uo.setGlobal("in_element","0")
endsub
Разберёшся, что к чему? Я для понятность использовал setGlobal, но при нём чаще выскакивает противная ошибка - лучше использовать uo.(set|get)EasyUO.
Суть скрипта такова, когда ищем пк/эля, мы записываем об этом в глобалку, и другой скрипт, ждёт, пока поиск пк/эля не завершиться.