UO.Set('quiet','1') uo.exec('set finddistance 25') Ignores() DIM Chars[2] Chars[0] = '0x0190' ## - Òèï male. Chars[1] = '0x0191' ## - Òèï female. uo.findtype(Chars[0], '-1', '1') maleplayernum = uo.findcount() uo.findtype(Chars[1], '-1', '1') femaleplayernum = uo.findcount() allplayernum = maleplayernum + femaleplayernum for a = 0 to 1 ## - Ïåðåáèðàåì òèïû male/female. uo.findtype(Chars[a], '-1', '1') if allplayernum == 1 then if UO.GetMaxHP('finditem') < 200 then ; ïðîâåðêà íà õï, ÷òîáû îòñåèâàëî âåíäîðîâ. UO.AddObject('lasttarget','finditem') endif else if uo.findcount() > 0 then temp = uo.findcount() for i=0 to uo.findcount() uo.findtype(Chars[a], '-1', '1') UO.GetStatus('finditem') if UO.GetMaxHP('finditem') < 200 then lastplayernum = lastplayernum + 1 if lastplayernum < 5 then UO.AddObject('AddTarget'+str(lastplayernum), 'finditem') else i = temp endif if lastplayernum == 1 then UO.AddObject('Enemy','finditem') endif UO.Ignore('finditem', 'on') endif next endif endif next UO.Set('quiet','0') UO.Print("lasttarget: "+UO.GetName('MainTarget')) UO.Click('lasttarget') UO.IgnoreReset() end sub
скрипт работает исправно, правда есть одно маленькое НО, он записывает найденных в enemy . как сделать чтобы сразу записывал в ласттаргет ? а то все скрипты переделывать на касты приходится.
UO.Set('quiet','1') uo.exec('set finddistance 25') Ignores() DIM Chars[2] Chars[0] = '0x0190' ## - Òèï male. Chars[1] = '0x0191' ## - Òèï female. uo.findtype(Chars[0], '-1', '1') maleplayernum = uo.findcount() uo.findtype(Chars[1], '-1', '1') femaleplayernum = uo.findcount() allplayernum = maleplayernum + femaleplayernum for a = 0 to 1 ## - Ïåðåáèðàåì òèïû male/female. uo.findtype(Chars[a], '-1', '1') if allplayernum == 1 then if UO.GetMaxHP('finditem') < 200 then ; ïðîâåðêà íà õï, ÷òîáû îòñåèâàëî âåíäîðîâ. UO.AddObject('lasttarget','finditem') endif else if uo.findcount() > 0 then temp = uo.findcount() for i=0 to uo.findcount() uo.findtype(Chars[a], '-1', '1') UO.GetStatus('finditem') if UO.GetMaxHP('finditem') < 200 then lastplayernum = lastplayernum + 1 if lastplayernum < 5 then UO.AddObject('AddTarget'+str(lastplayernum), 'finditem') else i = temp endif if lastplayernum == 1 then UO.AddObject('Enemy','finditem') endif UO.Ignore('finditem', 'on') endif next endif endif next UO.Set('quiet','0') UO.Print("lasttarget: "+UO.GetName('MainTarget')) UO.Click('lasttarget') UO.IgnoreReset() end sub
скрипт работает исправно, правда есть одно маленькое НО, он записывает найденных в enemy . как сделать чтобы сразу записывал в ласттаргет ? а то все скрипты переделывать на касты приходится.
Если я не ошибаюсь ласт таргет может быть только один. И чтоб переключиться быстро на другого игрока в настройках самой ультимы можно забиндить кнопку) Где-то у меня валяйся скрипт на добавление враго и друзей, если нужно могу поискать и скинуть
##################################################################### #Константы ##################################################################### #ID противника var Enemy='Enemy' #ID союзника var Alias='Alias' ##################################################################### #Добавление глобальных объектов ##################################################################### #Добавление союзника sub addAlias() uo.print('Select Alias:') uo.exec('addobject Alias') while uo.targeting() wait(100) wend end sub ##################################################################### #Добавление противника sub addEnemy() uo.print('Select Enemy:') uo.exec('addobject Enemy') while uo.targeting() wait(100) wend end sub ##################################################################### #Каст Стрелки на друга sub aliasARBook() castBook('Magic Arrow',4,Alias) end sub ##################################################################### #Каст Стрелки в противника sub enemyARBook() castBook('Magic Arrow',4,Enemy) end sub #####################################################################