Page 1 of 1
Драгоценные камни
Posted: 2012-04-17 19:31:49
by Siva
Как можно добавить в этот скрипт выгрузку драгоценных камней, что бы не прописывать все Type=0x0F26 и ......., камней??
Code: Select all
var Chest='0x400F05E5'
sub Drop()
uo.useobject(Chest)
wait(1000)
uo.findtype('0x19B7',-1,'backpack')
repeat
if uo.findcount() then
uo.MoveItem('finditem','0',Chest)
endif
wait(800)
until uo.findcount()==0
uo.findtype('0x19B7',-1,'backpack')
wait(800)
endif
endif
end sub
Re: Драгоценные камни
Posted: 2012-04-17 20:03:27
by Mirage
Драг камней всего то штук 8-10.
Массив или чтото типо такого:
Code: Select all
sub main()
Loot2(0xf0f, 0xf30, '-1', SundLoot, SundBi,'','','') ; камни
endsub
Sub Loot2(Type1, Type2, Color, SourceContainer, TargetContainer,X,Y,Z)
for TType = Type1 to Type2
PUTLoot(TType, Color, SourceContainer, TargetContainer,X,Y,Z)
next
end sub
Sub Loot(Type, Color, SourceContainer, TargetContainer,X,Y,Z)
UO.FindType(Type, Color, SourceContainer)
while UO.FindCount()
timemove=UO.Timer()
while UO.ContainerOf( UO.GetSerial('finditem') )==SourceContainer && timemove+20>UO.Timer()
uo.MoveItem('finditem',0,TargetContainer,X,Y,Z)
wait(lootwait)
wend
UO.FindType(Type, Color, SourceContainer)
wend
end sub
Re: Драгоценные камни
Posted: 2012-04-18 20:03:35
by Siva
отдельно лутить или выгружать я могу, просто майнеры носят собой кучи камней, пока их не убьют и не выгружают, если не сложно посоветуюте можно ли рописать все Type одной строчкой без добавления новой функции
Code: Select all
sub main()
Loot2(0xf0f, 0xf30, '-1', SundLoot, SundBi,'','','') ; камни
endsub
Re: Драгоценные камни
Posted: 2012-04-18 22:13:46
by Mirage
не понял вопроса. А тут сколько строк и что именно нужно чтобы делал скрипт?
Re: Драгоценные камни
Posted: 2012-04-19 13:32:35
by Siva
Скрипт лесоруба, переделал его в майнетр, все работает, но у лесоруба и майнера немного разная выгрузка, я не смогу добавить в большой скрипт новые функции просто знаний не хватит, поэтому просто переделал скрипт выгрузки, мне хотелось бы понять или на примере что я должен добавить в свой скрипт чтобы он выгружал инги и все камни?
Code: Select all
sub Drop()
uo.useobject(Chest)
wait(1000)
uo.findtype('0x19B7',-1,'backpack')
repeat
if uo.findcount() then
uo.MoveItem('finditem','0',Chest)
endif
waits(800)
uo.findtype('0x19B8',-1,'backpack')
repeat
if uo.findcount() then
uo.MoveItem('finditem','0',Chest)
endif
waits(800)
uo.findtype('0x19B9',-1,'backpack')
repeat
if uo.findcount() then
uo.MoveItem('finditem','0',Chest)
endif
waits(800)
uo.findtype('0x19BA',-1,'backpack')
repeat
if uo.findcount() then
uo.MoveItem('finditem','0',Chest)
endif
waits(800)
uo.findtype('0x19B7',-1,'backpack')
until uo.findcount()==0
endif
uo.findtype('0x19B8',-1,'backpack')
until uo.findcount()==0
endif
uo.findtype('0x19B9',-1,'backpack')
until uo.findcount()==0
endif
until uo.findcount()==0
uo.findtype('0x19BA',-1,'backpack')
waits(1000)
if uo.count('0x0F0E','0x0631')<GetInvis then
uo.findtype('0x0F0E','0x0631',ResChest)
if uo.findcount() then
uo.moveitem('finditem',str(GetInvis-uo.count('0x0F0E','0x0631')),'backpack')
waits(800)
endif
endif
end sub
Re: Драгоценные камни
Posted: 2012-04-19 18:48:51
by Mirage
нужно прочитать уроки про массивы и циклы for next. И попытаться осилить их. Ничего сложного в задаче нет.
Я же привел пример перекладывания ВСЕХ существующих драгоценных камней из сумки в сумку.
Ну вот пример попроще, без циклов.
Code: Select all
var ore1 = '0x19B7'
var ore2 = '0x19BA'
var ore3 = '0x19B8'
var ore4 = '0x19B9'
sub main()
putore() ; скидываем руду
end sub
Sub putore()
put(ore1,bag)
put(ore2,bag)
put(ore3,bag)
put(ore4,bag)
end sub
Sub PUT(item, cont)
while UO.Count( item ) > 0
UO.FindType( item, -1, -1 )
UO.MoveItem( 'finditem', 0, cont )
wait(1000)
wend
end sub