Page 1 of 1

Последний штрих. Выкладка

Posted: 2009-06-06 10:42:38
by ynkemer
Спасибо Вам за помощь. Для моего скрипта не хватает поседнего штриха.
Подскажите как сделать выкладку лучше.
Посколько мешок не может вмещать в себя более 255 айтемов, то нужно переходить на следующий мешок.
Возможно ли чтобы скрипт складывал в сундуке в рандомные мешки. Брал мешок и туда скидывал, если айтемов >254 (255) то переходил на следующий. Причем так, чтобы эти айди мешков в скрипт не вписывать. Чтобы скрипт находил их по типу, а не по айди.

Re: Последний штрих. Выкладка

Posted: 2009-06-06 19:43:56
by Kynep
ynkemer wrote:Спасибо Вам за помощь. Для моего скрипта не хватает поседнего штриха.
Подскажите как сделать выкладку лучше.
Посколько мешок не может вмещать в себя более 255 айтемов, то нужно переходить на следующий мешок.
Возможно ли чтобы скрипт складывал в сундуке в рандомные мешки. Брал мешок и туда скидывал, если айтемов >254 (255) то переходил на следующий. Причем так, чтобы эти айди мешков в скрипт не вписывать. Чтобы скрипт находил их по типу, а не по айди.


Вот так примерно выглядит поиск мешков и проверка на кол-во итемов

Code: Select all

VAR ser, mesh = '0x0000' #Тип мешка
VAR sunduk = '0x00000000' # ID сундука с мешками
VAR outbag = 0

...
UO.UseObject(sunduk) #Открываем сундук c мешками

repeat
   UO.FindType(mesh, '-1', sunduk) #Ищем мешок
   If UO.FindCount() > 0 then
      ser = UO.GetSerial('finditem') #Если нашли берем серийник
      UO.UseObject(ser)  #Открываем его
      UO.FindType('-1', '-1', ser) #Считаем кол-во предметов
      If UO.FindCount() < 255 then
         outbag = 1
      else
         outbag = 0
         UO.Ignore(ser)
      endif
   else
      UO.Print('Нету мешков')
   endif
   UO.FindType(mesh, '-1', sunduk) #Ищем мешок
until NOT UO.FindCount() OR outbag = 1


Далее поиск товара и выкладка в найденый мешок с серийником ser
...поиск пропущу, сам напишешь, выкладываем так:

Code: Select all

UO.MoveItem('finditem', '-1', ser)

Далее, после каждого выложенного итема проверяй кол-во предметов в мешке, как, можешь глянуть в скрипте выше или можешь глянуть в моем скрипте на тинкер неков, пройдя по ссылке в моей подписи, там есть этот модуль, приводить его не буду, там нужно много обьяснять и переделывать, тебе проще глянуть самому, дабы понять принцип, удачи! Если не получится, поможем!