Page 1 of 1

Mining,убрать рекол

Posted: 2011-05-29 10:54:08
by Terrible

Code: Select all

sub maning() 
#BETEP™# 
var mx, my, mz, i, j, jor, ser, noto 
Uo.exec("set norbcheck 1"); ??? ?????? 
uo.exec("set norbcalc 1"); ???? 

uo.print('!!?????? ??????!! ') 
uo.exec('addobject Shovel') 
while uo.targeting() 
wait(100) 
wend 

uo.print('!!?????? ??????!! ') 
uo.exec('addobject Runebook') 
while uo.targeting() 
wait(100) 
wend 

na4alo:
noto=0 
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("????????...") 
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) 
if uo.injournal("heavy") or uo.dead() then 
pwav() 
Pause() 
endif 
for jor = 0 to 9 
ser = uo.journalserial(jor) 
if ser == uo.getserial('self') then 
noto = 0 
else 
noto = uo.getnotoriety(ser) 
endif 
if noto == 1 or noto == 4 or noto == 5 then 
if uo.waiting() then 
uo.canceltarget() 
endif 
Save() 
pwavw() 
wait(4000) ; ????? ? ???????? ??? ???????? ???? ????? ?? 
loot() 
wait(3000) 
goto reccal 
endif 
next 
wend 
if uo.weight > 550 then ; ???????????? ??? ??? ??????? ????? ? ????? 
goto end 
endif 
wend 
UO.DeleteJournal() 
next 
next 
goto na4alo 
end: 
if uo.waiting() then 
uo.canceltarget() 
endif 
uo.exec("recall Runebook 21") ; ????? ( ? ??????? ???? 1 ) 
wait(10000) 
loot() 
wait(3000) 
reccal: 
uo.deletejournal() 
if uo.waiting() then 
uo.canceltarget() 
endif 
uo.exec("recall Runebook 94") ; ? ????? ( ? ??????? ???? 8 ) 
mx = UO.GetX("self") 
my = UO.GetY("self") 
wait(10000) 
if not UO.GetX("self") <> mx and not UO.GetY("self") <> my then 
goto reccal 
endif 
goto na4alo 
end sub 

sub loot() ; ?????????? ???? ? ?????? 
if uo.waiting() then 
uo.canceltarget() 
endif 
VAR a,Exit 
VAR UnloadCont='0x4040E2C5' ; ???? ??????? ??? ???? 
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(UnloadCont) 
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() 
end sub 

sub Save() ; ?????? ?? ?? ??? ?? ????????? (? ???? ????? ? ?????????? ????? ? ????) 
var mx, my 
reccal: 
uo.deletejournal() 
if uo.waiting() then 
uo.canceltarget() 
endif 
mx = UO.GetX("self") 
my = UO.GetY("self") 
UO.DeleteJournal() 
UO.FindType('0x1F14',-1,'my') 
wait(10000) 
UO.Cast('Recall','finditem') 
wait(5000) 
if not UO.GetX("self") <> mx and not UO.GetY("self") <> my then 
goto reccal 
endif 
end sub 

sub pwav() ; ???? ??? ??????????? ?????????? 
uo.playwav("C:\uo\333.wav") 
endsub 

sub pwavw(); ???? ??? ????????? ?? 
uo.playwav("C:\uo\333.wav") 
endsub 

sub Pause() ; ????? ??????? ???? ???????? ????? (?????????? ?????? GO ) 
UO.DeleteJournal() 
REPEAT 
WAIT(3000) 
UO.Print("!!!?????? ?? ?????!!!!") 
UNTIL UO.InJournal('GO') 
UO.Print("!!!?????? ?????????!!!!") 
endif 
end sub
Надо,чтобы чар не реагировал на ПК,не ПК,и прочих персонажей,стоял себя копал и копал,но сигнал при выкапывании элема,это всё остается...
Что надо удалить?...И как правильно это сделать,чтобы скрипт остался рабочим...

Re: Mining,убрать рекол

Posted: 2011-05-29 12:05:52
by ZeroDX
Страшный какой-то скрипт. Я в goto запутался.

Re: Mining,убрать рекол

Posted: 2011-05-29 12:42:58
by Mirage
Ветер писал на заре мироздания :roll:
кусок отвечающий за ПК

Code: Select all

for jor = 0 to 9 
ser = uo.journalserial(jor) 
if ser == uo.getserial('self') then 
noto = 0 
else 
noto = uo.getnotoriety(ser) ; ключевая команда
endif 
if noto == 1 or noto == 4 or noto == 5 then  ; разбирайся вот с этим
if uo.waiting() then 
uo.canceltarget() 
endif 
Save() 
pwavw() 
wait(4000) ; ????? ? ???????? ??? ???????? ???? ????? ?? 
loot() 
wait(3000) 
goto reccal 
endif 
next
информация есть в хелпе
ps поправка - скрипт реагирует не на ПК-человека, а на цвет ника. Есть разница к сожалению для автора.

Re: Mining,убрать рекол

Posted: 2011-05-29 12:51:16
by Incorrect User
Вот трек элементов, подставь ИД свой

Code: Select all

sub Poisk()
uo.set('finddistance', '7')
uo.findtype('0x0008', '-1', '1') #тип элементаля#
if uo.findcount() > 0 then 
  uo.usetype('0x0F08')
  uo.exec('exec Teleportation')
  return
endif
if val(uo.getglobal('back')) == 0 then
  uo.setglobal('place', '1')
  uo.setglobal('circle', '1')
  uo.exec('exec Obkopka')  
else
  uo.setglobal('back', '0')
endif
end sub