
Scripted by Sfagnum aka [moss] for DRW (upd. 05.07.05)
Moderators: Murderator+, Murderator
Camping - "Лесной брат"
Больная вариация на мотивы ламбера доветеранововского и скрипта на camping от Askaneli.
Описание: Скрипт написан для прокачки Camping'а, т.с. не отходя от кассы, тобишь в лесу.
1. всё что надо для работы скрипта это нож, лес и свежий воздух
.
2. kindling - запускает непосредственно прокачку.
3. MarckingLumbers - марчит деревья, как в скрипте на ламбер, нужно - лопата/кирка, выключается кликом на себя.
4. если в пак положите еду - будет питаться в процесе прокачки.
5. при достижении 100% реального значения скила - окно УО закроется.
Особенности:
1. Можно использовать файл координат сгенерированный Ветерановским скриптом на Ламбер.
2. Здесь вставлена слегка кострированная ходилка от Savage'a
ЗЫ ещё подрехтовал ходилку под нужды скрипта... теперь дОлжно работать как положено.
Описание: Скрипт написан для прокачки Camping'а, т.с. не отходя от кассы, тобишь в лесу.
1. всё что надо для работы скрипта это нож, лес и свежий воздух

2. kindling - запускает непосредственно прокачку.
3. MarckingLumbers - марчит деревья, как в скрипте на ламбер, нужно - лопата/кирка, выключается кликом на себя.
4. если в пак положите еду - будет питаться в процесе прокачки.
5. при достижении 100% реального значения скила - окно УО закроется.
Особенности:
1. Можно использовать файл координат сгенерированный Ветерановским скриптом на Ламбер.
2. Здесь вставлена слегка кострированная ходилка от Savage'a
ЗЫ ещё подрехтовал ходилку под нужды скрипта... теперь дОлжно работать как положено.
Code: Select all
var fName= "C:\uo\inject\trees3.dat" ## - Путь к файлу в котором будут хранится координаты деревьев.
var TypeFood='0x097B' ## - Тип еды которую будем кушать.(сейчас фиштейки
var tKnife = '0x0F51' ; тип ножа, если он в руках - не придётся тыкать на него прицелом.
sub kindling()
var i, f
dim TreeX[500],TreeY[500],TreeT[500]
var flag,treeCount=0
UO.Exec('terminate Reconnector')
UO.Exec('exec Reconnector')
if UO.GetGraphic(UO.ObjAtLayer('Rhand')) == '0x0F51' then
uo.waittargetobject(UO.ObjAtLayer('Rhand'))
uo.AddObject('knife')
else
UO.Print('Мтякс... покажЪ нож...')
uo.AddObject('knife')
while uo.Targeting()
wait(100)
wend
end if
ToHide()
uo.Print('Посмотримс, что там у нас в файлике завалялось...')
f = file(fName)
f.open()
treeCount=safe call f.ReadNumber()
for i=1 to treeCount
TreeT[i]=safe call f.ReadNumber()
TreeX[i]=safe call f.ReadNumber()
TreeY[i]=safe call f.ReadNumber()
next
f.close()
Orfo(str(treeCount),'Значится пошукал я и нашел '+str(treeCount)+' дерев','',0)
wait(2000)
ToHide()
if treeCount<1 then
return
end if
uo.set('finddistance','3')
uo.FilterSpeech('on')
uo.FilterSpeech('add', 'What do you want to use this on?')
while not UO.Dead()
for i=1 to treeCount
if uo.skillval('Camping',1)==1000 then
uo.set('finddistance','14')
uo.FilterSpeech('off')
UO.CloseUO()
end if
uo.Print('Потопал к дереву №'+str(i)+': x='+str(TreeX[i])+' y='+str(TreeY[i]))
if GotoXY(TreeX[i],TreeY[i]) == 1 then
GetTree(str(TreeT[i]),str(TreeX[i]),str(TreeY[i]),str(uo.GetZ()))
Camping()
end if
next
ToEat()
wend
uo.set('finddistance','14')
uo.FilterSpeech('off')
UO.CloseUO()
end Sub
Sub GetTree(Type,X,Y,Z)
var lt
var Text2='There is no wood left to harvest'
var Text3="You can't"
var Text4='That is too far away.'
var Text5='Chopping the tree '
var Text6='You put'
UO.DeleteJournal()
while not UO.InJournal(Text2) and not UO.InJournal(Text3) and not UO.InJournal(Text4) and not UO.InJournal(Text5) and not UO.Dead()
ToHide()
CheckLag()
uo.WaitTargetTile(Type,X,Y,Z)
uo.UseObject('knife')
lt = UO.Timer()
while not UO.InJournal(Text2) and not UO.InJournal(Text3) and not UO.InJournal(Text4) and not UO.InJournal(Text5) and not UO.InJournal(Text6) and not UO.Dead() and lt+100 > UO.Timer()
wait(100)
wend
if lt+100 < UO.Timer() then
if uo.targeting() then
uo.canceltarget()
end if
UO.Print('Больное какое то дерево')
return
end if
wend
end Sub
sub MarckingLumbers()
var k, i
dim TreeX[500], TreeY[500],TreeT[500]
dim TreeTile[29]
var flag=0, treeCount=0, flag2=0
TreeTile[0]=3277
TreeTile[1]=3280
TreeTile[2]=3283
TreeTile[3]=3286
TreeTile[4]=3289
TreeTile[5]=3291
TreeTile[6]=3294
TreeTile[7]=3296
TreeTile[8]=3299
TreeTile[9]=3302
TreeTile[10]=3393
TreeTile[11]=3394
TreeTile[12]=3395
TreeTile[13]=3396
TreeTile[14]=3415
TreeTile[15]=3416
TreeTile[16]=3417
TreeTile[17]=3418
TreeTile[18]=3419
TreeTile[19]=3438
TreeTile[20]=3439
TreeTile[21]=3440
TreeTile[22]=3441
TreeTile[23]=3442
TreeTile[24]=3460
TreeTile[25]=3461
TreeTile[26]=3462
TreeTile[27]=3290
TreeTile[28]=3288
uo.FilterSpeech('on')
uo.FilterSpeech('add', 'Where do you want to use the')
uo.Print('Ты будешь смеятся, но мне нужна либо кирка, либо лопата...')
uo.AddObject('Pickaxe')
While uo.Targeting()
Wait (100)
Wend
uo.Print('Попёрли искать дерева... ты тыкаешь на них, а я тя проверяю...')
UO.DeleteJournal()
while uo.Lasttile(1)<>uo.getX() and uo.Lasttile(2)<>uo.gety()
CheckLag()
uo.UseObject('Pickaxe')
if WaitForTryRock()==0 then
flag = 0
for k = 0 To 9
if uo.LastTile(0)==TreeTile[k]+1 then
flag = 2
end if
next
if flag == 0 then
for k = 0 To 28
if uo.LastTile(0)==TreeTile[k] then
flag = 1
end if
next
end if
if flag > 0 then
flag2 = 0
if treeCount > 0 Then
for i = 1 To treeCount
if TreeX[i]==uo.LastTile(1) and TreeY[i]==uo.LastTile(2) then
flag2 = 1
end if
next
end if
if flag2 == 0 then
treeCount = treeCount + 1
TreeX [treeCount] = uo.LastTile(1)
TreeY [treeCount] = uo.LastTile(2)
if flag == 1 then
TreeT [treeCount] = uo.LastTile(0)
else
TreeT [treeCount] = uo.LastTile(0) - 1
end if
uo.print('Надо же! В дерево попал!!! В это: x='+str(uo.Lasttile(1))+' y='+str(uo.LastTile(2)))
Orfo(str(treeCount),'Всего '+str(treeCount)+' дерев',' наковырял',0)
else
uo.Print('Вот чукча!!! Ты мне енто дерево уже показывал!!!, давай что нибудь новенькое покажи...')
end if
else
UO.Print('похоже... но не дерево...')
end if
end if
wend
uo.Filterspeech('off')
if treeCount < 1 then
UO.Print('И чо ты мне мозги тут пудрил? Ни одного дерева же не нашёл!')
UO.Print('Ну ни чо в другой раз тебе больше повезёт :)')
return
end if
if treeCount < 100 then
uo.Print('И чо ты думаешь этого тебе хватит?!?!?')
else
uo.Print('Ну ты и хапуга... и глянь терпения то хватило...')
end if
wait(200)
uo.Print('Да не расстраивайся ты... я так шутю :)')
wait(200)
uo.Print('посмотрел я тут на досуге, что ты навыбирал...')
uo.Print('буду попробывать скинуть в файл...')
SaveToFile(treeCount,TreeX,TreeY,TreeT)
wait(500)
uo.Print('Всё! Типа скинул в файл: ' + fName)
wait(200)
uo.Print('Эё!!! Ты куда собрался? погодь я тебя ещё не отпустил, ща рубать пойдём...')
wait(700)
kindling()
end Sub
Sub WaitForTryRock()
var Text1="Try mining in rock."
var Text2="That is too far away."
var Text3="You can't see the target"
var Text4="You have no line of sight to that location"
var Text5="There is no ore here to mine."
var Text6='You loosen'
var Text7='You put'
var Text8='OOPS!!!'
var Text9='STOPPP'
while not UO.InJournal(Text1) and not UO.InJournal(Text2) and not UO.InJournal(Text3) and not UO.InJournal(Text4) and not UO.InJournal(Text5) and not UO.InJournal(Text6) and not UO.InJournal(Text7) and not UO.InJournal(Text8) and not UO.InJournal(Text9)
wait(50)
wend
if UO.InJournal(Text1) then
UO.Print('ща посмотрю куда ты там тыкнул...')
return 0
end if
if UO.InJournal(Text2) or UO.InJournal(Text3) or UO.InJournal(Text4) then
UO.Print('а чо поближе дерева не водятся?')
end if
if UO.InJournal(Text5) or UO.InJournal(Text6) or UO.InJournal(Text7) or UO.InJournal(Text8) then
UO.Print('Ты вроде подрова собирался??? Ну так и иди... лесом иди...')
end if
return 1
end Sub
Sub SaveToFile(treeCount,TreeX,TreeY,TreeT)
var s=0,i=0, f
f = file(fName)
f.open()
f.create()
s=safe call f.writeln(treeCount)
for i=1 to treeCount
s=safe call f.writeln(str(TreeT[i])+' '+str(TreeX[i])+' '+str(TreeY[i]))
next
f.close()
end Sub
Sub Orfo(sNum, fStr, lStr, Rod) ## Rod - 0/1; 0 - дерево, 1 - лог
var n=VAL(Right(sNum,1))
if n==0 then
if Rod == 0 then
UO.Print(fStr+'а'+lStr)
else
UO.Print(fStr+lStr)
end if
return
end if
if n<5 then
UO.Print(fStr+'а'+lStr)
return
end if
if Rod == 0 then
UO.Print(fStr+'ев'+lStr)
else
UO.Print(fStr+'ов'+lStr)
end if
end Sub
Sub Camping()
var mx=uo.getx(),my=uo.gety(),x,y
uo.DeleteJournal()
while uo.count('0x0DE1','0x0000') > 0
for x=mx-2 to mx+2
for y=my-2 to my+2
CheckLag()
if uo.count('0x0DE1','0x0000')==0 or uo.Dead() then
return
end if
uo.findtype('0x0DE1','0x0000','ground')
if UO.FindCount() == 0 then
uo.findtype('0x0DE1','0x0000','backpack')
uo.drop('1',str(x),str(y),str(uo.getz()),'finditem')
CheckLag()
end if
uo.findtype('0x0DE1','0x0000','ground')
if UO.FindCount() > 0 then
uo.deletejournal()
uo.useobject('finditem')
wait(1500)
if uo.injournal("You can't") then
uo.ignore('finditem')
end if
end if
next
next
wend
end Sub
Sub ToHide()
while not UO.Hidden()
CheckLag()
UO.WarMode(0)
UO.UseSkill('Hiding')
repeat
wait(200)
until UO.InJournal('You have hidden') OR UO.InJournal('seem to hide') OR UO.InJournal('preocopured') or UO.Dead()
wend
end Sub
Sub ToEat()
UO.DeleteJournal()
UO.FindType(TypeFood,'0x0000','backpack')
while UO.FindCount() > 0 and not uo.InJournal('too full') and not UO.Dead()
CheckLag()
uo.UseType(TypeFood,'0x0000')
while not uo.InJournal('full') and not uo.InJournal('stuffed') and not uo.InJournal('hungry') and not uo.InJournal('satiated') and not UO.Dead()
wait(100)
wend
UO.FindType(TypeFood,'0x0000','backpack')
wend
end Sub
Sub CheckLag()
if uo.Waiting()>0 then
uo.Exec('canceltarget')
end if
uo.DeleteJournal()
uo.Click('backpack')
repeat
wait(50)
until uo.InJournal('backpack') or UO.Dead()
end Sub
Sub Reconnector()
var ReconnectTime, RFlag
ReconnectTime = '0'
RFlag = 1
Repeat
While (UO.ObjAtLayer('Bpack') == '')
if RFlag Then
ReconnectTime = MakeTime()
RFlag = 0
endif
Wait(20000) # WorldSave Protection
UO.Say('')
Wait(3000)
UO.Say('')
Wait(3000)
UO.Say('')
Wait(3000)
UO.LDblClick(357,164)
UO.LClick(616,459)
Wait(3000)
WEnd
Wait(3000)
if (RFlag == 0) and (ReconnectTime <> '0') Then
UO.Exec('terminate kindling')
wait(1000)
UO.Exec('exec kindling')
UO.TextOpen()
UO.TextPrint('Disconnected & Reconnected @ '+ReconnectTime)
RFlag = 1
ReconnectTime = '0'
endif
Until false
end sub
Sub MakeTime()
VAR D, T, Ret, i
Ret = STR(UO.Time())
T = ""
For i = 0 To Len(Ret)
T = Ret[Len(Ret)-i] + T
If (I == 2) OR (I == 4) Then
T = ":" + T
EndIf
Next
Ret = STR(UO.Date())
D = ""
For i = 0 To Len(Ret)
D = Ret[Len(Ret)-i] + D
If (I == 2) OR (I == 4) Then
D = "." + D
EndIf
Next
Ret = T + " @ " + D
RETURN Ret
end sub
###################################################################################################
################################# тут ходилка #####################################################
###################################################################################################
Sub GotoXY(x,y)
VAR i
VAR dir,ldir,rdir,key,olddir
VAR dx,dy,Exit=0
VAR CacheLimit=9,CacheIndex="Text"
DIM CacheX[10], CacheY[10]
CacheX[0]="Test"
While Exit<>1
dx=x-UO.GetX()
dy=y-UO.GetY()
If dx<=2 AND dy<=2 Then
Exit=1
Endif
If dx<>0 AND dy<>0 Then
If dx>0 AND dy>0 Then ; GoSE
dir=3
ldir=2
rdir=4
key=40 ; DownArrow
olddir=UO.GetDir()
If StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Then
If olddir==2 Then ; GoNE
dir=1
ldir=0
rdir=1
key=39 ; RightArrow
While UO.GetDir()<>1
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Else ; GoSW
dir=5
ldir=5
rdir=6
key=37 ; LeftArrow
While UO.GetDir()<>5
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Endif
Endif
Endif
If dx>0 AND dy<0 Then ; GoNE
dir=1
ldir=0
rdir=2
key=39 ; RightArrow
olddir=UO.GetDir()
If StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Then
If olddir==0 Then ; GoWN
dir=7
ldir=6
rdir=7
key=38 ; UpArrow
While UO.GetDir()<>7
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Else ; GoSE
dir=3
ldir=3
rdir=4
key=40 ; DownArrow
While UO.GetDir()<>3
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Endif
Endif
Endif
If dx<0 AND dy>0 Then ; GoSW
dir=5
ldir=4
rdir=6
key=37 ; LeftArrow
olddir=UO.GetDir()
If StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Then
If olddir==6 Then ; GoWN
dir=7
ldir=7
rdir=0
key=38 ; UpArrow
While UO.GetDir()<>7
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Else ; GoSE
dir=3
ldir=2
rdir=3
key=40 ; DownArrow
While UO.GetDir()<>3
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Endif
Endif
Endif
If dx<0 AND dy<0 Then ; GoWN
dir=7
ldir=6
rdir=0
key=38 ; UpArrow
olddir=UO.GetDir()
If StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key) Then
If olddir==0 Then ; GoNE
dir=1
ldir=1
rdir=2
key=39 ; RightArrow
While UO.GetDir()<>1
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Else ; GoSW
dir=5
ldir=4
rdir=5
key=37 ; LeftArrow
While UO.GetDir()<>5
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Endif
Endif
Endif
Endif
If dx<>0 AND dy==0 Then
If dx>0 Then ; GoE
dir=2
key=34 ; PgDown
olddir=UO.GetDir()
If StepEdit(UO.GetX(),UO.GetY(),dir,key) Then
If olddir==2 Then ; GoSE
dir=3
ldir=3
rdir=4
key=40 ; DownArrow
While UO.GetDir()<>3
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Else ; GoNE
dir=1
ldir=1
rdir=0
key=39 ; RightArrow
While UO.GetDir()<>1
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Endif
Endif
Endif
If dx<0 Then ; GoW
dir=6
key=36 ; Home key
olddir=UO.GetDir()
If StepEdit(UO.GetX(),UO.GetY(),dir,key) Then
If olddir==0 Then ; GoWN
dir=7
ldir=7
rdir=0
key=38 ; UpArrow
While UO.GetDir()<>7
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Else ; GoSW
dir=5
ldir=4
rdir=5
key=37 ; LeftArrow
While UO.GetDir()<>5
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Endif
Endif
Endif
Endif
If dx==0 AND dy<>0 Then
If dy>0 Then ; GoS
dir=4
key=35 ; End
If StepEdit(UO.GetX(),UO.GetY(),dir,key) Then
If olddir==2 Then ; GoSE
dir=3
ldir=2
rdir=3
key=40 ; DownArrow
While UO.GetDir()<>3
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Else ; GoSW
dir=5
ldir=6
rdir=5
key=37 ; LeftArrow
While UO.GetDir()<>5
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Endif
Endif
Endif
If dy<0 Then ;GoN
dir=0
key=33 ; PgUp
olddir=UO.GetDir()
If StepEdit(UO.GetX(),UO.GetY(),dir,key) Then
If olddir==2 Then ; GoNE
dir=1
ldir=1
rdir=2
key=39 ; RightArrow
While UO.GetDir()<>1
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Else ; GoWN
dir=7
ldir=7
rdir=6
key=38 ; UpArrow
While UO.GetDir()<>7
StepArrow(UO.GetX(),UO.GetY(),dir,ldir,rdir,key)
Wend
Endif
Endif
Endif
Endif
Wend
return 1
end sub
Sub StepEdit(x,y,dir,key)
VAR walkwait=300
VAR ErrLevel=0
If UO.GetDir()<>dir Then
UO.Press(key)
wait(walkwait)
If UO.GetDir()<>dir Then
CheckLag()
Endif
Endif
UO.Press(key)
wait(walkwait)
If x==UO.GetX() AND y==UO.GetY() Then
CheckLag()
If x==UO.GetX() AND y==UO.GetY() Then
;zatik
ErrLevel=1
Endif
Endif
Return ErrLevel
end sub
Sub StepArrow(x,y,dir,ldir,rdir,key)
VAR walkwait=300
VAR ErrLevel=0
If UO.GetDir()<>dir Then
UO.Press(key)
wait(walkwait)
If UO.GetDir()<>dir AND UO.GetDir()<>ldir AND UO.GetDir()<>rdir Then
CheckLag()
Endif
Endif
If UO.GetX()==x AND UO.GetY()==y Then
UO.Press(key)
wait(walkwait)
If UO.GetDir()==dir AND UO.GetX()==x AND UO.GetY()==y Then
CheckLag()
If UO.GetDir()==dir AND UO.GetX()==x AND UO.GetY()==y Then
; zatik
ErrLevel=1
Endif
Endif
Endif
Return ErrLevel
end sub
Last edited by Sfagnum on 2005-06-06 11:21:21, edited 2 times in total.
Code: Select all
UO.Print('ща посмотрю куда ты там тыкнул...')
UO.Print('Ты вроде подрова собирался??? Ну так и иди... лесом иди...')
UO.Print('а чо поближе дерева не водятся?')
...
без сих словец работать небудет

