1) Айтемы добавлять тут:
Code:
sub loot_container(ContainerID,BagID)
var ContCnt=2 #Количество указанных контейнеров # Container count
var NeedCnt=8 #Количество указанных вещей для лута # Loot items count
dim ContFr[10] #Массив контейнеров. Число в скобках должно быть больше ContCnt # Container array, value must be set >ContCnt
dim ContTo[10] #То-же условие что и выше # Same as for ContFr
dim NeedFr[20] #Массив вещей. Число в скобках должно быть больше NeedCnt # Item array # Value must be set > NeedCnt
dim NeedTo[20] #То-же условие что и для NeedFr # Same as for NeedFr
dim NeedTypes[20] #То-же условие что и для NeedFr # Same as for NeedFr
var ItemGr
var ItemID
var FCnt
var iItem
var waittime
if ContainerID==UO.GetSerial('ground') then
waittime=LootGroundWait
else
waittime=LootItemWait
end if
##### Настройка вещей
##### Item config
#### Контейнеры
#### Containers
ContFr[0]='0x0E70'
ContTo[0]='0x0E80'
#
ContFr[1]='0x09B0'
ContTo[1]='0x09B0'
#### Вещи
#### Items
#### Gold
NeedFr[0]='0x0EED'
NeedTo[0]='0x0EED'
#### Gems
NeedFr[1]='0x0F00'
NeedTo[1]='0x0F30'
#### Scrolls
NeedFr[2]='0x1F10'
NeedTo[2]='0x1FFF'
#### Jewerly
NeedFr[3]='0x1F05'
NeedTo[3]='0x1F0F'
NeedFr[4]='0x1080'
NeedTo[4]='0x108F'
####
#### Bandages
NeedFr[5]='0x0E20'
NeedTo[5]='0x0E21'
#### Arrows
NeedFr[6]='0x0F3F'
NeedTo[6]='0x0F3F'
####
#### Reagents
NeedFr[7]='0x0F70'
NeedTo[7]='0x0F90'
####
#### Какие из перечисленных типов нам нужны
#### Which of the types we need
NeedTypes[0]=1
NeedTypes[1]=1
NeedTypes[2]=1
NeedTypes[3]=1
NeedTypes[4]=1
NeedTypes[5]=1
NeedTypes[6]=0
NeedTypes[7]=1
Для добавки вещи нужно:
- Добавить новый интервал поиска в елемент массива под остальными такого типа:
NeedFr[8]='0x0F70' # Тип начиная с которого будут браться вещи
NeedTo[8]='0x0F90' # Тип заканчивая каким будут браться вещи
Тоесть если тебе нужны все реагенты, то не обязательно указывать каждый, можно просто указать интервал от и до.
- Потом добавить елемент с соответсвствующим номером NeedTypes
Этот массив указывает на то, какие из типов нужно брать.
Тоесть если например вым в этом походе стрелы не нужны, можно поставить NeedTypes[6]=0 что выключит поиск вещей под номером 6 вообще.
Для предыдущего примера, елемент должен быть:
NeedTypes[8]=1
- Настроить следующую переменную:
var NeedCnt=8 #Количество указанных вещей для лута
Тут указываеться не последний номер а количество, тоесть номер +1.
Для предыдущего примера число должно быть 9.
2)Он перебирает все сумки трупа которые только найдет. Эту опцию никак включать не надо.
Единственное что может быть, если все сделано а он не лутит, то нужно вероятно добавить новый тип контейнеров в которые скрипт не заглядывает. Делаеться так-же как и для вещей, только массив контейнеров ContFr и ContTo и количество ContCnt.
3) Насчет пропадания контейнеров. Не знал как это обойти и зделал как смог. Просто чтобы узнать что в контейнере, его нужно открыть. А открыв его, неизвестно как его закрыть. Так вот я сделал что после открытия контейнера и лута всех вещей из него, используеться UO.Hide() на контейнер. Если это сильно не нравиться, можешь или :
- Удалить строку :
UO.Hide(ItemID) ## Closing opened container
Тогда контейнер не будет закрываться.
- Добавить после этой строки UO.Resend()
Тогда при каждом контейнере будет заново запрашиваться содержимое экрана. Все будет как должно быть, но будет тратиться больше траффика.
- Сказать мне нормальный метод закрытия контейнера =)