привет народ. есть не большой скрипт на мининг, но есть чорные дыры в скрипте. По идее как докапает до веса 650, то должен реколитца к сундуку - но перс делает что то неведомое.
sub main() var my, mx,i,j while (not uo.dead()) mx = UO.GetX("self") my = UO.GetY("self") tohide() for i = mx-3 to mx+3 for j = my-3 to my+3 kopka(i,j) UO.Print("Копаем в: "+str(mx-i)+" "+str(my-j)) next next wend end sub
sub kopka(i,j) VAR MaxWeight=650 VAR Pic="0x0E85" if UO.Weight>=MaxWeight then uo.WaitGump(21) uo.UseObject(0x41518126) endif loot() uo.WaitGump(94) uo.UseObject(0x41518126) mx = UO.GetX("self") my = UO.GetY("self") wait(10000) if not UO.GetX("self") <> mx and not UO.GetY("self") <> my then
while (not uo.injournal("no ore")) and (not uo.injournal("in rock")) and (not uo.injournal("You have no line")) and (not uo.injournal("trhtrhr")) and (not uo.injournal ("That is too far")) tohide() UO.Waittargettile("1339", str(i), str(j),"0") UO.Usetype (Pic) uo.deletejournal() while (not uo.injournal("fail")) and (not uo.injournal("put")) and (not uo.injournal("You have no line")) and (not uo.injournal("elemental")) and (not uo.injournal("no ore")) and (not uo.injournal("in rock")) and (not uo.injournal ("That is too far")) wait(100) wend wend uo.deletejournal() end sub
sub main() var x, y, Pic = "0x0E85", MaxWeight = 650, msg = "fail|put|You have no line|elemental|no ore|in rock|That is too far", endmsg = "You have no line|elemental|no ore|in rock|That is too far" while not uo.dead() tohide() for x = -3 to 3 for y = -3 to 3 repeat uo.deletejournal(msg) UO.Print("Копаем в: " + str(uo.getx() + x) + " " + str(uo.gety() + y)) uo.waittargettile(1339, uo.getx() + x, uo.gety() + y, uo.getz()) UO.Usetype(Pic) repeat wait(100) until uo.injournal(msg) or uo.dead() until uo.injournal(endmsg) or UO.Weight >= MaxWeight or uo.dead() if uo.dead() then uo.print("You Dead!") uo.exec("Terminate all") end if if UO.Weight >= MaxWeight then elemcheck() uo.useskill("Hiding") uo.WaitGump(21) uo.UseObject(0x41518126) wait(10000) loot() uo.WaitGump(94) uo.UseObject(0x41518126) wait(10000) tohide() end if next next wend end sub
Last edited by Incorrect User on 2017-05-25 20:06:51, edited 8 times in total.
спасиб что нашёл время. но перс почему то реколитца с любым весом, не обращая внимание на - MaxWeight = 50 и if UO.Weight>=MaxWeight then uo.WaitGump(21) uo.UseObject(0x40018126)
а потом когда обратно прилетает - копнёт один раз и вылетает ошибка линия 29 - runtime error - invalid operation for this type
Какое же это обратно, если оно посреди копки вставлено и без всяких условий? Я уже понял что ты вообще не понимаешь что к чему. Давай просто по порядку напиши что и как должно быть, я сделаю.
sub Needhelp() UO.Print( "User, need your help!" ) wait(50) endsub
В общем перс начинает копать в забое, набирает 650 веса - срабатывает рекк к дому - дальше процедура loot() - выгрузился ок - полёт в забой обратно - и так по кругу.