Yoko
http://forum.yoko.com.ua/

Помогите со скриптом
http://forum.yoko.com.ua/viewtopic.php?f=20&t=1551
Page 1 of 1

Author:  Worth [ 2004-10-07 02:37:19 ]
Post subject:  Помогите со скриптом

Скрипт на лут вещей, когда первый раз вызываешь-просто открывает труп, второй раз-лутит. Почему? Причем, к примеру, на скелетах лутит сразу, а на зомби или личе - со второго раза. Помогите, плиз.

sub Loot()
DIM Loot[100]
Loot[0]='0x0EED'; gp
Loot[1]='0x0F7E' ; Sceleton Bones
Loot[2]='0x0F16' ; Ametist
.....
Loot[41]='0x0F20' ; Tourmaline
Loot[42]='0x0F26' ; Diamond

UO.UseObject('lastcorpse')
UO.FindType( '-1', '-1', 'lastcorpse' )
while UO.FindCount()
For i = 0 To 42
If UO.GetGraphic( 'finditem' ) == Loot[i] Then
UO.MoveItem( 'finditem' )
wait(100)
Else
wait(10)
Endif
Next
UO.Ignore( 'finditem' )
UO.FindType( '-1', '-1', 'lastcorpse' )
wend
UO.IgnoreReset()

end sub

Author:  Sfagnum [ 2004-10-07 08:09:38 ]
Post subject:  Re: Помогите со скриптом

Worth wrote:
Code:
sub Loot() 
DIM Loot[100]
Loot[0]='0x0EED'; gp
Loot[1]='0x0F7E' ; Sceleton Bones
Loot[2]='0x0F16' ; Ametist
.....
Loot[41]='0x0F20' ; Tourmaline
Loot[42]='0x0F26' ; Diamond

UO.UseObject('lastcorpse')   
      For i = 0 To 42
         UO.FindType(Loot[i], '-1', 'lastcorpse' )
         while UO.FindCount() > 0
              UO.MoveItem( 'finditem' )
              wait(100)               
              UO.FindType(Loot[i], '-1', 'lastcorpse' )
         wend
      Next       
end sub
так ИМХО проще.

Author:  Edred [ 2004-10-07 11:50:09 ]
Post subject:  Re: Помогите со скриптом

Sfagnum wrote:
Worth wrote:
Code:
sub Loot() 
DIM Loot[100]
Loot[0]='0x0EED'; gp
Loot[1]='0x0F7E' ; Sceleton Bones
Loot[2]='0x0F16' ; Ametist
.....
Loot[41]='0x0F20' ; Tourmaline
Loot[42]='0x0F26' ; Diamond

UO.UseObject('lastcorpse')   
      For i = 0 To 42
         UO.FindType(Loot[i], '-1', 'lastcorpse' )
         while UO.FindCount() > 0
              UO.MoveItem( 'finditem' )
              wait(100)               
              UO.FindType(Loot[i], '-1', 'lastcorpse' )
         wend
      Next       
end sub
так ИМХО проще.


Так проще но не быстрее. Каждый поиск занимает какое-то время. Маленькое, но занимает. Сравнение типов происходит быстрее. Поэтому если у тебя в массиве полтинник или больше типов, а ты лутишь труп, скажем, с 3-4 вещами, поиск в этом трупе 50 вещей или перебор этих трех и сравнение их с заданными 50-ью - две большие разницы. Я экспериментировал.

По поводу скрипта. У меня этот скрипт работает хорошо. Иначе бы не постил в свое время на форум. Единственное - поставь паузу и проверку на лаги после команды открытия трупа. Быстрее всего именно тут у тебя проблема. То есть:

Code:
UO.UseObject('lastcorpse') 
wait(300)
CheckLag()

Author:  Sfagnum [ 2004-10-07 12:41:25 ]
Post subject:  Re: Помогите со скриптом

Edred wrote:
Так проще но не быстрее. Каждый поиск занимает какое-то время. Маленькое, но занимает. Сравнение типов происходит быстрее. Поэтому если у тебя в массиве полтинник или больше типов, а ты лутишь труп, скажем, с 3-4 вещами, поиск в этом трупе 50 вещей или перебор этих трех и сравнение их с заданными 50-ью - две большие разницы. Я экспериментировал.
спасибо за пояснение, буду иметь ввиду.

Author:  Worth [ 2004-10-09 05:16:09 ]
Post subject: 

Спасибо за ответ, теперь работает с первого раза.

Author:  Edred [ 2004-10-09 20:25:58 ]
Post subject:  Re: Помогите со скриптом

Sfagnum wrote:
Edred wrote:
Так проще но не быстрее. Каждый поиск занимает какое-то время. Маленькое, но занимает. Сравнение типов происходит быстрее. Поэтому если у тебя в массиве полтинник или больше типов, а ты лутишь труп, скажем, с 3-4 вещами, поиск в этом трупе 50 вещей или перебор этих трех и сравнение их с заданными 50-ью - две большие разницы. Я экспериментировал.
спасибо за пояснение, буду иметь ввиду.


Ты, кстати, сам потести у себя, потому что я уже сталкивался с ситуацией (на другом шарде) когда то, что я описал не соответствовало истине. Там почему-то быстрее было через финдтайп всего массива...

Page 1 of 1 All times are UTC+02:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/