Page 1 of 1

Помогите дороботать АвтоЛут

Posted: 2007-04-28 19:49:48
by Fohitos
Привет все:)
Помогите пожалуйста доработать скрит луталки -
Я лутаю с трупа к себе в пак - а мне нужно здалать что бы он кидал лут в мешок в самом паке... А то так сложно потом продовать :)

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[41] = 0x0F81 ## - Fertile Dirt

LootingItem[42] = 0x0EED ## - Gold Coins

for l=1 to 42                       
uo.FindType(LootingItem[l],"-1","lastcorpse")
if uo.FindCount()>0 and uo.GetDistance("lastcorpse")<=2 then
uo.Grab(0,"finditem")
uo.Print('Looting: '+str(uo.findcount()))
wait(t)
uo.Print('Stop.')
end if
next
end sub


Заранее СПОСИБО...

Posted: 2007-04-28 20:45:21
by Destruction

Code: Select all

uo.Grab(0,"finditem") 

Можно было бы извернуться чрез setcatchbag или setreceivingcontainer, но ми сегодня добрый :)

Этот кусок кода замени на такой:

Code: Select all

uo.MoveItem( "finditem", "0", "ID сумки для лута" );

Posted: 2007-04-28 21:01:53
by Fohitos
Сорр всё работает сенк !!! Ток закрыт...

Posted: 2007-10-18 18:18:46
by Lopi
пишет ошибка в 59 строке, ран тайм еррор!! чё делать то?

Posted: 2007-10-18 18:22:32
by Scripts Writer
Пересчитать кол-во элементов в массиве и в определении вписать правильное колво в квадратных скобках

Posted: 2007-10-18 18:35:10
by Lopi
Scripts Writer wrote:Пересчитать кол-во элементов в массиве и в определении вписать правильное колво в квадратных скобках

а скока конкретно а то чёт ошибка не выскакивает, а брать всё не берёт... только гп берёт..

Posted: 2007-10-18 18:46:58
by Lopi
Эй! так помощь придёт?? плизз...

Posted: 2007-10-18 18:59:17
by Okypok
10 минут подождал и уже плакать :)
Он имеет в виду, видимо, чтоб 41 и 42-й элементы переделать в 35-й и 36-й и в начале, в определении dim LootingItem[36]. А потом for l=1 to 36

Posted: 2007-10-18 19:13:30
by Lopi
сам догодалсо уже)) всё работает)

Posted: 2007-10-18 21:26:02
by -=JoKeR=-
И лучше вместо

Code: Select all

LootingItem[1]

начинать массив с

Code: Select all

LootingItem[0]

:roll:

Posted: 2007-10-18 21:33:19
by Okypok
А я не настоящий программист, всегда с 1 начинаю.

Posted: 2007-10-21 15:57:20
by Destruction
Okypok wrote:А я не настоящий программист, всегда с 1 начинаю.

Хоть с тысячи начинай, но для массива DIM array[N] номер последнего элемента равен N минус 1.

Если делать не так - последствия непредсказуемы :)