ни в коем разеI'm wrote:Code: Select all
UO.Print('ща посмотрю куда ты там тыкнул...')
UO.Print('Ты вроде подрова собирался??? Ну так и иди... лесом иди...')
UO.Print('а чо поближе дерева не водятся?')
...
без сих словец работать небудет

сам понимаешь без шаманских заклинаний скрипт хреново работает

ЗЫ нашлись проблемы с марком деревОв... протесчу - поправлю... старинный кусок кода... и не уверен что финальный

Re: Производство торчей.
Sfagnum wrote:Описание: Производит торчи из всех доступных цветных логов от Oak logs до Titan Tree logs, в процессе крафта питается.
Особенности:Наличие 2х контейнеров не обязательно. Можно обойтись как одним контейнером, так и без оного. Для первого случая прописываете в idSourceCont и в idResiveCont одинаковые значения, во втором для тех же переменных в качестве значения устанавливаете id backpack'а. Для крафта необходимо наличие ножа в backpack'е.Code: Select all
var idSourceCont = '0x40228D09' ;контейнер в котором лежат логи и еда
var idResiveCont = '0x40228D09' ;контейнер в который будут складываться торчи (можно складывать туда же откуда беруться логи)
var tTools = '0x0F51' ;тип ножа
var сTools = '-1' ;цвет ножа
var tEat = '0x097B' ;тип еды
var cEat = '0x0000' ;цвет еды
var qTree = 250 ;кол-во логов которое берётся за раз
Sub main()
var i
Dim cTree[17]
cTree[0]='0x047C'
cTree[1]='0x0279'
cTree[2]='0x096B'
cTree[3]='0x0237'
cTree[4]='0x0482'
cTree[5]='0x010F'
cTree[6]='0x0014'
cTree[7]='0x03C1'
cTree[8]='0x0085'
cTree[9]='0x04C2'
cTree[10]='0x0033'
cTree[11]='0x002B'
cTree[12]='0x0071'
cTree[13]='0x09A4'
cTree[14]='0x0B82'
cTree[15]='0x00BE'
cTree[16]='0x1BDD'
Dim mTree[17]
mTree[0]='Oak'
mTree[1]='Red Tree'
mTree[2]='Dark Tree'
mTree[3]='Swamp'
mTree[4]='Silver Leaf'
mTree[5]='Keranit'
mTree[6]='Perit'
mTree[7]='Petrified'
mTree[8]='Dragon Tree'
mTree[9]='Vampire Tree'
mTree[10]='Eridan'
mTree[11]='Hellios'
mTree[12]='Illusions Tree'
mTree[13]='Crystal'
mTree[14]='Dead Tree'
mTree[15]='Paradise Tree'
mTree[16]='Titan Tree'
UO.UseObject(idSourceCont)
UO.DisArm()
CheckLag()
Open('backpack')
if UO.Count(tTools) > 0 then
UO.FindType(tTools,сTools,'backpack')
UO.AddObject('objTools','finditem')
else
return
end if
Open(idSourceCont)
Open(idResiveCont)
for i = 0 to 16
CraftTorch(mTree[i],cTree[i])
next
end sub
sub CraftTorch(mTree,cTree)
UO.FindType('0x1BDD',cTree,idSourceCont)
if UO.FindCount() < 1 then
return
end if
UO.CancelMenu()
UO.AutoMenu('What do you',mTree)
UO.AutoMenu(mTree,'torch')
while GrabContainer('0x1BDD',cTree,qTree)==0
UO.DeleteJournal()
UO.WaitTargetType('0x1BDD')
UO.UseObject('objTools')
repeat
wait(100)
until UO.InJournal('You put the torch') or UO.InJournal('fail') or UO.InJournal('failed')
wend
end sub
sub GrabContainer(tType, cType, Quanty)
if UO.Count(tType,cType)<1 then
UO.FindType('0x0F64','-1','backpack')
if UO.FindCount() > 0 then
UO.MoveItem('finditem','-1',idResiveCont)
CheckLag()
end if
ToEat()
UO.FindType(tType,cType,idSourceCont)
If UO.FindCount() > 0 then
UO.MoveItem('finditem',str(Quanty),'backpack')
Wait(1000)
CheckLag()
else
return 1
End if
End If
return 0
end sub
sub ToEat()
UO.FindType(tEat, cEat, idSourceCont)
if UO.GetQuantity('finditem') > 0 then
UO.MoveItem('finditem','20','backpack')
else
return
end if
repeat
CheckLag()
uo.UseType(tEat,cEat)
while not uo.InJournal("can't") and not uo.InJournal('full') and not uo.InJournal('stuffed') and not uo.InJournal('hungry') and not uo.InJournal('satiated') and not UO.Dead()
wait(100)
wend
until uo.InJournal('too full') or UO.Dead() or uo.InJournal("can't")
CheckLag()
UO.FindType(tEat, cEat,'backpack')
if UO.GetQuantity('finditem') > 0 then
UO.MoveItem('finditem','-1',idSourceCont)
end if
CheckLag()
wait(1000)
end sub
sub Open(Container)
UO.UseObject(Container)
CheckLag()
wait(500)
end sub
sub CheckLag()
UO.DeleteJournal()
UO.Click('backpack')
repeat
wait(50)
until UO.InJournal('backpack')
end sub
Че то запускаю пишет байду invalid namber of arguments line 139 че делать?
139ая строка - последняя строчка в скрипте... ИМХО артефакт копирования сктрипта...Grin wrote:invalid namber of arguments
Ошибка когда ты вызываешь функцию не указав все обезательные параметры или наоборот указал их слишком много...
Смотри чт оутебя на 139 строчке... возможно гдето скобку не там поставил... или еще чего...
Скрипты рекомендую копировать через Quote, т.е. нажимаете Quote сообщения в котором содержится скрипт и уже оттуда копирете его... у меня в таком случае при вставке скрипта сохраняется оригинальное форматирование.
1. читай внимательнее описалово к скрипту.Tavarien wrote:На продажу скрипт нехочет видеть Неклы я невкуриваю почему пишет типа 0 предметов в рюкзаке я тип правильно прописал.....А что за лист продаж Я тоже невкурил розясните как запустить
2. кнопка buy/sell на закладке main и приправить кнопочкой Поиск на Форуме
