Page 1 of 1

Помогите исправить скрипт :-)

Posted: 2007-12-13 09:54:49
by Mopozz
Подскажите, почему он у меня лутит все в бак пак, я вроде указал что лут сгребать в другой контейнер... ID=0x4036BC34


Code: Select all

sub Looting() 
var t,l 
t=400                            
uo.UseObject('lastcorpse') 
wait(t) 
dim LootingItem[42]              
uo.Print('Go...') 

LootingItem[1] = 0x0F2D  ## - Tourmaline 
LootingItem[2] = 0x0F20  ## - Tourmaline 
LootingItem[3] = 0x0F1A  ## - Rubies 
LootingItem[4] = 0x0F21  ## - Star sapphire 
LootingItem[5] = 0x0F2F  ## - Emeralds 
LootingItem[6] = 0x0F2C  ## - Citrines 
LootingItem[7] = 0x0F0F  ## - Star sapphires 
LootingItem[8] = 0x0F27  ## - Diamond 
LootingItem[9] = 0x0F28  ## - Diamonds 
LootingItem[10] = 0x0F17 ## - Amethysts 
LootingItem[11] = 0x0F24 ## - Citrines 
LootingItem[12] = 0x0F12 ## - Sapphire 
LootingItem[13] = 0x0F2A ## - Rubies 
LootingItem[14] = 0x0F10 ## - Emeralds 
LootingItem[15] = 0x0F18 ## - Tourmalines 
LootingItem[16] = 0x0F25 ## - Pieces of amber 
LootingItem[17] = 0x0F16 ## - Amethysts 
LootingItem[18] = 0x0F1E ## - Tourmalines 
LootingItem[19] = 0x0F29 ## - Diamonds 
LootingItem[20] = 0x0F15 ## - Citrines 
LootingItem[21] = 0x0F11 ## - Sapphire 
LootingItem[22] = 0x0F14 ## - Ruby 
LootingItem[23] = 0x0F1F ## - Sapphires 
LootingItem[24] = 0x0F2B ## - Rubies 
LootingItem[25] = 0x0F26 ## - Diamonds 
LootingItem[26] = 0x0F19 ## - Sapphire 
LootingItem[27] = 0x0F30 ## - Diamonds 
LootingItem[28] = 0x0F1C ## - Ruby 
LootingItem[29] = 0x0F2E ## - Amethyst 
LootingItem[30] = 0x0F22 ## - Amethyst 
LootingItem[31] = 0x0F23 ## - Citrine 
LootingItem[32] = 0x0F13 ## - Ruby 
LootingItem[33] = 0x0F1D ## - Rubies 
LootingItem[34] = 0x0F1B ## - Star sapphire 
LootingItem[35] = 0x0F81 ## - Fertile Dirt 
LootingItem[36] = 0x0EED ## - Gold Coins 
for l=1 to 36                        
uo.FindType(LootingItem[l],"-1","lastcorpse") 
if uo.FindCount()>0 and uo.GetDistance("lastcorpse")<=2 then 
uo.MoveItem( "finditem", "0", "ID=0x4036BC34") 
uo.Print('Looting: '+str(uo.findcount())) 
wait(t) 
uo.Print('Stop.') 
end if 
next 
end sub

Posted: 2007-12-13 10:59:32
by Destruction
Тоже самое, без "ID=" нужно.

Posted: 2007-12-13 11:09:19
by Mopozz
И действительно ))
спасиб )

Posted: 2007-12-14 18:22:05
by CuHTpoH
Мне вот что не нравится:
получается что если пока ты лутишь у тебя еще один труп появляется, то обращаться
uo.FindType(LootingItem[l],"-1","lastcorpse")
uo.GetDistance("lastcorpse")
будут уже к новому трупу, я тебе советую вывести айдишник последнего трупа в переменную, а потом уже работать с ней.

П.С.: поравьте меня если я чушь спорол, чтобы я понял какой я дурак и исправился :)

Еще советую тебе научиться пользоваться массивами.
А еще советую изменить алгоритм на следующий, например ввести ожидание до тех пор пока дальность трупа больше 2, то есть если тебя погнали, но ты отмахался и вернулся к трупу, то продолжишь лутать с последнего типа итема на котором остановился

Posted: 2007-12-14 18:32:02
by Scripts Writer
CuHTpoH wrote:Мне вот что не нравится:
получается что если пока ты лутишь у тебя еще один труп появляется, то обращаться
uo.FindType(LootingItem[l],"-1","lastcorpse")
uo.GetDistance("lastcorpse")
будут уже к новому трупу, я тебе советую вывести айдишник последнего трупа в переменную, а потом уже работать с ней.

П.С.: поравьте меня если я чушь спорол, чтобы я понял какой я дурак и исправился :)

Еще советую тебе научиться пользоваться массивами.
А еще советую изменить алгоритм на следующий, например ввести ожидание до тех пор пока дальность трупа больше 2, то есть если тебя погнали, но ты отмахался и вернулся к трупу, то продолжишь лутать с последнего типа итема на котором остановился
Висячие скрипты не есть хорошо, тем более в разгар пвп

Posted: 2007-12-15 00:03:04
by CuHTpoH
предложенный автором поста вариант тоже явно не лучше, можно просто отключать скрипт при достижении дальности от трупа, недопустимой для лута, вариантов много но изначальный вообще бесмысленен

Хах, я вообще молчу если чара запаралят Ж)))))) Минус скрипт )))
Не ребят, все гораздо сложнее чем просто написать мувитем оттуды да сюды, you are dead и в люльку