| Yoko http://forum.yoko.com.ua/ |
|
| Мининг небольшая проблема. http://forum.yoko.com.ua/viewtopic.php?f=3&t=13801 |
Page 1 of 1 |
| Author: | Botinokk [ 2008-07-19 04:16:34 ] |
| Post subject: | Мининг небольшая проблема. |
Вобщем проблема такая,сначала запуская collecting маркаешь тайлы все работает,далее запускаем mining капает все отлично,когда доходит до филзла ну вобщем он не выкапывает руду пишет " You loosen some rocks but fail to find any useable ore. " перескакивает на другой тайл надо чтобы он еше раз его прокапал,еше нужна помошь нужно чтобы он копал 1 раз на тайле,а не выкапывал весь айрон или цветняк под чистую,тк у меня на шарде цветняк выкапываеться практически сразу весь,а ждать пока он выкапает весь айрон это долго тк айрона в тайте очень много..?? ХЕЛП ! sub collecting() var i,s=0,flag=0 var f=file("D:\_GAMES\Uo\Inject\rock.txt") dim RockX[500],RockY[500],RockT[500] var Count=0 while not flag ==1 uo.usetype ('0x0E85') WaitForTarget() while uo.targeting() wait(100) wend if uo.LastTile(1)==UO.GetX("self") then if uo.lastTile(2)==UO.GetY("self") then flag=1 endif endif if flag == 0 then RockX[Count]=uo.LastTile(1) RockY[Count]=uo.lastTile(2) RockT[Count]=uo.LastTile(0) uo.print('Найдена кочка № '+str(count)+': x='+str(uo.lasttile(1))+' y='+str(uo.lastTile(2))) Count = Count+1 endif wend uo.print ("Найдено " + str(Count) + " кочек") ################################################# ################Запись в файл#################### ################################################# f.open() f.create() s=safe call f.writeln(Count) for i=0 to Count-1 s=safe call f.writeln(str(RockT[i])+' '+str(RockX[i])+' '+str(RockY[i])) next f.close() ################################################# ################################################# ################################################# end sub ################################################# ################################################# ################################################# ################################################# ################################################# ################################################# sub mining() var i,flag,j var Count var f=file("D:\_GAMES\Uo\Inject\rock.txt") dim RockX[500],RockY[500],RockT[500] uo.deletejournal() ################################################# ###############Загружаем из файла################ ################################################# uo.print('Загружаем координаты из файла...') f.open() Count=safe call f.readNumber() uo.print("Загружено "+str(Count)+ " кочек") for i=0 to Count-1 RockT[i]=safe call f.ReadNumber() RockX[i]=safe call f.ReadNumber() RockY[i]=safe call f.ReadNumber() next f.close() ################################################# ###############Ходим по координатам############## ################################################# while UO.Weight<650 uo.deletejournal() if Count>0 then for i=0 to Count-1 flag=0 j=0 uo.print('Идем к кочке '+str(i)+': x='+str(Rockx[i])+' y='+str(RockY[i])) while not flag==1 flag=gotoxy(RockX[i],RockY[i]) wait (1000) wend while not uo.Hidden('self') UO.UseSkill('Hiding') wait (2000) wend uo.deletejournal() GetRock(str(RockT[i]),str(RockX[i]),str(RockY[i]),str(uo.getz())) next endif wend uo.print ("Выкопано") end sub ################################################################## sub GetRock(tile,x,y,z) uo.print('Начинаем копку...') while not UO.InJournal("Try") and not UO.InJournal("location") and not UO.InJournal("Попробуйте") and not UO.InJournal("far away") and not UO.InJournal("There is no ore here to mine.") and not UO.InJournal ("Тут не осталось руды") and not UO.InJournal("дотянуться") and not UO.InJournal("You loosen some rocks but fail to find any useable ore.") uo.deletejournal() UO.Waittargettile(tile,x,y,z) uo.print ("Используем кирку...") UO.Usetype("0x0E85") while not UO.InJournal("You put") and not UO.InJournal("location") and not UO.InJournal("Попробуйте") and not UO.InJournal("дотянуться") and not UO.InJournal("There is no ore here to mine.") and not UO.InJournal ("Тут не осталось руды") and not UO.InJournal("but fail") and not UO.InJournal("nothing") and not UO.InJournal("Try") and not UO.InJournal("You loosen some rocks but fail to find any useable ore.") wait (1000) wend wend end sub ########################################## #############Дополнительные############### ################Функции################### ########################################## sub abs(num) if num>=0 then return num else return num*(-1) end if end sub sub gotoXY(x,y) var myX,myY,lastX=0,lastY=0,i,halt=0,z,r=0 for i=1 to 60 MyX=uo.getX(); MyY=uo.getY(); if LastX==MyX AND LastY==MyY then halt=halt+1 else halt=0 end if if halt>=10 then if uo.GetDir()==1 then for z=0 to 8 uo.press(40) next end if if uo.GetDir()==3 then for z=0 to 8 uo.press(37) next end if if uo.GetDir()==5 then for z=0 to 8 uo.press( 38 ) next end if if uo.GetDir()==7 then for z=0 to 8 uo.press(39) next end if halt=15 end if if abs(x-myX)<=1 AND abs(y-myY)<=2 then return 1 end if if x<=MyX then if y<=MyY then for z=0 to 3 uo.press( 38 ) next else for z=0 to 3 uo.press(37) next end if else if y<=MyY then for z=0 to 3 uo.press(39) next else for z=0 to 3 uo.press(40) next end if end if lastX=myX lastY=myY wait(200) next return 0 end sub sub WaitForTarget() for var i=0 to 50 if uo.Targeting()==1 then return 1 end if wait(200) next return 0 end sub |
|
| Author: | Botinokk [ 2008-08-18 02:52:57 ] |
| Post subject: | |
да ну неужели ни кто не знает,я сделал вроде чтоб он капал по 1 разу на тайле но ооооочень часто сбиваеться снова начитает все подряд рыть... |
|
| Page 1 of 1 | All times are UTC+02:00 |
| Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |
|