Кому не тяжко гляньте. Пишу скрипт на спарринг. Чар должен бить оппонента, и при хп жертвы меньше 50% останавливать бой и лечить его. И так до победного.
Проблема в том что не могу нормально зациклить действие. Чар все время пытается юзать оружие на цель. Вот сам скрипт
sub sparing() while not uo.Dead() if uo.GetHp('0x0029D60B') > uo.getMaxHP('0x0029D60B')/2 then atak() else hil() endif wend end sub
sub hil() uo.deletejournal() repeat uo.warmode(0) UO.Usetype("0x0E21") UO.Exec("waittargetobject 0x0029D60B") wait(4500) until uo.injournal('does not need you to heal or cure him') end sub
sub atak() uo.warmode(1) UO.Exec("attack 0x0029D60B") wait(100) uo.usetype("0x13FA") # тип оружия wait(100) uo.waittargetobject("0x0029D60B") UO.Exec("attack 0x0029D60B") end sub
По отдельности процедуры атаки и лечения работают а вот свести вместе не получается Помогите пожалуйста.
Попробуй терминейт сделать.
sub sparing()
while not uo.Dead()
if uo.GetHp('0x0029D60B') > uo.getMaxHP('0x0029D60B')/2 then
atak()
else
uo.exec('terminate atak')
hil()
endif
wend
end sub
;перетащите ОБЯЗАТЕЛЬНО полоску с жизньями жертвы!!!!!!!!! ;Жертве в руки лук без стрел :=)))
var kykla='0x0190' ;тип человека -) var orygie='0x13B9';тип оружия -) var bints='0x0E21'; тип бинта -)
sub train() uo.findtype(kykla,'-1','ground') while not uo.dead() uo.findtype(kykla,'-1','ground') if uo.gethp('finditem')>20 then atack() else heal() endif uo.warmode(0) wait(100) wend endsub
sub atack() uo.usetype(orygie) uo.waittargetself() wait(500) uo.warmode(1) uo.ignorereset() uo.ignore('self') uo.findtype(kykla,'-1','ground') uo.attack('finditem') while uo.gethp('finditem')>20 uo.findtype(kykla,'-1','ground') wait(100) if uo.gethp('finditem')<19 then uo.warmode(0) endif wend uo.warmode(0) endsub
sub heal() var moy var BandBL ='0x0E20' uo.warmode(0) UO.Disarm()
uo.deletejournal() uo.findtype(kykla,'-1','ground') while not uo.injournal("does not need") uo.warmode(0) CheckLag() uo.waittargetobject('finditem') uo.usetype(bints) wait(4000) uo.findtype(kykla,'-1','ground') wend endsub
Sub CheckLag() UO.DeleteJournal() UO.Click('backpack') repeat wait(50) until UO.InJournal('backpack') end sub