Page 1 of 1

Нужна помощь в скрипте.

Posted: 2006-08-25 07:08:28
by Skazi69
У меня есть скрипт ветерана, не подскажете, как сделать так, что бы он копал по кругу один раз а не циклил? спасибо!

Code: Select all

var mx, my, mz, i, j, jor, ser, noto 
mx = UO.GetX("self") 
my = UO.GetY("self") 
mz = UO.GetZ("self") 
UO.DeleteJournal() 
for i = mx-4 to mx+4 
for j = my -4 to my+4 
while not UO.Hidden() 
UO.Warmode("0") 
uo.print("Prya4emsya") 
UO.UseSkill("Hiding") 
wait(4000) 
wend 
UO.Print("?????? ? ???????????: "+str(mx-i)+" "+str(my-j)) 
while not UO.InJournal("no ore here") and not UO.InJournal("location") and not UO.InJournal("far away") and not UO.InJournal("in rock") and not UO.InJournal("Iron Ore") and not UO.InJournal("Copper") and not UO.InJournal("Rusty Ore") 
UO.DeleteJournal() 
if uo.waiting() then 
uo.canceltarget() 
endif 
UO.Waittargettile("1341", str(i), str(j), str(mz)) 
UO.Useobject("Shovel") 
while not UO.InJournal("You put") and not UO.InJournal("heavy") and not UO.InJournal("location") and not UO.InJournal("no ore") and not UO.InJournal("but fail") and not UO.InJournal("far away") and not UO.InJournal("in rock") 
wait (500)
uo.canceltarget() 
wend 
if uo.weight > 230 then  
jumphome()
endif 
wend 
UO.DeleteJournal() 
next 
next 
endsub 

sub loot()   
if uo.waiting() then 
uo.canceltarget() 
endif 
VAR a,Exit 
DIM Ore[5] 
Ore[0]=0x19B9 ; 4 and more ore 
Ore[1]=0x19B7 ; 1 ore 
Ore[2]=0x19BA ; 2 ore 
Ore[3]=0x19B8 ; 3 ore 
UO.SetReceivingContainer(UnloadConteiner) 
wait(500) 
For a=0 to 3 
Exit=0 
repeat 
UO.FindType(Ore[a]) 
if UO.GetQuantity('finditem')>0 then 
UO.Grab('0','finditem') 
wait(1500) 
Else 
Exit=1 
endif 
until Exit==1 
Next 
UO.UnSetReceivingContainer() 

Posted: 2006-08-25 07:52:40
by slonopotam
Next

Posted: 2006-08-25 08:11:32
by Skazi69
slonopotam wrote:Next
:?:

Posted: 2006-08-25 08:25:20
by predator-uo
типо удали :)

Posted: 2006-08-25 08:54:25
by Savage
Он вообщето итак один раз копает по кругу.

Posted: 2006-08-25 10:33:19
by Skazi69
Все верно ошибку нашел, спасибо :)