Page 1 of 1
добираем реги или пример для мува
Posted: 2006-09-26 15:07:16
by Nmy
Final version:
Code: Select all
sub REGS()
VAR amount = 75
VAR r, q, RegBag = 0x400E8802
Dim reg[8]
reg[1] = 0x0F84
reg[2] = 0x0F85
reg[3] = 0x0F86
reg[4] = 0x0F7A
reg[5] = 0x0F7B
reg[6] = 0x0F8C
reg[7] = 0x0F8D
reg[8] = 0x0F88
uo.ignorereset()
For r = 1 to 8
if uo.count( reg[r] )<>amount then
q = amount - uo.count( reg[r] )
if q <> 0 then
if q > 0 then
uo.useobject( RegBag )
CheckLag()
uo.findtype( reg[r] , -1 , RegBag )
If uo.findcount() == 0 then
uo.msg('You dont have any!')
return
endif
uo.moveitem('finditem', STR(q) ,'backpack')
wait(400)
CheckLag()
else
q = q*-1
uo.findtype( reg[r] , -1 ,'my')
uo.moveitem('finditem', STR(q) , RegBag )
wait(400)
CheckLag()
endif
endif
endif
next
uo.print('!! -= Done =- !!')
end sub
вот решыл что мне надо регов добирать а не просто брать 50...
получилось
те кто хорошо знают инжектор это не новость, может для других даже очень пригодится...

Posted: 2006-09-26 15:15:21
by Scripts Writer
а я наивный раньше по 50 добирал )
Posted: 2006-09-26 16:40:19
by Nmy
немного поправил на
если в минус- то он берёт все
он так больше небудет

Posted: 2006-09-26 17:52:50
by Scripts Writer
NMY wrote:немного поправил на
если в минус- то он берёт все
он так больше небудет

Допиши -если q < 0 , тогда пусть выложит лишнее.
После ПвП порой полезно выложить 300 каждого рега, и добрать 48 одного.
2Что у тебя с табуляцией?
Ты незнаешь как правильно делать или тебе так проще? =)
Скрипт не читабелен.
Posted: 2006-09-26 20:09:29
by Nmy
Code: Select all
sub check()
VAR r, q, RegBag = 0x400E8802
Dim reg[3]
reg[1] = 0x0F7B
reg[2] = 0x0F86
reg[3] = 0x0F7A
uo.ignorereset()
if uo.count(reg[1])<>50 or uo.count(reg[2])<>50 or uo.count(reg[3])<>50 then
uo.useobject( RegBag )
CheckLag()
For r = 1 to 3
uo.findtype(reg[r], -1 , RegBag )
If uo.findcount() == 0 then
uo.msg('oops!')
uo.exec('terminate all')
endif
q = 50 - uo.count( reg[r] )
if q <> 0 then
if q > 0 then
uo.moveitem('finditem', STR(q) ,'backpack')
wait(400)
CheckLag()
else
q = q*-1
uo.findtype(reg[r], -1 ,'my')
uo.moveitem('finditem', STR(q) , RegBag )
wait(400)
CheckLag()
endif
endif
next
endif
end sub
мне главное идея, а прочитать свои скрипты всегда легче- вот и собственно неволнуюсь
если хочется все 8 рега:
Code: Select all
sub REGS()
VAR amount = 75
VAR r, q, RegBag = 0x400E8802
Dim reg[8]
reg[1] = 0x0F84
reg[2] = 0x0F85
reg[3] = 0x0F86
reg[4] = 0x0F7A
reg[5] = 0x0F7B
reg[6] = 0x0F8C
reg[7] = 0x0F8D
reg[8] = 0x0F88
uo.ignorereset()
For r = 1 to 8
if uo.count( reg[r] )<>amount then
q = amount - uo.count( reg[r] )
if q <> 0 then
if q > 0 then
uo.useobject( RegBag )
CheckLag()
uo.findtype( reg[r] , -1 , RegBag )
If uo.findcount() == 0 then
uo.msg('You dont have any!')
return
endif
uo.moveitem('finditem', STR(q) ,'backpack')
wait(400)
CheckLag()
else
q = q*-1
uo.findtype( reg[r] , -1 ,'my')
uo.moveitem('finditem', STR(q) , RegBag )
wait(400)
CheckLag()
endif
endif
endif
next
uo.print('!! -= Done =- !!')
end sub
прелесть

Posted: 2006-09-27 17:54:45
by Scripts Writer
Кому трудно читать, и в дальнейшем это вызовет сложности с редактированием и настройкой скрипта под себя-вот код )
п.с. хм, странно. уже о такой мелочи стал заботиться ...
Code: Select all
sub REGS()
VAR amount = 75
VAR r, q, RegBag = 0x400E8802
Dim reg[8]
reg[1] = 0x0F84
reg[2] = 0x0F85
reg[3] = 0x0F86
reg[4] = 0x0F7A
reg[5] = 0x0F7B
reg[6] = 0x0F8C
reg[7] = 0x0F8D
reg[8] = 0x0F88
uo.ignorereset()
For r = 1 to 8
if uo.count( reg[r] )<>amount then
q = amount - uo.count( reg[r] )
if q <> 0 then
if q > 0 then
uo.useobject( RegBag )
CheckLag()
uo.findtype( reg[r] , -1 , RegBag )
If uo.findcount() == 0 then
uo.msg('You dont have any!')
return
endif
uo.moveitem('finditem', STR(q) ,'backpack')
wait(400)
CheckLag()
else
q = q*-1
uo.findtype( reg[r] , -1 ,'my')
uo.moveitem('finditem', STR(q) , RegBag )
wait(400)
CheckLag()
endif
endif
endif
next
uo.print('!! -= Done =- !!')
end sub
Posted: 2006-09-27 20:11:43
by Edred
You Must Die wrote:п.с. хм, странно. уже о такой мелочи стал заботиться ...
Это называется - взросление

Posted: 2006-09-27 22:15:09
by Mihail
[:|||:]
Code: Select all
sub Regs()
VAR i=0 , t, k
var kol=150 #количество
uo.addobject('sunduk')
while uo.targeting()
wait(100)
wend
DIM Regs[8]
Regs[0]='0x0F7A' ; Black Pearl
Regs[1]='0x0F7B' ; Bood Moss
Regs[2]='0x0F86' ; Mandrake Root
Regs[3]='0x0F84' ; garlic
Regs[4]='0x0F85' ; Ginseng
Regs[5]='0x0F88' ; Night Shade
Regs[6]='0x0F8C' ; Sulphorous Ash
Regs[7]='0x0F8D' ; Spiders Silk
for i = 0 to 7
t=uo.random(5)*10+510
uo.useobject('sunduk')
checklag()
UO.FindType(Regs[i],'-1','sunduk')
k= kol - uo.count(Regs[i])
if not k<=0 then
UO.MoveItem('finditem',k)
checklag()
wait(t)
else
if k<0 then
k=k*(-1)
end if
k=k+kol
uo.print('>= '+str(kol)+' ('+str(k)+')')
end if
next
uo.print('##move regs complite')
end sub
а мона еще усовершенствовать сделав массив вида
Code: Select all
Regs[0]='0x0F7A Black Pearl'
Regs[1]='0x0F7B Bood Moss'
и если больше заданного количества, то пишет
Code: Select all
uo.print(Right(Regs[i],len(Regs[i])-7)+' is '+str(uo.count(Regs[i])))
типа того..
будет выглядеть как
[Название реагента] is [кол-во реагента]
:)